在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统.pdf

上传人:a*** 文档编号:973965 上传时间:2018-03-22 格式:PDF 页数:29 大小:1.58MB
返回 下载 相关 举报
摘要
申请专利号:

CN200680002976.6

申请日:

2006.01.25

公开号:

CN101849227A

公开日:

2010.09.29

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 13/14公开日:20100929|||实质审查的生效IPC(主分类):G06F 13/14申请日:20060125|||公开

IPC分类号:

G06F13/14; G06F13/16

主分类号:

G06F13/14

申请人:

透明信息技术有限公司

发明人:

R·巴卡拉什; O·雷默茨; E·弗格尔

地址:

以色列内特

优先权:

专利代理机构:

上海专利商标事务所有限公司 31100

代理人:

陈炜

PDF下载: PDF下载
内容摘要

一种在单片硅芯片上实现的高性能图形处理和显示系统,该系统支持多个图形处理单元(GPU)核心的群集,这多个图形处理单元核心的群集协作以提供支持用于不同应用的拟真图形能力的功能强大并高度可升级的可视化方案。本发明通过通过动态地管理各种并行渲染技术并使得能自适应地处理不同的图形应用来消除沿图形管道的渲染瓶颈。

权利要求书

1: 一种用于实现图形处理和显示系统的单片构造的硅芯片, 具有各自包含使用一个或 多个并行化模式支持图像处理的并行化的图形处理单元的多个 GPU 驱动管道核心, 并且适 用于与计算系统接口, 所述计算系统具有用于在至少一个计算机屏幕上显示图像的装置, 并且支持 (i) 用于发布图形命令的一个或多个软件应用, (ii) 用于存储用以实现所述图形 命令的一个或多个图形库 ( 即, OpenGL 和 DierctX 一状态机 ), 以及 (iii) 用于允许所述 GPU 驱动管道核心与所述图形库交互的多管道驱动器, 其中所述多管道驱动器包括 (1)GPU 驱动器单元, 用于执行与和所述计算系统的操作系统 (OS) 以及图形库 ( 例如, OpenGL 或 DirectX) 的交互相关联的一般化 GPU 驱动器的功能, (2) 分布式图形功能控制模块, 用于执 行与根据并行化策略管理实行不同的并行化模式相关联的功能, (3) 状态监视驱动器模块, 用于持续地分析包括状态命令在内的所有传入命令、 将某些状态命令和部分数据传送至所 述所有 GPU 驱动管道核心以保持跨所述各 GPU 驱动图形管道核心的有效状态, (4) 应用剖 析和分析驱动器模块, 用于执行对所述计算系统中应用参数的实时连续监视以标识所述图 形系统内容易引起数据瓶颈的问题区, 其中所述应用剖析和分析驱动器模块使用来自以下 的输入 (i) 所述多个 GPU 驱动管道核心的寄存器、 (ii) 所述控制单元的寄存器, 以及图形 API 命令, 以及 (5) 并行性策略管理驱动模块, 用于使用所述应用剖析和分析驱动器模块的 结果在每帧的基础上决定所述 GPU 驱动管道核心的并行化模式, 并且使这些决定由 MP-SOC 的控制单元来实行。 所述硅芯片包括 : 所述多个 GPU 驱动管道核心 ; 路由中心, 部署在所述 CPU 总线上, 用于在所述各 GPU 驱动管道核心之间分布来自所述 CPU 的图形数据流, 并随后将来自所述各管道核心的渲染结果 ( 帧缓冲 ) 收集至所述合成单 元, 其中所述数据被分布的方法由所述控制单元来指示, 并取决于当前并行化模式 ; 合成单元, 用于根据所述正在进行的并行化模式重新合成所述各个部分帧缓冲 ; 控制单元, 用于根据所选的并行化模式控制所述图像处理和显示系统的配置和功能处 理; 处理元件 (PE), 具有内部和外部存储器 ; 剖析功能单元, 用于将基准数据递交给所述多管道驱动器 ; 以及 显示器接口, 用于运行单个或多个显示器屏幕。
2: 如权利要求 1 所述的硅芯片, 其特征在于, 还包括高速缓冲存储器, 用于服务于所述 处理元件, 并用于高速缓冲为所述各 GPU 驱动管道核心共有的图形数据。
3: 如权利要求 2 所述的硅芯片, 其特征在于, 所述图形数据从纹理和顶点对象当中选 择。
4: 如权利要求 1 所述的硅芯片, 其特征在于, 所述基准数据包括从存储器速度、 按字节 计的存储器使用量、 渲染的总像素数、 进入渲染的几何数据、 帧速率、 每个管道核心的工作 负荷、 图形管道之间的负荷平衡、 传输的数据量、 纹理计数、 以及深度复杂度当中选择的数 据。
5: 如权利要求 1 所述的硅芯片, 其特征在于, 所述图形库是从 OpenGL 和 DirectX 当中 选择的。 2
6: 如权利要求 1 所述的硅芯片, 其特征在于, 所述 GPU 驱动管道核心的数目没有架构限 制。
7: 如权利要求 1 所述的硅芯片, 其特征在于, 所述各 GPU 驱动管道核心被以不同的并行 化模式组织以解决性能瓶颈。
8: 如权利要求 7 所述的硅芯片, 其特征在于, 所述并行化模式包括对象分割模式、 图像 分割模式以及时间分割模式。
9: 如权利要求 1 所述的硅芯片, 其特征在于, 所述基准数据包括存储器速度、 按字节计 的存储器使用量、 渲染的总像素数、 进入渲染的几何数据、 帧速率、 每个管道核心的工作负 荷、 管道核心之间的负荷平衡、 传输的数据量、 纹理计数、 以及深度复杂度。
10: 如权利要求 1 所述的硅芯片, 其特征在于, 在可连接至所述计算系统的主板的图形 卡上实现。
11: 一种用于连接至具有 CPU 总线的计算系统的主板的图形卡, 所述图形卡包括 : 用于实现图形处理和显示子系统的单片构造的硅芯片, 包括 : (a) 多个 GPU 驱动管道核心 ; (b) 路由中心, 部署在所述 CPU 总线上, 用于在所述各 GPU 驱动管道核心之间分布来自 所述 CPU 的图形数据流, 并随后将来自所述各管道核心的渲染结果 ( 帧缓冲 ) 收集至所述 合成单元 ; (c) 合成单元, 用于根据所述正在进行的并行化模式重新合成所述各个部分帧缓冲 ; (d) 控制单元, 用于在任意时刻根据所选的并行化模式控制所述图像处理和显示系统 的配置和功能处理 ; (d) 处理元件 (PE), 具有内部和外部存储器 ; (e) 剖析功能单元, 用于将基准数据递交给所述多管道驱动器 ; 以及 (f) 显示器接口, 用于运行单个或多个显示器屏幕。
12: 如权利要求 11 所述的图形卡, 其特征在于, 所述图形数据流在所述控制单元的控 制下并根据当前并行化模式被分布在所述各 GPU 驱动管道核心之间。
13: 如权利要求 11 所述的图形卡, 其特征在于, 所述硅芯片具有各自包含使用一个或 多个并行化模式支持图像处理的并行化的图形处理单元 (GPU) 的多个 GPU 驱动管道核心, 并且适于与计算系统接口, 所述计算系统具有用于在至少一个计算机屏幕上显示图像的装 置并且支持 (i) 用于发布图形命令的一个或多个软件应用, (ii) 用于存储用以实现所述图 形命令的一个或多个图形库 ( 状态机 ), 以及 (iii) 用于允许所述各 GPU 驱动管道核心与所 述图形库交互的多管道驱动器。
14: 如权利要求 12 所述的图形卡, 其特征在于, 所述多管道驱动器包括 : (1)GPU 驱动器单元, 用于执行与和所述计算系统的操作系统 (OS)、 以及图形库的交互 相关联的一般化 GPU 驱动器的功能 ; (2) 分布式图形功能控制模块, 用于执行与根据并行化策略管理实行不同的并行化模 式相关联的功能 ; (3) 状态监视驱动模块, 用于连续地分析包括状态命令的所有传入命令, 将某些状态命 令和部分数据传送至所述所有 GPU 驱动管道核心以保持跨所述各 GPU 驱动图形管道核心的 有效状态 ; 3 (4) 应用剖析和分析驱动器模块, 用于对所述计算系统中的应用参数执行实时连续监 视以标识所述图形系统内可能引起数据瓶颈的问题区, 其中所述应用剖析和分析驱动器模 块使用来自以下的输入 (i) 所述多个 GPU 驱动管道核心的寄存器、 (ii) 所述控制单元的寄 存器, 以及图形 API 命令, 以及 (5) 并行性策略管理驱动器模块, 用于使用所述应用剖析和分析驱动器模块的结果在 每帧的基础上决定所述各 GPU 驱动管道核心的并行化模式, 并且使这些决定由 MP-SOC 的控 制单元来实行。
15: 如权利要求 11 所述的图形卡, 其特征在于, 还包括高速缓冲存储器, 用于服务于所 述处理元件, 并用于高速缓冲为所述各 GPU 驱动管道核心共有的图形数据。
16: 如权利要求 15 所述的图形卡, 其特征在于, 所述图形数据从纹理和顶点对象当中 选择。
17: 如权利要求 4 所述的图形卡, 其特征在于, 所述基准参数包括从存储器速度、 按字 节计的存储器使用量、 渲染的总像素数、 进入渲染的几何数据、 帧速率、 每个管道核心的工 作负荷、 图形管道之间的负荷平衡、 传输的数据量、 纹理计数、 以及深度复杂度当中选择的 数据。
18: 如权利要求 11 所述的图形卡, 其特征在于, 所述图形库从 OpenGL 和 DirectX 当中 选择。
19: 如权利要求 11 所述的图形卡, 其特征在于, 所述 GPU 驱动管道核心的数目没有架构 限制。
20: 如权利要求 11 所述的图形卡, 其特征在于, 所述各 GPU 驱动管道核心被以不同的并 行化模式组织以解决性能瓶颈。
21: 如权利要求 11 所述的图形卡, 其特征在于, 所述并行化模式包括对象分割模式、 图 像分割模式以及时间分割模式。
22: 一种用于在多个或多个显示器屏幕上显示图像的计算机系统, 包括 : 主板, 具有 CPU 总线以及用于实现图形处理和显示子系统的单片构造的硅芯片, 所述 硅芯片包括 : (a) 多个 GPU 驱动管道核心 ; (b) 路由中心, 部署在所述 CPU 总线上, 用于在所述各 GPU 驱动管道核心之间分布来自 所述 CPU 的图形数据流, 并随后将来自所述各管道核心的渲染结果 ( 帧缓冲 ) 收集至所述 合成单元, 其中所述数据被分布的方法由所述控制单元指示, 并依赖于当前并行化模式 ; 合成单元, 用于根据所述正在进行的并行化模式重新合成所述各个部分帧缓冲 ; 控制单元, 用于在任何时间根据所选的并行化模式控制所述图形处理和显示系统的配 置和功能处理 ; 处理元件 (PE), 具有内部和外部存储器 ; 剖析功能单元, 用于将基准数据递交给所述各多管道驱动器 ; 以及 显示器接口, 用于运行单个或多个显示器屏幕。
23: 如权利要求 22 所述的计算机系统, 其特征在于, 所述图形数据流在所述控制单元 的控制下并根据当前并行化模式被分布在所述各 GPU 驱动管道核心之间。 4
24: 如权利要求 22 所述的计算机系统, 其特征在于, 所述硅芯片具有各自包含使用一 个或多个并行化模式支持图像处理的并行化的图形处理单元 (GPU) 的多个 GPU 驱动管道核 心, 并且适于与计算系统接口, 所述计算系统具有用于在至少一个计算机屏幕上显示图像 的装置并且支持 (i) 用于发布图形命令的一个或多个软件应用, (ii) 用于存储用以实现所 述图形命令的一个或多个图形库 ( 状态机 ), (iii) 用于允许所述各 GPU 驱动管道核心与所 述图形库交互的多管道驱动器。
25: 如权利要求 24 所述的计算机系统, 其特征在于, 所述多管道驱动器包括 : (1)GPU 驱动器单元, 用于执行与和所述计算系统的操作系统 (OS)、 以及图形库的交互 相关联的一般化 GPU 驱动器的功能 ; (2) 分布式图形功能控制模块, 用于执行与根据并行化策略管理执行不同的并行化模 式相关联的功能 ; (3) 状态监视驱动器模块, 用于连续地分析包括状态命令的所有传入命令, 将某些状态 命令和部分数据传送至所述所有 GPU 驱动管道核心以保持跨所述各 GPU 驱动图形管道核心 的有效状态 ; (4) 应用剖析和分析驱动器模块, 用于对所述计算系统中的应用参数执行实时连续监 视以标识所述图形系统内可能引起数据瓶颈的问题区, 其中所述应用剖析和分析驱动模块 使用来自以下的输入 (i) 所述多个 GPU 驱动管道核心的寄存器、 (ii) 所述控制单元的寄存 器, 以及图形 API 命令, 以及 (5) 并行性策略管理驱动器模块, 用于使用所述应用剖析和分析驱动器模块的结果在 每帧的基础上决定所述各 GPU 驱动管道核心的并行化模式, 并且使这些决定由 MP-SOC 的控 制单元来实行。
26: 如权利要求 22 所述的计算机系统, 其特征在于, 还包括高速缓冲存储器, 用于服务 于所述处理元件, 并用于高速缓冲为所述各 GPU 驱动管道核心共有的图形数据。
27: 如权利要求 22 所述的计算机系统, 其特征在于, 所述图形数据从纹理和顶点对象 当中选择。
28: 如权利要求 22 所述的计算机系统, 其特征在于, 所述基准参数包括从存储器速度、 按字节计的存储器使用量、 渲染的总像素数、 进入渲染的几何数据、 帧速率、 每个管道核心 的工作负荷、 图形管道之间的负荷平衡、 传输的数据量、 纹理计数、 以及深度复杂度当中选 择的数据。
29: 如权利要求 22 所述的计算机系统, 其特征在于, 所述图形库从 OpenGL 和 DirectX 当中选择。
30: 如权利要求 22 所述的计算机系统, 其特征在于, 所述 GPU 驱动管道核心的数目没有 架构限制。
31: 如权利要求 22 所述的计算机系统, 其特征在于, 所述各 GPU 驱动管道核心以不同的 并行化模式组织以解决性能瓶颈。
32: 如权利要求 22 所述的计算机系统, 其特征在于, 所述并行化模式包括对象分割模 式、 图像分割模式以及时间分割模式。
33: 一种包含具有无限制图形并行性的多个图形核心、 避开了单 GPU 系统固有的汇集 瓶颈的图形处理和显示系统。 5
34: 一种确保最佳图形性能、 消除了受限的 GPU 间通信带宽、 机械复杂度 ( 尺寸、 功率、 和发热 )、 组件冗余、 以及高成本等多芯片系统的不足的图形处理和显示系统。
35: 一种图形处理和显示系统, 所述系统通过在单硅芯片中并行化多个图形核心而具 有增强的图形处理和显示能力。
36: 一种图形处理和显示系统, 所述系统在具有不受限数目的多个图形核心的硅芯片 上实现。
37: 一种图形处理和显示系统, 所述系统在利用多个图形核心群集的硅芯片上实现。
38: 一种图形处理和显示系统, 所述系统在具有多个图形核心或管道 ( 即, 多管道芯片 上系统, 或 MP-SOC) 并提供架构灵活性以实现先进的并行图形显示性能的硅芯片上实现。
39: 一种图形处理和显示系统, 所述系统在具有多个图形核心、 并在其几何和像素处理 子系统两者内均自适应地支持不同并行模式的硅芯片上实现。
40: 一种图形处理和显示系统, 所述系统在具有多个 GPU 核心、 并提供针对高度先进的 图形处理和显示性能的自适应性的硅芯片上实现。
41: 一种图形处理和显示系统及方法, 其中顶点 ( 即, 3D 多边形几何 ) 处理和片段处理 的图形管道瓶颈被透明而巧妙地解决。
42: 一种用于巧妙分解数据和图形命令、 保持图形库的基本特征作为状态机并紧密遵 循图形标准的方法。
43: 一种视频图形卡, 所述视频图形卡支持在具有多个图形核心并提供架构灵活性以 实现最佳的并行性能的硅芯片上实现的图形处理和显示系统。
44: 一种具有拟真图形处理和显示能力的计算系统, 所述计算系统采用包含具有多个 图形核心并提供架构灵活性以实现最佳并行性能的硅芯片的图形卡。
45: 一种计算系统, 所述计算系统具有包括使用个人计算设备的视频游戏、 虚拟现实、 科学可视化、 以及需要或要求拟真图形显示能力的其它交互应用在内的应用所需的拟真图 形处理和显示性能。

