a卡是什么?a卡和n卡的区别

a卡是什么?a卡和n卡的区别


2024年5月1日发(作者:酷派b770s手机参数)

a卡是什么?a卡和n卡的区别

N卡和A卡两家架构问题要深究就得写一本书了。在DX9以前的时代,两家的架构主要

由像素单元、顶点单元、纹理单元、光栅单元组成,一个渲染流程的所有单元绑在一起组成

一条渲染管线,管线越多,性能就越强。而游戏中的指令以4D指令居多(像素有RGBA,顶

点有XYZW),这些单元就被设计成了一次能处理4D指令的处理器,对于当时的游戏环境来

说这种架构效率很高。但到了DX9后期甚至DX10时代,游戏中的1D、2D、3D、4D指令开始

频繁混合出现,像素与顶点的渲染量比例也有了改变,原先的架构就变得效率低下了,比如

一个处理单元一次能处理4D运算,当碰到1D运算时就只用到4/1的资源,剩下3/4的资源

就闲置掉了,相当于效率降低了4倍。而有些游戏的像素渲染量明显多于顶点,那么这些绑

在一起数量比例固定的单元就效率低下了,比如像素吃力的时候,顶点可能比较空闲,非常

浪费资源。为了解决这个问题,NV和ATI都对架构进行了改进,但都治标不治本。这时候

重新设计架构成为了必然,所以,从DX10时代起,两家的架构就起了翻天复地的变化。

当两家DX10产品面市后,人们惊奇的发现,竟然是两种不同的架构。

N卡的架构思路很简单,用强大的前端处理器把所有指令拆分成一个个1D指令,而下

面所有处理单元都变成了1D单元(流处理器),这些流处理器都能当做像素和顶点单元来使

用,每个单元都能独立收发指令,这样不管碰到什么类型的指令都能“一拥而上”,效率几

乎达到100%的理想程度,是标准的线程级并行架构,也是追求高效率的理想架构。

N卡的架构看上去很完美,但缺点也很明显,由于每个流处理器都对应独立的指令发射

端和控制单元这类东西,体积庞大,控制单元在晶体管的消耗上占了相当大的比例,在相同

晶体管数量的情况下,N卡能做的运算单元就相对少很多。在流处理器数量相对少的情况下,

处理4D指令时又会显得性能不足(因为要耗费四个流处理器去处理一个指令),所以N卡的

流处理器频率会比核心频率高出一倍以上,以弥补数量上的缺陷。由以上缺点又造成了另一

个缺点,就是功耗巨大。

总结,N卡架构执行效率极高,灵活性强,在实际应用中容易发挥应有性能。但功耗较

难控制,较少的处理单元也限制了其理论运算能力。

A卡方面,虽然也是采用了通用的1D流处理器做为执行单元,但采用的是指令级并行

架构,每5个流处理器为一组,每组一次最大可接收一条5D指令(而N卡接收的是1D指令),

在前端上就把所有指令打包成一个个5D指令发下去(而N卡是拆分成一个个1D发下去),所

以A卡的架构又被称为5D架构。这样的设计可以实现高指令吞吐,能在较少的控制单元下

做出庞大的运算单元,晶体管消耗也较少,所以A卡的流处理器一般都是N卡的4-5倍,理

论运算能力也远强于N卡,功耗也相对要低一些,同性能的芯片面积也都比较小。

但是,A卡架构的缺点也很明显,虽然理论上总运算性能强大,但一旦碰到混合指令或

条件指令的时候,前端就很难实现完整的5D打包,往往变成3D、2D、1D的发下去了,造成

每组流处理器只有3、2甚至1个在工作,几乎一半的单元浪费掉了。软件要想针对这种架

构优化,必需减少混合、条件指令的出现(需要耗费程序员的大量精力),或杜绝(这是不可

能的)。所以在软件优化度上A卡是处于劣势的,常常无法发挥应有性能。

总结,A卡架构优势在于理论运算能力,但执行效率不高,对于复杂多变的任务种类适

应性不强,如果没有软件上的支持,常常无法发挥应有性能。所以A卡除了需要游戏厂商的

支持外,自己也要常常发布针对某款游戏优化的驱动补丁(造成A卡发布半年后,还可通过

驱动提升性能的现象)。


发布者:admin,转转请注明出处:http://www.yc00.com/num/1714579065a2473823.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信