再谈异构计算CPU+GPU(APU)

news/2025/2/22 15:56:20/

再谈异构计算CPU+GPU

异构计算的英文名称是Heterogeneous computing,主要是指使用不同类型指令集和体系架构的计算单元组成系统的计算方式。常见的计算单元类别包括CPU、GPU等协处理器、DSP、ASIC、FPGA等。我们常说的并行计算正是异构计算中的重要组成部分异构计算近年来得到更多关注,主要是因为通过提升CPU时钟频率和内核数量而提高计算能力的传统方式遇到了散热和能耗瓶颈。而与此同时,GPU等专用计算单元虽然工作频率较低,具有更多的内核数和并行计算能力,总体性能/芯片面积的比和性能/功耗比都很高,却远远没有得到充分利用。

CPU的设计让其比较擅长于处理不规则数据结构和不可预测的存取模式,以及递归算法、分支密集型代码和单线程程序。这类程序任务拥有复杂的指令调度、循环、分支、逻辑判断以及执行等步骤。而GPU擅于处理规则数据结构和可预测存取模式。而APU的设计理念则正是让CPU和GPU完美合作,集合两者的长处,用异构计算来达到整体性能的最佳化。

目前,已经有50款领先的应用能够利用AMD APU进行加速,而后续的应用也将陆续到来——异构计算普及的一刻应该是近在咫尺了。

再谈谈现在正在流行的异构计算CPU+GPU。

CPU和GPU的本质区别

CPU的目标是快速执行单一指令流;

CPU将其用于乱序执行、寄存器重命名、分支预测以及巨大的cache上,这些设计都是为了加速单一线程的执行速度;

CPU利用cache来降低内存访问延迟;

CPU通过大量的cache和分支预测来降低延迟,这些机制消耗了大量的晶体管的电能;

CPU每个核心支持1~2个线程;

CPU切换线程的代价是数百个时钟周期;

CPU通过SIMD(单指令多数据)来处理矢量数据;

Intel的CPU没有集成内存控制器;

GPU的目标是快速执行大量的并行指令流;

GPU将晶体管用于处理器阵列、多线程管理、共享内存、内存控制器;

这些设计并不着眼于提高单一线程的执行速度,而是为了使GPU可以同时执行成千上万的线程;

实现线程间通信,并提供极高的内存带宽;

GPU使用cache来放大内存带宽;

GPU通过同时运行上千个线程来隐藏延迟,等待内存访问的线程会被切换掉,GPU切换线程不耗时间;

对于支持CUDA的GPU,每个流处理器可以同时处理1024个线程;

GPU切换线程的代价是0,事实上GPU通常每个时钟周期都切换线程;

GPU则使用SIMT(单指令多线程),SIMT的好处是无需开发者费力把数据凑成合适的矢量长度,并且SIMT允许每个线程有不同的分支;

支持CUDA的GPU集成有8个内存控制器,GPU的内存带宽通常是CPU的十倍。

CPU的长项是整数计算,GPU的优势则是浮点计算。

对于整机性能而言,CPU和GPU都是性能的保障,合理的搭配才是重中之重,才能给用户带来最强的综合性能。


http://www.ppmy.cn/news/455563.html

相关文章

异构计算 CPU、GPU、DSP、ASIC、FPGA

异构计算主要是指使用不同类型指令集和体系架构的计算单元组成系统的计算方式。异构计算已经无处不在,从超算系统到桌面到云到终端,都包含不同类型指令集和体系架构的计算单元,下面先从几个系统了解下异构计算超算系统。 天河-2:…

异构计算 — 异构芯片融合趋势

目录 文章目录 目录计算架构的演进方向第一阶段,串行计算第二阶段,同构并行计算第三阶段,异构并行计算未来,将走向第四阶段,超异构并行阶段NVIDIA 的异构芯片融合GPU + DPUCPU + GPUCPU + GPU + DPUIntel 的融合架构芯片CPU + GPUAMD 的融合架构芯片CPU + GPU计算架构的演…

异构计算 — Overview

目录 文章目录 目录异构计算异构计算体系结构第一阶段,串行计算第二阶段,同构并行计算第三阶段,异构并行计算CPU+GPUCPU+FPGASoC下一个阶段,融合异构计算异构计算的编程框架异构计算体在 AI 场景中的应用异构计算 异构计算是指使用不同类型指令集和体系架构的处理器芯片(…

异构计算综述

异构计算(Heterogeneous computing) 异构计算(Heterogeneous computing)技术从80年代中期产生,由于它能经济有效地获取高性能计算能力、可扩展性好、计算资源利用率高、发展潜力巨大,目前已成为并行/分布计…

CPU+GPU异构计算完全解析

原文链接:http://bj.beareyes.com.cn//2/lib/201106/20/20110620416_1.htm 工欲善其事,必先利其器。有一个好的计算工具是必须的! 并行计算:让处理的速度变得更快 相对于串行计算,并行计算可以划分成时间并行和空间并…

【高性能计算】英特尔oneAPI—英特尔异构统一编程接口初识及其深度学习应用

英特尔oneAPI-英特尔异构统一编程与接口初识及其深度学习应用 1 高性能计算的今天 高性能计算(High performance computing,HPC) 通常使用不同的设备、处理器进行计算。HPC的市场增长逾加迅速,在云计算、大数据、AI等领域大放异彩。如今,全球…

显卡和异构计算

显卡和异构计算 本文采用知识共享署名 4.0 国际许可协议进行许可,转载时请注明原文链接,图片在使用时请保留全部内容,可适当缩放并在引用处附上图片所在的文章链接。 显卡GPU 显卡分类 集成显卡独立显卡核芯显卡 显卡性能 架构流处理器核心频…

异构计算 — CPU+GPU

目录 文章目录 目录CPU+GPU 异构计算分离式架构CPU+GPU 异构计算 在现代的异构计算系统中,GPU 是以 PCIe 卡的形式作为 CPU 的辅助计算设备。根据 CPU 和 GPU 是否共享了内存,可分为两种类型的 CPU-GPU 异构计算架构: 分离式架构:CPU 和 GPU 拥有各自独立的缓存和内存,两…