说明书


在单片构造的硅芯片上采用多个图形核心的图形处理和显 示系统

    技术领域 在过去的几十年间, 图形架构领域的许多研究和开发都涉及改善三维 (3D) 计算 机图形渲染的性能的方法。 图形架构受到已推动通用计算机架构的半导体技术的相同发展 的推动。包括管道处理和并行性等许多相同的加速技术被用在该领域中。然而, 图形渲染 应用提出了特别的需求并制造了新机会。 例如, 由于图形显示一般涉及大量重复计算, 所以 能够比通用计算更容易地采用大量并行性。
     在高性能图形系统中, 计算的次数大大超过单处理单元的能力, 所以并行系统已 成为图形架构的规则。现今, 非常高度的并行性被应用在基于硅的图形处理单元 (GPU) 中 以执行图形计算。
     通常这些计算通过由作为图形系统的一部分的视频存储器支持的图形管道来执 行。 图 1A 示出了作为 PC 架构的一部分的常规图形系统的框图, 包括 CPU(111)、 系统存储器 (112)、 I/O 芯片集 (113)、 高速 CPU-GPU 总线 (114)( 例如, PCIExpress 16x)、 基于单 GPU 的 视频 ( 图形 ) 卡 (115)、 以及显示器 (116)。如图 1B 所示, 该单 GPU 图形管道分解为两个主 要部分 : 用于处理 3D 图形图元 ( 例如, 多边形 ) 的几何子系统以及用于计算像素值的像素 子系统。这两部分是为增强的并行性一致地设计的。
     在几何子系统中, 图形数据库是规则的, 通常由接受几乎相同的处理的大量图元 构成 ; 因此自然的并发性是将数据分为单独的流并独立地处理它们。 在像素子系统中, 由于 像素能够以许多方法并行地生成, 所以图像并行性很早就是用于高速光栅化架构的有吸引 力的方法。图 2A 中描绘了现有技术中高度并行图形处理单元芯片 (GPU) 的一个示例 ( 取 自 ATI 的 3D Architecture White Paper(3D 架构白皮书 ))。几何子系统由六 (6) 个并行 管道构成而像素子系统有十六个 (16) 个并行管道。
     然而, 如图 2B 所示, 这两个子系统之间的 “汇集级” 221 是非常有问题的, 因为它 必须处理全数据流带宽。在像素子系统中, 经变换和剪裁的图元的多个流必须被定向到进 行光栅化的处理器。 这可能要求在不同的处理器被指派给不同的屏幕区域的同时根据空间 信息分类图元。 并行像素级中的第二个困难是在数据通过并行处理器时数据排序可能会改 变。例如, 一个处理器在另一处理器变换单个大的图元之前可能会变换两个小的图元。诸 如更新一个窗口以代替另一窗口、 或在两个缓冲器之间切换等命令的某些全局命令要求数 据在命令前后被同步。几何与像素级之间的这一汇集级限制了单 GPU 中的并行性。
     增强并行性程度的典型技术采用多个 GPU 卡、 或在卡上采用多个 GPU 芯片, 其中 渲染性能被额外地提升, 超出了单核 GPU 中的汇集限制。现今, 该技术由多个学术研究成 果 ( 例如, 斯坦福大学的 Chromium 并行图形系统 ) 和商业产品 ( 例如, Nvidia 的双 GPU 系 统—— SLI、 ATI 的双 GPU—— Crossfire) 来实施。图 3 示出了基于 Nvidia SLI 技术的商 用双 GPU 系统 Asus A8N-SLI。
     并行化能够通过释放图形系统中的瓶颈来提高性能。图 2C 指示分解为总线传输、 几何处理以及片段填充界限处理等分段级的图形管道中典型的瓶颈。 一给定管道仅与以上
     各级中最薄弱的一个环节一样强壮, 因此主瓶颈决定总吞吐量。如图 2C 中所指示的, 管道 瓶颈源于 : (231) 几何、 纹理、 动画以及元数据传输 ; (232) 几何数据存储器限制 ; (233) 纹 理数据存储器限制 ; (234) 几何变换 ; 以及 (235) 片段渲染。
     有不同的方法使 GPU 并行化, 诸如 : 时间分割 ( 每个 GPU 渲染下一连续帧 ) ; 图像 分割 ( 每个 GPU 渲染每帧像素的一个子集 ) ; 以及对象分割 ( 每个 GPU 渲染包括几何和纹理 在内的整个数据的一个子集 ) ; 及其衍生和组合。虽然有前景, 但是这种使 GPU 芯片群集并 行化的方法也会遭遇一些固有的问题, 诸如 : 受限的 GPU 间通信带宽 ; 机械复杂度 ( 例如, 尺寸、 功率、 以及发热 ) ; 组件冗余 ; 以及高成本。
     因此, 在本领域非常需要一种避免此类现有技术的装置和方法的不足和缺陷的、 用于高速图形处理和显示的改善的方法和装置。
     发明公开
     相应地, 本发明的主要目的是提供一种避免现有技术的装置和方法的不足和缺陷 的、 用于高速图形显示和处理的新颖方法和装置。
     本发明的另一目的是提供一种包含具有无限制图形并行性的多个图形核心的新 颖图形处理和显示系统, 其避开了单 GPU 系统的固有汇集瓶颈。 本发明的另一目的是提供一种确保最佳图形性能、 消除受限的 GPU 间通信带宽、 机械复杂度 ( 尺寸、 功能、 以及发热 )、 组件冗余、 以及高成本等多芯片系统的不足的新颖图 形处理和显示系统。
     本发明的另一目的是提供一种通过并行化单硅芯片中的多个图形核心而具有增 强的图形处理和显示能力的新颖图形处理和显示系统。
     本发明的另一目的是提供一种在具有不受限数目的多个图形核心的硅芯片上实 现的新颖图形处理和显示系统。
     本发明的另一目的是提供一种在利用多个图形核心的群集的硅芯片上实现的新 颖图形处理和显示系统。
     本发明的另一目的是提供一种在具有多个图形核心或管道 ( 即, 多管道芯片上系 统, 或 MP-SOC) 并提供架构灵活性以实现先进的并行图形显示性能的硅芯片上实现的新颖 图形处理和显示系统。
     本发明的另一目的是提供一种在具有多个图形核心、 并在其几何和像素处理子系 统两者内自适应地支持不同并行模式的硅芯片上实现的新颖图形处理和显示系统。
     本发明另一目的是提供一种在具有多个 GPU 核心、 并提供针对高度先进的图形处 理和显示性能的自适应性的硅芯片上实现的新颖图形处理和显示系统。
     本发明另一目的是提供一种新颖图形处理和显示系统及方法, 其中顶点 ( 例如, 3D 多边形几何 ) 处理和片段处理的图形管道瓶颈被透明而巧妙地解决。
     本发明的另一目的是提供一种用于巧妙分解数据和图形命令、 保持图形库的基本 特征作为状态机、 并紧密遵循图形标准的方法和系统。
     本发明的另一目的是提供一种支持在具有多个图形核心并提供架构灵活性以实 现最佳并行性能的硅芯片上实现的图形处理和显示系统的新型 PC 图形卡。
     本发明的另一目的是提供一种具有改善的图形处理和显示能力、 采用包含具有多 个图形核心并提供架构灵活性以实现最佳并行性能的硅芯片的图形卡的计算系统。
     本发明的另一目的是提供这样一种计算系统, 其具有包括视频游戏、 虚拟现实、 科 学可视化、 以及要求或需要拟真 (photo realistic) 图形显示能力的其它交互应用在内的 应用所要求的改善的图形处理和显示性能。
     本发明的这些和其它目的和优点将通过下文而显而易见。
     附图简述
     为了更为全面地理解如何实施本发明的目的, 可结合在以下简述的附图一起阅读 以下对说明性实施例的具体说明, 附图中 :
     图 1A 是现有技术的标准 PC 架构的示意性表示, 其中其常规单 GPU 图形卡被圈出 显示 ;
     图 1B 是具有几何和像素处理子系统的采用单 GPU 的现有技术常规图形系统的简 化框图, 其间的数据汇集流成为显著限制性能的严重的系统瓶颈 ;
     图 2A 是示出了典型现有技术的 ATI X800 图形处理单元芯片 (GPU) 中的高度并行 性的示意图, 其中几何子系统由 6 个并行管道构成而像素子系统由 16 个并行管道构成 ;
     图 2B 是示出了几何与像素并行引擎之间的瓶颈汇集级 ( 装配引擎 ) 的现有技术 图形处理单元 (GPU) 芯片 ( 例如, ATI X800) 的内部的示意图 ;
     图 2C 是示出了其间存在数据瓶颈问题的常规图形管道的示意性表示 ;
     图 3 是现有技术双 GPU 驱动视频图形卡的照片 ;
     图 4A 是表示根据本发明的原理的采用了使用多管道芯片上系统 (MP-SOC) 器件的 印刷电路图形卡的计算系统的示意性系统框图, 其中该系统框图示出了 CPU、 I/O 芯片集、 系统存储器、 基于 MP-SOC 的图形卡、 以及 ( 诸 ) 显示器屏幕 ;
     图 4B 是搭载在印刷电路 (PC) 视频图形板上的、 本发明的 MP-SOC 的物理实现的示 意性表示 ;
     图 4C 是主板上与本发明的基于 MP-SOC 的 PC 图形板互联的标准 PCI Express 图 形插槽的照片 ;
     图 4D 是根据本发明的原理的包括 4 个由 GPU 驱动的管道核心的示例性 MP-SOC 硅 布局的示意性表示 ;
     图 4E 是本发明的 MP-SOC 芯片的示例性封装的示意性表示 ;
     图 5 是根据本发明的说明性实施例的 MP-SOC 架构的示意性框图 ;
     图 6 是根据本发明的说明性实施例的基于 MP-SOC 的计算系统的软件框图 ;
     图 7A 是进一步示出了本发明的说明性实施例的包括基于 MP-SOC 的系统的多管道 软件驱动器的模块的示意性框图 ;
     图 7B 是示出了本发明的由运行三个并行化模式 ( 即, 对象分割、 图像分割和时间 分割 ) 的机制在基于 MP-SOC 的器件和系统内执行的步骤的流程图 ;
     图 8 是示出了本发明的 MP-SOC 系统的对象分割配置的示意性表示 ;
     图 9 是示出了本发明的 MP-SOC 系统的图像分割配置的示意性表示 ;
     图 10 是示出了本发明的 MP-SOC 系统的时间分割配置的示意性表示 ;
     图 11 是示出了本发明的在沿基于 MP-SOC 系统的多个 GPU 驱动的管道核心之间分 布多边形的过程的流程图 ; 以及
     图 12 示出了根据本发明的原理的被配置为并行模式的组合的八 (8) 个 GPU 驱动的管道核心的示例。
     实施本发明的最佳模式
     在通过援引包括于此的作为 WIPO 公报 No.WO 2005/050557 A2 公开的、 申请人的 在先 PCT 申请 No.PCT/IL04/001069 号中所教导的技术教授了一种包括硬件中枢 (Hub) 和 软件中枢驱动器的图形可升级的中枢架构的使用, 该中枢架构起到将现货 GPU 芯片粘合在 一起 ( 即, 并行地工作 ) 以提供高性能和可升级的可视化方案、 对象分割分解算法、 采用多 个并行模式及其组合、 以及自适应的并行模式管理的作用。 并且, 通过援引包括于此的作为 WIPO 公报 No.WO 2004/070652 A2 公开的 PCT 申请 No.PCT/IL2004/000079 教导了基于相关 联的决策制定的合成图像机制的使用, 从而提供快速且并不昂贵的帧缓冲器的重新合成作 为对象分割并行性的一部分。
     在以上标识的申请人的 PCT 申请中所教导的方法具有诸多优点和益处, 即通过使 用现货 GPU 以对现有应用透明的方式构造强大并行系统的能力。然而, 在许多应用中, 为了 在相对低成本并且对现有图形应用透明的情况下给出高性能、 高帧速率稳定性的图形方案 的目的, 需要使用替换方法即通过为 PC 提供采用在单片硅芯片上实现的强大图形处理和 显示系统的图形处理和显示架构, 从而在常规图形系统中提供这种益处。 该新颖替换方法的益处包括 : 多 GPU 群集的基于 VLSI 的小型化 ; GPU 间通信的高 带宽 ; 低功耗和散热 ; 无组件冗余 ; 以及低成本。现在将在以下对关于实施该替换方法的细 节进行说明。
     一般而言, 在此公开的本发明教导了一种用于在半导体级上将图形功能并行化为 在优选为单片构造的单个芯片上实现的多图形管道架构的改善的方法和装置。 为了表述方 便, 这一器件在此被称为 “芯片上多管道系统” 或 “MP-SOC” 。该 “硅芯片上” 系统包括以灵 活的拓扑结构组织的由 GPU 驱动的管道核心群集, 从而允许不同的并行方案。理论上, 管道 核心的数目没有限制, 仅受到硅面积考虑的约束。MP-SOC 由驻留于主 CPU 的软件驱动器模 式来驱动。各种并行化方案使得性能最优化。这些方案是时间、 图像和对象分割及其衍生。
     本发明的说明性实施例享有多 GPU 芯片的优点, 即: 回避了单 GPU 的汇集局限, 而 同时又消除了多 GPU 系统的固有问题, 诸如受限的 GPU 间通信带宽、 机械复杂度 ( 尺寸、 功 能以及发热 )、 组件冗余、 以及高成本。
     如图 4A 所示, 本发明的物理图形系统由常规主板 (418) 和基于 MP-SOC 的图形卡 (415) 构成。 该主板搭载了常见组件集, 即 CPU(411)、 系统存储器 (412)、 I/O 芯片集 (413)、 以及其它非图形组件 ( 参见图 1A 的驻留在 PC 主板上的完整的组件集 )。基于 MP-SOC 芯片 (416) 的印刷电路图形卡通过 PCI Express 16x 通道连接器 (414) 连接至主板。该卡还具 有到至少一个屏幕 (416) 的输出。MP-SOC 图形卡代替主板上的常规单 GPU 图形卡。通过比 较图 4A 与图 1A, MP-SOC 图形卡集成在常规 PC 系统中的方法是显而易见的。通过简单地用 本发明的基于 MP-SOC 的卡替换单 GPU 图形卡 ( 图 1A 中被圈出 ), 并用主 CPU 上的多管道软 驱动器 (419) 替换其驱动器, 本发明的系统实现了在此所述的所有优点和益处。该修改除 了改善的性能之外, 对于用户和应用是完全透明的。
     图 4B 示出了本发明的一种可能的物理实现。其上搭载了 MP-SOC(422) 的标准形 式 PC 卡 (421) 通过 PCI Express 16x 通道连接器 (423) 连接至主计算系统的主板 (426)。 显示器屏幕通过标准 DVI 连接器 424 连接。由于预料 MP-SOC 上的多个管道会消耗高功率,
     导致通过 PCI Express 连接器的标准供电是不够的, 所以通过专用电源电缆 (425) 向该卡 提供辅助电源。
     图 4C 示出了主板上与基于 MP-SOC 的卡连接的 PCI Express 连接器 (431)。应该 强调的是, PC 卡上 MP-SOC 的标准物理实现使得对现有技术的 GPU 驱动的视频图形卡的替 换是容易和自然的。
     图 4D 和 4E 说明了技术人员对 MP-SOC 芯片的概念以进一步示出该半导体器件的 物理实现。图 4D 示出了可能的 MP-SOC 硅布局。在该示例中, 有 4 个现货图形管道核心。核 心的数目根据硅面积约束可缩放至任意数目。对 MP-SOC 功能单元的详细讨论在下面给出。 图 4E 示出了 MP-SOC 芯片可能的封装和外观。如之前所述的, 该芯片与其它外围组件 ( 例 如, 存储器芯片、 总线芯片等 ) 一起旨在被搭载在标准尺寸的 PCB( 印刷电路板 ) 上并用作 PC 系统中的单一图形卡, 以代替现有技术的视频图形卡。 基于 MP-SOC 的卡的制造可由图形 卡制造商 ( 例如, AsusTech、 Gigabyte) 来执行。
     如图 5 中所示的, 多管道 SOC 架构由以下组件构成 :
     □位于 CPU 总线 ( 例如, 16 通道的 PCI Express) 上的路由中心。它在图形管道核 心之间分布来自 CPU 的图形数据流, 并随后将来自各核心的渲染结果 ( 帧缓冲 ) 收集至合 成单元。数据被分布的方法由控制单元根据当前并行化模式来指示。 □合成单元根据正在进行的并行化模式重新合成这些部分帧缓冲。
     □控制单元处于 CPU 驻留的软多管道驱动器的控制下。它根据并行化模式负责整 个 MP-SOC 系统的配置和功能处理。
     □具有内部或外部存储器、 以及光学高速缓冲存储器的处理元件 (PE) 单元。 PE 可 以是根据架构需要的任何种类的芯片上处理器。除了服务于 PE, 高速缓冲存储器和存储器 还可用于高速缓冲诸如纹理、 顶点对象等为所有管道核心共有的图形数据。
     □多个 GPU 驱动管道核心。这些核心可以、 但无需是专门设计的。它们可被原始 地设计成常规的单核心 GPU。
     □剖析功能单元。 该单元向多管道驱动递送基准数据, 诸如存储器速度、 按字节计 的存储器使用量、 渲染的总像素数、 进入渲染的几何数据、 帧速率、 每个管道核心的工作负 荷、 管道核心之间的负荷平衡、 传输数据量、 纹理计数、 以及深度复杂度。
     □显示器接口, 能够运行单个或多个屏幕。
     如 图 6 所 示, 系 统 的 软 件 包 括 图 形 应 用、 图 形 库 ( 例 如, 图 形 标 准 OpenGL 或 DirectX)、 以及专用软键驱动器 ( 多管道驱动器 )。 一般化的图形应用不需要修改或特别的 移植工作就可在 MP-SOC 上运行。
     图 7 示出了表示根据本发明的一个实施例的多管道驱动器的主要任务的功能性 框图。该多管道驱动器执行至少以下动作 :
     □一般化 GPU 驱动器。执行一般化 GPU 驱动器的与和操作系统、 图形库 ( 例如, OpenGL 或 DirectX) 的交互相关联的、 以及控制 GPU 的所有功能。
     □分布式图形功能控制。 该模块执行与根据并行策略管理实行不同并行化模式相 关联的所有功能。 如将在下文更为具体地说明的, 在每个模式中, 数据在管道之间被不同地 分布和重新合成。
     □状态监视。图形库 ( 例如, OpenGL 和 DirectX) 是状态机。并行化必须保持跨
     图形系统的内聚状态。这是通过连续分析所有传入的命令来实现的, 并且同时状态命令和 部分数据必须被复制到所有管道从而保持跨各图形管道的有效状态。影响整个图形系统、 将系统设为阻塞 (blocking) 模式的诸如刷新、 交换、 α 混合等被称为阻塞操作的类造成了 特定问题。阻塞操作的特别之处在于, 因为它们需要合成的有效 FB 数据, 由此在本发明的 并行设置中, 它们对所有管道核心均有影响。对处理阻塞操作更详细的说明将在下文中给 出。
     □应用剖析和分析模块。该模块对正在运行的应用执行实时剖析和分析。其连续 地监视系统中的应用参数, 诸如存储器速度、 按字节计的存储器使用量、 渲染的总像素、 进 入渲染的几何数据、 帧速率、 每个管道核心的工作负荷、 图形管道之间的负荷平衡、 传输的 数据量、 纹理计数、 以及深度复杂度等。剖析模块标识图形系统内引起瓶颈的问题区域。剖 析模块需要来自多管道核心的寄存器、 MP-SOC 控制单元的寄存器, 以及图形 API 命令 ( 例 如, OpenGL、 DirectX) 的输入。
     □并行性策略管理根据以上剖析和分析在每帧的基础上制定关于要执行的并行 模式的决策。该决策然后通过 MP-SOC 中的控制单元来实行。
     本发明的一个主要特征是其能够修补性能瓶颈的拓扑结构灵活性。 这种灵活性是 通过借助路由中心以及不同合并方案在合成单元处重排图形管道群集得到的。 不同的并行 化方案影响不同的性能瓶颈。因此, 由剖析模块标识的瓶颈可使用相应的并行化方案来补 救。 图 7B 的流程图说明了运行三个并行模式 —— 对象分割、 图像分割以及时间分 割——的机制。该机制将软驱动器模块与 MP-SOC 单元的活动组合。流程图的一个循环是 一帧。 如将在以下解释的, 首先开始的模式是对象分割 (OD), 因为它是优选的并行模式。 应 用的剖析和分析在软剖析和分析模块 (S-PA) 的控制下保持常开。并行策略管理 (S-PPM) 模块在每一帧都检测要从三个并行化模式中选取的最优模式。
     让我们假定采取了对象分割 (OD) 路径。分布式图形功能控制 (S-DGFC) 模块针对 OD 配置整个系统, 其特征在于几何数据的分布以及使用的合成算法。 该配置在图 8 中示出, 并且在稍后具体说明。S-DGFC 模块将几何数据分解为多个部分, 每个都由路由中心 (C-RC) 发送到不同的 GPU 驱动管道核心 (C-PC) 以用于渲染。如图 11 所示并在下文具体说明, 状 态监视 (S-SM) 模块在渲染的数据流中监视阻塞命令。当渲染完成时, 所有帧缓冲由控制单 元 (C-Ctrl) 根据深度测试移到合成单元 (C-CU) 以将所有缓冲合成为单个帧 ( 将在以下具 体说明 )。最终的 FB( 帧缓冲 ) 由显示接口单元 (C-DI) 移到显示器。在帧结束时, S-PA 和 S-PPM 模块对改变模式的选项进行测试。如果采取保持原模式的决策, 则新的 OD 帧从另一 数据部分开始。否则, 由 S-PA 和 S-PPM 模块执行对最优模式的新测试。
     流程图中的左边路径是图像分割 (ID) 操作。图 9 中还示出了由 S-DGFC 设置的 ID 配置, 并在稍后对其具体说明。 它的特征在于在所有管道核心之间广播相同数据, 并且图像 基于合成算法。管道核心之间图像的分割由 S-DGFC 完成。该数据由路由中心广播, 并随后 在各管道核心 (C-PC) 处渲染, 同时每个管道核心被指定以图像的另一部分。一旦渲染完 成, C-Ctrl 将部分 FB 移到合成单元 (C-CU) 以重新构造完整的图像。然后 C-DI 将 FB 移到 显示器。最终由 S-PS 和 S-PPM 模块执行改变测试。根据结果, 新帧将继续 ID 模式或切换 至其它模式。
     时间分割模式在各 GPU 驱动管道核心之间交替各帧。 设置成由 S-GDFC 模块进行交 替, 同时每个核心由 S-DGFC 指定一个帧数据并由 C-RC 单元传递。每个核心 (C-PC) 依次生 成帧。然后 C-Ctrl 通过合成单元将成熟的 FB 移到显示器接口并输出到显示器。实际上, 合成单元在这一模式下仅起到转移的作用。 最后, 与之前其它模式中一样, 由 S-PA 和 S-PPM 模块进行改变模式测试。
     图 8 说明了对象分割并行化方案。软驱动器, 具体而言是分布式图形功能控制模 块将场景的多边形数据分解为 N 个部分流 (N——参与的管道核心的数目 )。整个数据由 GPU 驱动器模块发送到 MP-SOC 路由中心, 其根据软驱动器的分割——每个约为 1/N 的多边 形——将数据分布到 N 个管道以用于渲染。管道核心中的渲染是在软驱动器的状态监视模 块的监视下进行的 ( 参见图 11 以及以下具体说明 )。得到的全帧缓冲在合成单元中聚集。 它们被逐像素地深度合成以找到最终的可视像素集。在每个 x-y 坐标系, 所有隐藏像素由 合成机制消除。最终的帧缓冲被移出到显示器。
     图 9 说明了由并行化策略管理模块根据软驱动器的剖析和分析模块中的剖析、 分 析、 以及决策制定的结果选择的图像分割并行化方案。每个管道核心被指定以屏幕的唯一 性的 1/N 部分。完整的多边形数据通过 GPU 驱动模块和路由中心被传递到每个管道核心。 管道核心中的并行渲染在每个核心处得到部分帧缓冲。 这些图像片段被移到合成单元以便 被 2D 合并为单个图像并被移出至显示器。
     图 10 说明了由并行策略管理模块根据软驱动器的剖析和分析模块中的剖析、 分 析、 以及决策制定的结果选择的时间分割并行化方案。分布式图形功能控制模块通过 GPU 驱动器模块将这些帧分为 N 个周期 (N =核心的数目 ) 从而使每个核心有 N 帧的时隙来渲 染完整的多边形数据。因此, 场景多边形数据通过路由器在某一时间被分布至不同的管道 核心。每个核心在 N 个周期中执行渲染并将其全帧缓冲输出至显示器以用于单帧。合成单 元在这里起到简单的开关作用, 在所有管道核心之间交替对显示器的接入。
     不同的并行化方案解决不同的性能瓶颈。 因此瓶颈必须被标识并随后通过在合适 的时间应用合适的方案来消除 ( 或降低 )。
     如图 7B 所示, 剖析器标识图形系统内导致瓶颈的问题区。这是在驱动器的应用 剖析和分析模块中实现的。剖析器模块需要诸如图形 API 命令的使用 ( 例如, OpenGL、 DirectX、 其它 )、 存储器速度、 按字节计的存储器使用量、 渲染的总像素、 进入渲染的几何数 据、 帧速率、 每个 GPU 的工作负荷、 GPU 之间的负荷平衡、 传输的数据量、 纹理计数、 以及深度 复杂度等输入。这些数据类型是从基于 MP-SOC 的图形系统内的以下来源收集到的 :
     1.MP-SOC 中的剖析功能单元
     2. 驱动器
     3. 管道核心
     4. 芯片集架构性能 (CHAP) 计数器
     5.
     通常, 在帧时间的基础上检索性能数据, 然而, 周期性也可以是剖析器的配置属 性, 或者可在检索性能数据之前根据剖析器被设计成要检测的一检测到的配置事件来设 置。
     导致选择优选并行方法的分析是基于一个假定, 即在定义良好的情形中 ( 在以下说明 ), 对象分割方法由于减少了更多的瓶颈所以取代其它分割方法。 与仅减少了在每个管 道核心处的片段 / 填充界限处理的图像分割形成对比, 对象分割实际减轻了跨管道的所有 瓶颈 : (i) 几何 ( 即, 多边形、 线、 点等 ) 变换处理在每个管道上被卸除, 仅处理 1/N 的多边 形 (N——参与的管道核心的数目 ) ; (ii) 由于较少的多边形被馈送给光栅化器, 所以填充 界限处理减少 ; (iii) 需要较少的几何存储器 ; (iv) 需要较少的纹理存储器。
     虽然时间分割通过允许每个管道核心在每帧生成时有更多的时间来释放瓶颈, 然 而该方法也遭遇一些严重问题, 诸如 CPU 瓶颈, 各管道核心生成的帧缓冲彼此不可用、 以及 经常有管道等待的情形。因此该方法并不适于所有应用。从而, 由于对象分割作为瓶颈开 启者的优越性, 其成为了主要的并行模式。
     以下对象分割算法在多个图形管道核心之间分布多边形。 典型的应用生成包括图 形数据块的图形调用流 ; 每个块包含诸如单顶点操作或基于缓冲的操作 ( 顶点阵列 ) 等几 何操作的列表。通常, 分解算法以将各个块保持为基本数据单元的方式在管道核心之间分 割数据。几何操作被附连到 ( 诸 ) 数据块以指示处理该数据的方法。一个块针对一个指定 的 GPU。然而, 具有一些属于诸如刷新、 交换、 α 混合等影响整个图形系统、 将系统设成阻塞 模式的阻塞操作组的操作。阻塞操作的特别之处在于它们需要合成的有效 FB 数据, 由此在 本发明的并行设置中对所有管道核心都有影响。因此, 无论何时只要阻塞操作中的一个被 发出, 所有的管道核心就必须被同步。 每个帧具有至少 2 个阻塞操作 : 终止该帧的刷新和交 换。
     图 11 表示描述了根据本发明的一个说明性实施例的用于在多个 GPU 驱动管道核 心之间分布多边形的算法的流程图。该帧活动开始于在各 GPU 之间分布数据块。在步骤 1112 针对阻塞模式对每个图形操作进行测试。在常规路径 ( 非阻塞路径 ) 中, 数据在步骤 1113 被重定向到指定的管道核心。重复该循环直到检测到阻塞操作。
     当检测到阻塞操作时, 所有的管道核心必须通过至少以下序列在步骤 1114 被同 步:
     执行刷新操作以终止渲染并清除管道核心中的内管道 ( 刷新 ) ;
     执行合成以将所有的 FB 的内容合并成单个 FB ; 以及
     将上述单个 FB 的内容发送回所有的管道核心以创建继续的共同基础。
     交换操作启动双缓冲机制, 交换背色和前色缓冲。如果在步骤 1115 检测到交换, 这意味着合成帧必须在除了管道 0 之外的所有管道核心上终止。所有管道核心具有指定存 储上述内容的 FB 的最终合成内容, 但是仅有连接至屏幕的一个 ( 管道 0) 在步骤 1116 显示 图像。
     另一情形是被全局应用到场景并需要被广播至所有管道核心的操作。 如果诸如用 于透明度的 α 混合等其它阻塞操作之一被标识, 则所有管道核心在步骤 1114 如前被刷新, 并且并合并为公共 FB。这次没有检测到交换操作 ( 步骤 1115), 因此所有管道核心具有相 同的数据, 并且只要阻塞模式为开 ( 步骤 1117), 则它们继续处理相同的数据 ( 步骤 1118)。 如果在步骤 1117 检测到阻塞模式结束, 则管道核心返回处理指定数据 ( 步骤 1113)。
     对象分割的相对优点相当程度上取决于场景的深度复杂度。 深度复杂度是作为深 度测试结果的片段替换的数目 ( 画在每个像素上的多边形数目 )。在没有片段替换的理想 情形中 ( 例如, 场景的所有多边形都位于相同的深度水平 ), 则根据减少的多边形数目, 填充也得以减少 ( 就 2 个管道核心而言 )。 然而, 当深度复杂度变高时, 对象分割的优点下降, 并且在一些情形中, 图像分割甚至可能性能更佳, 例如在多边形数目少且纹理量高的应用。
     另外, 本发明引入了根据先前处理级显示的负荷将对象分割方法与图像域和时域 中的图像分割和时间分割方法组合在一起的动态负荷平衡技术。 将全部三个并行方法组合 为联合的构架极大地增大了图形系统的帧速率稳定性。
     图 12 公开了根据本发明的一个实施例的采用 8 个管道核心的系统的样本配置。 根据以上样本配置, 假定了平衡的图形应用。这些管道核心为实现时间分割并行性被分为 两组。用 1、 2、 3、 和 4 索引的管道核心被配置成处理偶数帧而用 5、 6、 7 和 8 索引的管道核 心被配置成处理奇数帧。 在每组内, 为图像分割设置两个管道核心子组 : 具有较低索引的管 道核心 ( 分别为 1、 2 和 5、 6) 被配置成处理屏幕的一半, 而高索引的管道核心 ( 分别为 3、 4 和 7、 8) 被配置成处理屏幕的另一半。最终, 对于对象分割, 用 1、 3、 5 和 7 索引的管道核心 被馈以这些对象的一半, 而用 2、 4、 6 和 8 索引的管道核心被馈以这些对象的另一半。
     如果在某些时候系统检测到先前帧中呈现的瓶颈出现在管道的光栅级处, 则意味 着片段处理主导了渲染帧所用的时间并且配置是不平衡的。 此时, 管道核心被重新配置, 从 而使每个管道核心将渲染各帧内屏幕的四分之一。管道核心 1、 2、 3、 4 之间以及 5、 6、 7、 8之 间对于时间分割的原始划分仍然保持, 但是管道核心 2 和管道核心 5 被分别配置成渲染偶 数和奇数帧中屏幕的第一个四分之一。 管道核心 1 和 6——渲染第二个四分之一, 管道核心 4 和 7——第三个四分之一, 以及管道核心 3 和 8——第四个四分之一。不包含对象分割。 另外, 如果在某些时候系统检测到在先前帧中呈现的瓶颈出现在管道的几何级, 则管道核心被重新配置, 从而使得每个管道核心将处理各帧内几何数据的四分之一。 即, 管 道核心 3 和 5 被分别配置成处理偶数和奇数帧中多边形的第一个四分之一。管道核心 1 和 7——渲染第二个四分之一, 管道核心 4 和 6——第三个四分之一, 以及管道核心 2 和 8—— 第四个四分之一。不包含图像分割。
     应该注意的是, 采用 8 个管道核心足以按帧组合全部三种并行模式, 即时间、 图像 和对象分割模式。采用大于 8 的管道核心数目, 也能组合全部三种模式, 但是以不对称的方 式组合。 该灵活性还存在于时间分割周期中的帧计数中。 在以上示例中, 8 个管道核心的群 集被分解为两组, 每组处理一帧。然而, 还可以将时间分割模式中的帧数扩展为大于 2 帧的 序列, 例如 3 或 4 帧等。
     采用较少数目的管道核心仍然允许并行模式的组合, 然而是仅两种模式的组合。 例如, 仅采用 4 个管道核心能组合图像和对象分割模式, 但没有时间分割模式。当采用作为 左边群集的管道核心 1-4 的组时, 可从图 12 可清楚的理解。类似地, 构成上部群集的管道 核心 1、 2、 5 和 6 的组采用对象和时间分割模式两者。最后, 作为中间群集的管道核心 2、 4、 5 和 6 的组的配置采用图像和时间分割模式。
     需要注意的是, 与以上实施例类似, 并行模式之间的任何组合可被调度以均匀地 平衡图形负荷。
     还应该理解的是, 根据本发明, 所有管道核心之间的并行化处理都可基于对象分 割模式或图像分割模式或时间分割模式或其任意的组合以最优化每一帧的处理性能。
     关于并行模式的决策是根据以上剖析和分析在每帧的基础上实现的。 如上所述以 及图 8、 9、 10 和 12 中所示的, 随后由并行化方案的重新配置来执行。
     以上非常具体地说明的 MP-SOC 架构可容易地适用于不同种类的图形处理和显示 系统中。虽然结合 PC 类计算系统对本发明的说明性实施例进行了说明, 但是需要理解的是 本发明还可在包括移动计算设备、 嵌入式系统、 以及支持拟真质量的图形可视化的科学和 工业计算系统的不同种类的系统中使用以改善图形性能。
     需要理解的是, 在本发明的说明性实施例中说明的图形处理和显示技术可以各种 方式进行修改, 这对于得益于在此公开的新颖教导的本领域的技术人员是显而易见的。本 发明的说明性实施例的所有的这类修改和变化都应被认为在如所附权利要求所定义的本 发明的范围和精神实质之内。

在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统.pdf_第1页
第1页 / 共29页
在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统.pdf_第2页
第2页 / 共29页
在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统.pdf_第3页
第3页 / 共29页
点击查看更多>>
资源描述

《在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统.pdf》由会员分享,可在线阅读,更多相关《在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统.pdf(29页珍藏版)》请在专利查询网上搜索。

一种在单片硅芯片上实现的高性能图形处理和显示系统,该系统支持多个图形处理单元(GPU)核心的群集,这多个图形处理单元核心的群集协作以提供支持用于不同应用的拟真图形能力的功能强大并高度可升级的可视化方案。本发明通过通过动态地管理各种并行渲染技术并使得能自适应地处理不同的图形应用来消除沿图形管道的渲染瓶颈。 。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1