随着人工智能的崛起,异构计算的舞台逐渐升温,GPU和FPGA正从辅助角色跃升为计算设备的主力,挑战CPU的传统霸主地位。这一切背后的秘密,就在于它们独特的设计和惊人的浮点运算能力。让我们一起揭秘,为何GPU和FPGA在计算能力上超越了CPU。
CPU,作为通用处理器,其设计既要满足复杂的计算需求,又必须考虑人机交互的实时响应和任务协调。因此,大量的空间被用于实现分支预测与优化,以及存储缓存以降低任务切换时的延迟,如Intel E5 2680 V4的14核心设计。
相比之下,GPU的设计则更加专注于计算性能,几乎将所有空间倾注于ALU,专为矩阵运算、AI和图形渲染等任务量身打造。例如,Tesla P100的3584个CUDA核心和Xilinx Ultrascale的1440 DSP加法器,皆证明了其在浮点运算上的强大实力。
Intel E5 2680 V4的1.34TFlops峰值浮点运算能力,反映出其14个核心和SIMD技术的结合。从Haswell的AVX256(每周期16次单精度浮点运算)到Broadwell的FMA(每周期32次运算)再到Skylake的AVX512(每周期64次运算),每一代都在提升计算效率。
GPU的代表,如Tesla P100,凭借3584个CUDA核心和FMA,峰值浮点运算能力高达10TFlops,即使是入门级的P4也能提供5TFlops,展现出显著的优势。而Xilinx Ultrascale的1440 DSP加法器和6743个逻辑加法器,合起来的4.5TFlops,展现了FPGA在特定领域的强大计算性能。
尽管在性能上GPU和FPGA远超CPU,但价格方面,如E5 2680 V4、Tesla P4和Xilinx Ultrascale在某些应用场景中可视为性价比相当。这表明,选择哪种芯片,不仅要看性能,还要根据实际需求和预算来权衡。