图形处理器——从显示到计算的蜕变
万个像素的颜色,每个像素的计算相对独立,且计算模式高度一致。这种任务被称为“单指令多数据”——对大量不同的数据执行相同的简单操作。CPU虽然强大,但其设计侧重于处理复杂多变的逻辑,只有少数几个强大的核心,擅长“单指令单数据”的工作模式。
GPU采用了完全不同的设计哲学。它集成了成百上千个小型核心,这些核心不如CPU核心强大,但胜在数量庞大。当处理图形渲染这类任务时,上千个核心可以同时工作,每个核心负责一小块区域的计算。这种大规模并行架构使GPU在处理可并行任务时,效率远超CPU。一个中端GPU可能拥有超过1000个核心,而高端CPU通常只有8到16个核心。
GPU的强大并行能力很快被其他领域注意到。大约在2010年前后,研究人员开始尝试将非图形任务交给GPU处理,这就是“通用计算GPU”概念。机器学习是受益最大的领域之一。训练一个神经网络需要进行海量的矩阵乘法运算,这恰好是GPU擅长的并行任务。一块GPU可以在几天内完成原本需要数月才能完成的模型训练,直接推动了深度学习革命。
