科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道服务器组件NVIDIA Fermi(GT300)通用计算架构探秘

NVIDIA Fermi(GT300)通用计算架构探秘

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

AMD Cypress(RV870)拉开了DX11时代的序幕,NVIDIA Fermi(GT300)正在掀起新的浪潮。今天凌晨,NVIDIA在GPU技术会议上终于揭开了全新架构的秘密,并首次展示了新一代显卡。

来源:驱动之家 2009年11月17日

关键字:

  • 评论
  • 分享微博
  • 分享邮件

在本页阅读全文(共8页)

3、效率

  CPU和GPU执行的都是被称作线程的指令流。高端CPU现在每次最多只能执行8个线程(Intel Core i7),而GPU的并行计算能力就强大多了:G80 12288个、GT200 30720个、Fermi 24576个。

  为什么Fermi还不如GT200多?因为NVIDIA发现计算的瓶颈在于共享内存大小,而不是线程数,所以前者从16KB翻两番达到64KB,后者则减少了20%,不过依然是G80的两倍,而且每32个线程构成一组“Warp”。

  在G80和GT200上,每个时钟周期只有一半Warp被送至SM,换言之SM需要两个循环才能完整执行32个线程;同时SM分配逻辑和执行硬件紧密联系在一起,向SFU发送线程的时候整个SM都必须等待这些线程执行完毕,严重影响整体效率。

  Fermi解决了这个问题,在每个SM前端都有两个Warp调度器和两个独立分配单元,并且和SM其它部分完全独立,均可在一个时钟循环里选择发送一半Warp,而且这些线程可以来自不同的Warp。分配单元和执行硬件之间有一个完整的交叉开关(Crossbar),每个单元都可以像SM内的任何单元分配线程(不过存在一些限制)。

  这种线程架构也不是没有缺点,就是要求Warp的每个线程都必须同时执行同样的指令,否则会有部分单元空闲。每组SM每个循环内可以执行的不同操作数:FP32 32个、FP64 16个、INT 32个、SFU 4个、LD/ST 16个。

  4、并行内核(Parallel Kernel)

  在GPU编程术语中,内核是运行在GPU硬件上的一个功能或小程序。G80/GT200整个芯片每次只能执行一个内核,容易造成SM单元闲置。这在图形运算中不是问题,通用计算上就不行了。

  Fermi的全局分配逻辑则可以向整个系统发送多个并行内核,不然SP数量翻一番还多,更容易浪费。

  应用程序在GPU和CUDA模式之间的切换时间也快得多了,NVIDIA宣称是GT200的10倍。外部连接亦有改进,Fermi现在支持和CPU之间的并行传输,而之前都是串行的。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章