● 第五章:ATI GPU通用计算实例分析
前四章我们分析了GPU并行计算的技术基础和不同架构之间的性能差异。我们特别对ATI GPU从R300到R600的沿革和R600到现在R800的优化做了分析,让大家明白ATI GPU架构在哪些方面有出人意料的表现,哪些方面则表现地落后于竞争对手。在本章,我们将使用较小的篇幅来展示目前GPU并行计算编程方面的新进展,特别是GPU并行编程API的相关发展情况。
让我们把时间调回到2003年,当时正值Shader Model 2时代。随着GPU计算能力的不断增长,一场GPU革命的时机也成熟了。Shader模型的不断发展使得GPU已经从由若干专用的固定功能单元(Fixed Function Unit)组成的专用并行处理器,进化为了以通用计算资源为主,固定功能单元为辅的架构,这一架构的出现奠定了GPGPU的发展基础。
SIGGRAPH 2003大会开始深入研究GPU通用计算
当时在圣迭戈举行的SIGGRAPH 2003大会上,许多业界泰斗级人物发表了关于利用GPU进行各种运算的设想和实验模型。SIGGRAPH会议还特地安排了时间进行GPGPU的研讨交流。在2004年9月份,剑桥大学的BionicFx课题组便宣布在NVIDIA的GeforceFX 5900产品中实现了专业的实时音频处理功能,并且准备进行商业化的运作,对其产品进行销售,给音乐创作者带来实惠。
在随后的一段时间,GPGPU进入了深入研究阶段,但是由于编程语言架构和编程环境都难以通用,该领域的发展能力受到广泛质疑。就在人们认为GPGPU的研究即将偃旗息鼓的时候,ATI在2006年8月惊人地宣布即将联手斯坦福大学在其Folding@Home项目中提供对ATI Radeon X1900的支持。在显卡加入Folding@Home项目后,科研进展速度被成倍提升,人们第一次感受到了GPU的运算威力。
毫无疑问,在GPGPU研究上,ATI跨出了极具意义的一步。同时将GPGPU的应用领域和普及程度推向高潮。随后NVIDIA凭借GeForce 8800GTX这款业界首个DirectX 10 GPU,在GPU通用计算方面实现了大步跨越,特别是CUDA概念的提出(该工具集的核心是一个C语言编译器),在新的通用计算领域后来居上。
GPU在很多领域的研究中已经开始发挥作用。支持DirectX 10显卡的首次出现是一个分水岭:过去只能处理像素或者只能处理顶点的专门功能处理单元被通用的统一着色器架构(Unified Shader Architecture)取代了,开发人员可以更轻松的对统一着色器进行控制。以AMD R600和NVIDIA G80为代表的DirectX10时代GPU能够提供了超越以往任何GPU的能力:它们拥有数百个功能单元,能够处理很多过去只能在CPU上运行的并行问题。
GPGPU将应用范围扩展到了图形之外,无论是科研教育、财务计算,还是在工业领域,GPGPU都得到了广泛的使用,关于它的科研成果和新应用模式也层出不穷。许许多多令人鼓舞的结果已经表明:将GPU用于解决数据并行计算问题可以明显提高系统的运行速度。本章我们会对目前炙手可热的GPU并行编程API做简单介绍,同时向用户推荐几种基于ATI GPU产品的通用计算项目,他们基于开放式的BOINC平台或者形成独立的开放式平台,我们可以通过下载软件来参与这些项目体验GPU通用计算带给业界的变革。
- 第1页:全文导读与内容简介
- 第2页:前言:通过GPU见证行业变革
- 第3页:第一章:GPU工作原理与并行计算
- 第4页:21世纪视觉需求与GPU变化
- 第5页:从山峰渲染了解GPU图形流水线
- 第6页:CPU与GPU的设计方向决定运算能力
- 第7页:GPU并行编程为何加速发展
- 第8页:GPU并行计算已成未来趋势
- 第9页:初识高性能并行计算
- 第10页:高性能并行计算发展历程
- 第11页:高性能并行计算单元分类
- 第12页:初识基于GPU系统的云计算
- 第13页:第二章:GPU结构与ATI产品发展
- 第14页:统一着色器架构释放GPU运算能力
- 第15页:传统GPU发展与着色器管线
- 第16页:传统SIMD结构流处理器指令细节
- 第17页:MIMD结构流处理器指令细节
- 第18页:R600时代对SIMD架构补充与优化
- 第19页:两种结构流处理器优劣对比
- 第20页:R300以来的芯片架构及其影响
- 第21页:ATI第一代统一渲染架构Xenos
- 第22页:统一渲染GPU R600临危受命
- 第23页:AMD对GPU架构的不断改进和优化
- 第24页:未来ATI图形芯片架构预测
- 第25页:第三章:GPU通用计算发展与细节
- 第26页:多核并行计算困惑与发展
- 第27页:基于AMD CPU+GPU异构计算平台
- 第28页:着色器模型变化历程与总结
- 第29页:Shader计算能力快速发展
- 第30页:揭秘GPU高性能计算关键
- 第31页:CPU与GPU的区别和发展方向
- 第32页:如何将GPU功能单元映射为通用单元
- 第33页:分支对GPU结构体系的挑战
- 第34页:GPU与CPU将如何演绎融合与吞并
- 第35页:第四章:GPU内部计算实现细节
- 第36页:GPU主要计算单元分布和职能
- 第37页:GPU内部通用计算代码运算过程
- 第38页:认识GPU浮点计算精度
- 第39页:整数运算能力与未来融合架构
- 第40页:GPU存储体系特点与变化
- 第41页:ATI GPU吞吐特性对比与分析
- 第42页:ATI GPU OPEN CL综合性能分析
- 第43页:先进混合架构之Larrabee展望
- 第44页:概念型融合架构之Fusion APU展望
- 第45页:GPU进化架构之Fermi分析
- 第46页:第五章:ATI GPU通用计算实例
- 第47页:ATI Stream技术发展与现状
- 第48页:OPEN CL接口技术与异构运算
- 第49页:Havok引擎与CPU+GPU异构运算
- 第50页:BOINC平台充沛的ATI GPU加速项目
- 第51页:最具影响力的Folding@home项目
- 第52页:GPU架构对于其他实例的适应性
- 第53页:全文总结与未来架构展望