APP下载

硬科技:浅谈GPU到底是什么(下):走向汎用化的GPGPU

消息来源:baojiabao.com 作者: 发布时间:2026-07-11

报价宝综合消息硬科技:浅谈GPU到底是什么(下):走向汎用化的GPGPU

GPU通用运算大致上可以分为几个时期。

1999-2006年“酝酿期”:微软DirectX 8制定的着色器架构型 (Shader Model),让GPU具备可程式化能力,也让当时不务正业的NVIDIA,在NV30踢了大铁板,平白送给ATI趁势崛起的机会。但不可否认,NV30的CineFX的确算是其后来GPGPU的滥觞,依旧不能不肯定其价值。

2006-2009年“开创期”:微软DirectX 10的统一着色器架构 (Unified Shader) 强化了GPU的使用弹性,并以NVIDIA G80为起点,GPU均走向兼具SIMD与MIMD部分优点的SIMT运算架构,千丝万缕的执行绪灌入被拆散的庞大运算单元。

2009-2010年“熟成期”:因微软DirectX 11,GPU开始支援IEEE 754浮点格式,无论单倍还是双倍精度的浮点乘积和,都成为标准配备,而内存ECC等纠错机制,也提升了GPU的可靠性,让GPU更加接近CPU,也更适合导入高效能运算 (HPC)。

2010-2016年“实用期”:GPU双雄一同黏死在台积电28nm制程,但这段期间CUDA、OpenCL、OpenMP与OpenACC等应用程序界面也开始成熟,克服GPU内存容量限制的共用虚拟记忆器,也在这时开始萌芽。

2016年开始“迈向人工智能”:为了强化GPU较弱的“推论”与节约内存及储存开销,开始支援FP16 Int8等低精度资料格式,并扩充专属功能单元与指令。此外,普遍导入HBM2内存,并引进新型总线,如NVLink。

但放眼“高效能运算”与“人工智能”两块领域,GPGPU至今也仍存在诸多限制:

高效能运算:内存带宽继续闹饥荒。

科科也许当下无法接受为何GPU“带宽不够”,GDDR5X和HBM2不是都高的吓人吗?但如果以每个浮点运算能够分配到的理论带宽,GPU其实是持续下滑中的,这也导致GPU越来越仰赖共享式区域内存与快取内存。眼尖的科科一定会注意到笔者暗藏在首篇文章比较表中的伏笔。

以NVIDIA Tesla K80为例,其倍精度浮点运算理论效能是2.91TFlop,内存理论带宽为480GB/s,平均为0.165 Byte / Flop;反观更加先进的Tesla P100,理论效能5.3TFlop,HBM2内存提供732GB/s理论带宽,反而是更低的0.136Byte / Flop,V100更降低到0.12 Byte / Flop。所以说,千万不要傻傻的以为有HBM2就天下无敌,内存带宽旱灾的问题可大条了,支撑那些向量超级电脑的技术可一点都不简单。

人工智能:面对专用芯片的挑战。

NVIDIA之所以能够在跟AMD的多年缠斗中胜出,说穿了,也就是因为让消费性产品和高阶专业应用分而治之,善尽其在游戏市场维持卓越的责任,而AMD就无所不备则无所不寡的两头皆空。

但即使如此,GPU仍扛了太多人工智能压根儿不需要的绘图功能,否则Google也不会大费周章的去打造自己的TPU。在以前,透过庞大的个人电脑市场摊平研发成本、降低价格,是GPU 迈向通用运算 (以及进攻服务器市场的x86 CPU) 的根本优势之所在,但现在反过来变成了多余的包袱。所谓“资产”和“包袱”就像硬币的两面,大概就是这个意思。

最后,为了满足各位科科的求知欲,笔者特此整理绘图硬件技术的里程碑,希望可以趁机唤醒各位科科珍贵的童年回忆。谢谢收看,我们下次再见。科科。

 

2018-05-11 12:34:00

相关文章