在理论上,通过增加更多GPU核心来提升性能似乎很简单:核心越多,性能越强。但在实践中,这是图形架构领域最棘手的挑战之一。虽然某些工作负载因其独立特性能实现良好扩展,但另一些工作负载(尤其是几何处理)会引入顺序依赖性,使得线性性能扩展成为业界所有GPU架构都难以攻克的难题。
为什么多核GPU性能扩展如此困难?
现代GPU的优势来自高度并行化,但并不是所有任务都能做到并行。以几何处理为例,它具有天然的顺序性。图形API要求按照提交顺序处理对象,因为可见性与渲染结果往往依赖这一顺序。这意味着几何工作负载通常只能在单一核心上运行,生成按顺序排列的tile列表供后续管线使用。当几何阶段成为瓶颈时,其他核心会处于闲置状态,从而导致扩展效率大幅下降。
这并非Imagination独有的困境。其他GPU架构同样面临类似挑战:它们同样难以在工作负载无法平均分配时保持高效扩展。虽然动态并行(dynamic parallelism)和硬件队列(hardware queues)等技术能够提供帮助,但在几何密集场景下问题依然突出。结果就是:增加核心数量并不一定能带来成比例的性能提升——无论使用的是哪种GPU。
那么,我们的解决方案是什么?
走进Imagination的多核GPU架构
在讨论我们的几何扩展方案之前,我们先回顾一下Imagination的多核基础。
Imagination GPU具备高度可扩展的多核技术,可帮助系统设计者实现更高峰值性能或最大工作负载灵活性。Imagination的方法是去中心化(decentralised)且松耦合(loosely-coupled),从而避免传统集中式多核架构所面临的拥塞和布局限制问题。
这些核心是松耦合的,仅通过内存共享命令列表和tile缓冲列表,共同分担工作负载。由于每个核心都被设计为一个独立、完整的GPU,它包含所有必要的功能,能够根据优先级自行管理并执行任务。

Imagination GPU多核网格的主–主(Primary-Primary)模式

Imagination GPU多核网格的主–从(Primary-Secondary)模式
多核网格中的每个核心都可以独立运行(主–主模式,Primary-Primary),也可以协同运行(主–从模式,Primary-Secondary)。在主–从配置下,只有主GPU核心(Primary GPU Core)内的一个固件处理器处于激活状态,它负责驱动所有属于多核网格的从GPU核心(Secondary GPU Cores)中的工作负载。多个GPU实例共享命令流,并共同尽可能快速地完成任务。
通过让每个GPU核心在渲染目标(render target)的不同区域上工作,我们能够保持带宽效率,因为每个核心始终处理屏幕上连续且具一致性的区域,从而确保最大的缓存命中率(每个核心的数据根据自身处理的任务进行针对性缓存,避免核心之间不必要的数据迁移和重复,提高整体效率)。
多核网格中的寄存器设置和同步通过专用的XPU总线来处理,它连接主GPU核心和所有从GPU核心,支持点对点及广播模式。该核间通信结构与内存层级经过优化,确保在核心数量增加时仍能降低延迟。该结构还能将GPU核心分布在多个Chiplet、芯片甚至不同的板上。这为客户提供了更灵活的设计选择,并显著降低成本——客户只需设计一个单一chiplet(或芯片),便可通过封装多个chiplet来构建不同性能档位,从而扩展GPU性能。
引入Alternate Geometry Processing(AGP):交替式几何处理
现在我们回到如何在多核心环境中实现接近线性的性能扩展这一挑战上。
我们多核技术的一个关键特性——最早在B-Series中引入,并在后续几代中不断优化——这便是交替式几何处理(AGP)。AGP并不是强制所有几何任务都由一个核心处理,而是将几何工作负载分布到多个核心,但保留一个关键原则:不破坏同一渲染目标内部的严格顺序要求。
AGP的方法是:将不同的渲染目标(render targets)或不同帧分配给不同GPU核心处理几何阶段。
例如:
- 核心#1处理渲染目标A的几何任务;
- 核心#2处理渲染目标B的几何任务;
- 与此同时,像素处理和计算任务会被切片并分配到所有核心上并行执行。
这种方式既遵循了图形API的顺序规则,又能在多个渲染任务独立的情况下释放并行度。在多帧、多个渲染目标的场景中,AGP能显著减少闲置时间,让负载分配更均衡。
交替式几何处理(AGP)的实际优势
1.更高的扩展效率
通过在多个核心之间分配几何工作,AGP避免了单核心成为瓶颈的问题。这在云游戏或汽车系统等同时处理多场景、多显示的多核配置中尤为重要。
2.更佳的资源利用率
若没有AGP,负责几何处理的核心还要承担其像素处理任务,从而拖慢整个多核系统。而AGP能平衡负载、减少倾斜(skew),保持所有核心都持续工作。
Imagination的AGP与其他GPU厂商的比较
其他GPU厂商采用的方案不尽相同。
- NVIDIA 多GPU架构多基于逐帧并行(Alternate Frame Rendering)。
- AMD则采用命令处理器和硬件队列来分配工作负载。
但两种方案都面临类似的局限性:几何密集型场景仍可能阻碍扩展,因为在不破坏渲染正确性的前提下难以拆分这类场景。
Imagination的AGP技术之所以脱颖而出,在于其采用软件驱动模式并深度集成于我们的分块式(Tile-Based)架构,从而实现高效灵活的运行。结合去中心化、松耦合的多核设计,AGP能为原本可能陷入停滞的工作负载提供近乎线性的扩展能力。
对系统设计者意味着什么?
对系统设计者而言,结论非常清晰:
多核扩展的成功并不是简单地叠加更多核心,而是更智能合理地管理工作负载。
若您希望深入了解如何基于Imagination GPU IP构建高性能多核解决方案,以及如何高效分配工作负载,欢迎联系我们的团队。
英文链接:https://blog.imaginationtech.com/how-alternate-geometry-processing-enables-better-multi-core-gpu-scaling
声明:本文为原创文章,转载需注明作者、出处及原文链接。
-
gpu
+关注
关注
28文章
5099浏览量
134468 -
API
+关注
关注
2文章
2153浏览量
66244 -
imagination
+关注
关注
1文章
617浏览量
63098
发布评论请先 登录
Stduio使用wifi模块出错如何处理?
多种类几何尺寸集成智能仪器定制 一站式解决产线多维度测量需求
NVIDIA桌面GPU系列扩展新产品
多节点并行处理架构
高效地扩展Polars GPU Parquet读取器
Simcenter STAR-CCM+几何体处理,简化设计流程,轻松创建、修改和准备几何体
从图形处理到AI加速,一文看懂Imagination D系列GPU
从CPU到GPU:渲染技术的演进和趋势

如何通过交替式几何处理实现更优的多核 GPU 扩展
评论