异构计算

不同类型指令集和体系架构的计算单元组成系统的计算方式。

指令集:Instruction Set Architecture 

(寄存器、寻址模式、存储体系、中断、异常处理、外部 IO)

由操作码+处理器执行的基本命令构成

 

计算单元 CPU GPU 协处理器 DSP ASIC FPGA。

 

处理器架构,硬件电路,实现指令集操作

 

指令集决定处理器架构

汇编语言用人类语言的方式描述指令集

高级语言---》》汇编语言---》》二进制机器码(01)

 

异构计算也就是并行计算,CPU频率与内核数量提高计算能力的传统方式遇到了

散热和能耗瓶颈。

 

CPU设计擅长处理 不规则数据结构(堆栈二叉树),不可预测的存取模式,下一次指令存取位置不一致,以及递归算法、分支密集型代码和单线程程序。这类程序拥有复杂的指令调度,循环,分支,逻辑判断,以及执行等步骤,而GPU善于处理规则数据结构和可预测存取模式。APU设计让CPU、GPU完美合作,集合两者长处,用异构计算来达到整体性能的最佳化。

 

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

CPU与GPU本质区别;

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

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

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

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

CPU每个核心支持1~2个线程,CPU切换线程的代价是数百个时钟周期

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

inter 没有集成内存控制器

 

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

GPU将晶体用于处理器阵列、多线程管理、共享内存、内存控制器,这些设计未来GPU同时执行成千上万的线程。

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

GPU使用cache来放大内存带宽

CUDA的GPU,每个流处理器可以同时处理1024个线程。

GPU使用SIMT(单指令多线程) SIMT是SIMD的一种推广

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

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值