GPU编程

电子计算机三大核心部件: CPU(Central Processing Unit)、储器(Memory)和 输入/输出(I/O)设备。

CPU :是一块超大规模的集成电路,是一台计算机的运算核心(Core)和控制核心( Control Unit)。它的功能主要是解释计算机指令以及处理计算机软件中的数据。
CPU的结构 :主要包括 ALU(Arithmetic and Logic Unit)运算器、CU(Control Unit)控制单元、寄存器(Register)、高速缓存器(Cache)和它们之间通讯的数据、控制及状态的总线(Bus)。
 CPU遵循的是冯诺依曼架构,其核心就是:存储程序,顺序执行

CPU的架构中需要大量的空间去放置存储单元(橙色部分)和控制单元(黄色部分),相比之下计算单元(绿色部分)只占据了很小的一部分,所以它在大规模并行计算能力上极受限制,而更擅长于逻辑控制。

GPU : 用很多简单的计算单元去完成大量的计算任务,纯粹的人海战术。这种策略基于一个前提,就是小学生A和小学生B的工作没有什么依赖性,是互相独立的。GPU是为了图像处理而生的,但它在结构上并没有专门为图像服务的部件,只是对CPU的结构进行了优化与调整,所以现在GPU不仅可以在图像处理领域大显身手,它还被用来科学计算、密码破解、数值分析,海量数据处理(排序,Map-Reduce等),金融分析等需要大规模并行计算的领域。

 

SoC : System-on-a-Chip, 芯片级系统,也有称片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。一般用在移动设备上。特点:1.硬件规模庞大,通常基于IP设计模式;2.软件比重大,需要进行软硬件协同设计。

FPGA : (Field Programmable Gate Array),是在PAL、GAL等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点
FPGA器件属于专用集成电路中的一种半定制电路,是可编程的逻辑列阵,能够有效的解决原有的器件门电路数较少的问题。FPGA 的基本结构包括可编程输入输出单元,可配置逻辑块,数字时钟管理模块,嵌入式块RAM,布线资源,内嵌专用硬核,底层内嵌功能单元

 

CPU和GPU的互访 :大多数显卡对于RAM没有直接的访问权利,

  渲染所需要的数据 -> 硬盘 -> 系统内存(RAM) -> 显存
有这样的架构,叫UMA,unified memory access。其实CPU和GPU早就可以互访空间了,只要驱动做一个mapping就行,没有任何难度。问题在于两者的访存模式差别太大,任意互访并不能带来人和性能优势,反而会带来很多问题,比如cache一致性。所以PC上直到win10才放开。

独立CPU和独立GPU,现在是PCIe连接,下一代应该上CCIX.

而手机上又不一样,一般使用Soc ----- 手机上的gpu几乎都不配备单独的显存,需要的memory从系统memory里面分,系统启动的时候会分一部分给gpu用,这部分memory是gpu可以直接访问的。如果还需要的话,再从系统里面分一部分,这部分memory gpu不能直接使用的,只有经过mmu映射后才能用明出处。

 

双核四线程的CPU,在不发生资源冲突的情况下,每个计算核心可能同时进行两个计算,但超线程通常只是使逻辑计算核心翻倍。

云渲染 就是在云计算的基础上加入图形渲染,它可以将3D图形渲染搬到了互联网上。

 

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值