● ATI Stream技术发展与现状
ATI Stream技术是一套完整的硬件和软件解决方案,这个概念最初在2005年依据R580核心的流处理加速卡提出。随后ATI被AMD收购,异构计算概念被越来越多的提及,Stream技术被定义为能够使AMD图形处理器(GPU)与系统的CPU协同工作,加速处理图形和视频以及其他大量应用。该技术使更加平衡的平台能够以前所未有的速度运行要求苛刻的计算任务,为最终用户提供更出色的应用体验。
两家GPU厂商提出的通用计算解决方案
无论是NVIDIA还是AMD,都正在与领先的第三方行业合作伙伴和全球范围的学术机构一起,建立完整的GPU计算生态系统。AMD系统通过Stream技术能够提供实现AMD低成本应用加速所必需的性能、应用、软件和工具。我们也不得不意识到两家公司在计算机专业领域的影响力是不可估量的,因为它们能通过GPU提供更好的并行计算加速比。
Brook+是AMD出的显卡编程语言,它和NVIDIA提出的CUDA C是对应的。只不过CUDA的基础是C和C++,而brook+是汇编。brook+环境下写程序不是那么容易的,毕竟它属于低级语言,但是那是程序员和推广的问题,一旦写出来了效率通常都很高的。所以说汇编是底层语言,效率很高但是兼容性和简易型较差。
ATI Stream技术定义程序可以被分为两种,也就是图中的库,以及第三方代码。库可以直接转化成brook+,第三方代码则需要通过stream编译一下。编译好的东西可以直接丢给CPU或者GPU算。其中绿色的是计算抽象层规则。这张图片说明ATI GPU可以通过计算抽象层规则直接运行程序,也可以通过OCL来支持应用程序,也就是说OCL只是其中一种选择。实际上AMD倒向OCL,应该也有打算让自己以第一的身份接近OCL制定者并影响对方甚至施压的意思。CUDA和Stream都是编译环境,而OpenCL跟DirectX都是API。
从特性方面分析,Stream是基于一种传统的编程方式,Stream主要包括CAL与Brook+。CAL是一套指令集,可以用汇编语言的方式来开发软件,虽然我们汇编方式开发软件的话,对搞计算的人来说不大现实,让他们用汇编语言来说的话可能确实是一种折磨,但是这种方式更为接近硬件,合理优化可以大幅度提升运算效率。Brook+是斯坦福大学开发的,它是类似于C语言的东西,是把底层GPGPU的计算方式类似于C的这种语言,这里要说明的是Brook+不是C语言而是类C语言,语法和C语言比较类似。
从R600到R800时代,的每个流处理单元都包含5路超标量体系结构着色处理器,单时钟周期可以最多处理5个标量乘加指令,其中一路着色处理器负责处理超越指令(比如Sin、Cos、Log、Exp等等)。我们看下图就可以明白,5个黄色的长方形就是5路着色处理器,其中较大的一个就是可以处理超越指令的着色处理器。流处理单元可以达成32-bit浮点精度,支持整数和逐位操作,图中紫色的长方形“分支执行单元”则负责进行流控制和条件运算。
- 第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页:全文总结与未来架构展望