GF100的缓存架构让各流水线之间可以高效地通信,减少了显存读写操作
统一的高速缓存还能够确保存储器按照程序的顺序执行存取指令。当读、写路径分离(例如一个只读纹理路径以及一个只写ROP路径)时,可能会出现先写后读的危险。一个统一的读/写路径能够确保程序的正确运行,同时也是让NVIDIA GPU能够支持通用C/C++程序的重要因素。
与只读的GT200二级缓存相比,GF100的二级高速缓存既能读又能写,
而且是完全一致的。NVIDIA采用了一种优先算法来清除二级缓存中的数据,这种算法包含了各种检查,可帮助确保所需的数据能够驻留在高速缓存当中。
★ GF100共享式二级缓存堪比酷睿2:
可以看出,ATI的一二级缓存都是完全分散的,为了协调一二级缓存之间的数据交换,ATI特意设计了一个可全局共享的64KB数据缓存。
而GF100的一级缓存可以根据需求动态的为共享缓存或者一级缓存分配较大的容量,从而加速数据处理。二级缓存更是大容量一体式设计,当线程组在一级缓存中找不到数据时,可以直接从“海量”的二级缓存中索取,缩短了数据请求与定址时间,消除了瓶颈。
至于独享式缓存与共享式缓存的效率与性能,无需多言,大家可参照CPU的发展即可略知一二。 ★ CPU发展趋势:不断的整合功能模块
通过前面详细的介绍我们可以发现,CPU的发展趋势就是不断去整合更多的功能和模块,从协处理器、到缓存、再到内存控制器甚至整个北桥。
目前AMD和Intel的所有主流CPU都已经整合了内存控制器,Intel最新的Lynnfield(Core i7 8XX和i5 7XX)已经整合了包括PCIE控制器在内的整个北桥,而Clarkdale(Core i5 6XX和i3 5XX)更是将GPU也整合了进去。
36
★ GPU发展趋势:不断的蚕食CPU功能
至于GPU,从某种意义上来说,它本身就是一颗协处理器,主要用于图像、视频、3D加速。之所以这么多年来没有被CPU所整合,是因为GPU实在太复杂了,以现有的制造工艺限制,CPU不可能去整合一颗比自身规模还要大很多的GPU,它顶多只能整合一颗主流中低端的GPU,而这样的产品只能定位入门级,无法满足游戏玩家和高性能计算的需要。
GPU从诞生至今一步步走来,就是在不断蚕食着原本属于CPU的功能,或者说是帮助CPU减负、去处理哪些CPU并不擅长的任务。比如最开始的T&L(坐标转换与光源)、VCD\\DVD\\HD\\BD视频解码、物理加速、几何着色。而今后和未来,GPU将夺走一项CPU最重要的功能——并行计算、高精度浮点运算。
★ GPU前途似锦:浮点运算的未来
我们知道,CPU第一个整合的就是专门用来加速浮点运算的协处理器,此后历代SSE指令集也都是为了加强CPU的SIMD(单指令多数据流)浮点运算性能。而GPU打从一开始就被设计成为了SIMD架构(至今Cypress也还是这种架构),拥有恐怖浮点运算能力的处理器。当今GPU的浮点运算能力更是达到多核CPU的几十倍甚至上百倍!
CPU和GPU的浮点运算能力
CPU永远都赶不上GPU的发展速度,因此最适合进行浮点运算的显然是GPU,CPU继续扩充核心数目已经变得毫无意义,因此整个业界都在想方设法的发掘GPU的潜能,将所有的并行计算任务都转移到GPU上面来。即便是Intel也看到了GPU广阔的前景,因此着手研发GPU。
此前由于API和软件的限制,GPU在并行计算方面的应用举步维艰、发展缓慢,NVIDIA孤身推广CUDA架构虽然小有成就但孤掌难鸣。好在OpenCL和DirectCompute两大API的推出让GPU并行计算的前途豁然开朗,此时ATI和NVIDIA又重新站在了同一起跑线上,那么很显然谁的架构更适合并行计算,那么谁就能获得更强的性能和更大范围的应用,通过本文的分析可以看出,ATI的架构依然是专注于传统的图形渲染,
37
并不适合并行计算;而NVIDIA的架构则完全针对通用计算API和指令集优化设计,确保能发挥出接近理论值最大效能,提供最强的浮点运算性能!
★ CPU面临拐点:强化整数性能,浮点运算交给GPU
AMD同时拥有CPU和GPU,而且AMD在技术方面往往能够引领业界,因此其未来发展规划非常值得大家思考。根据AMD最新的产品路线图来看,其下一代的高端CPU核心Bulldozer(推土机),它最大的亮点就是每一颗核心拥有双倍的整数运算单元,整数和浮点为非对称设计:
AMD下一代“推土机”架构,大幅强化整数运算单元
在一个推土模块里面有两个独立的整数核心,每一个都拥有自己的指令、数据缓存,也就是scheduling/reordering逻辑单元。而且这两个整数单元的中的任何一个的吞吐能力都要强于Phenom II上现有的整数处理单元。Intel的Core构架无论整数或者浮点,都采用了统一的scheduler(调度)派发指令。而AMD的构架使用独立的整数和浮点scheduler。
据AMD透露,目前存在于服务器上的80%的操作都是纯粹的整数操作,因此AMD新一代CPU大幅加强了整数运算单元而无视浮点运算单元。而且,随着CPU和GPU异构计算应用越来越多,GPU将会越来越多的负担起浮点运算的操作,预计未来3-5年的时间内,所有浮点运算都将会交给最擅长做浮点运算的GPU,这也就是推土机加强整数运算的真正目的。
当然,AMD和Intel都会推出CPU整合GPU的产品,不管是胶水还是原生的解决方案,其目的并不是为了消灭显卡和GPU,而是通过内置的GPU为CPU提供强大的浮点运算能力。但由于制造工艺所限,被CPU所整合的GPU不是集成卡就是中低端,只能满足基本需求。所以想要更强大的游戏性能和并行计算性能的话,专为浮点运算而设计的新一代架构的GPU产品,才是最明智的选择。
所以说,CPU和GPU,谁也不可能取代谁,双方是互补的关系,只有CPU和GPU协同运算,各自去处理最擅长的任务,才能发挥出计算机最强的效能。CPU会整合GPU的,但仅限中低端产品;GPU会取代CPU进行浮点运算的,但它仍然需要CPU来运行操作系统并控制整个计算机。只有当制造工艺发达到一定程度时
38
才有可能将CPU和GPU完美融合在一起,到时候是CPU整合GPU还是GPU整合CPU都很难说,但谁被谁整合已经不重要了。■ (本文来源:PCPOP ) 文章重点不突出,不值得看。
39
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库从CPU架构和技术的演变看GPU未来发展(8)在线全文阅读。
相关推荐: