GTX 980/970无论从哪方面看都堪称完美,尤其是超高的能效,证明了第二代麦克斯韦架构是个优秀的设计,但是近一段时间以来,不断有玩家反映,GTX 970似乎只能利用最多3.5GB显存,剩下的500MB都给浪费了。
经过深入的专业研究发现,GTX 970其实完全可以用满4GB显存,但到了最后的500MB,性能会出现大幅度下滑。
似乎这4GB显存分成了两部分,大家都在尽量避免使用最后的500MB。
GTX 980/970使用的都是GM204核心,显存规格完全一致,都是256-bit位宽,4GB GDDR5容量,7GHz频率,交给四组ROP/显存管理器去负责,理论上不应该有什么不同。
唯一的不同,就是GTX 970屏蔽了三组SMM阵列,但是这会和显存有关吗?以前的显卡也都是这么做的,并没有观察到类似的现象啊?
今天,NVIDIA就此问题发出了一份官方声明,初步揭开了那层面纱,也基本证实了我们的猜测:
GTX 970配备了4GB独立显存,但是它的SM配置与GTX 980不同,交叉开关(crossbar)资源也更少。为了优化此结构下的显存管理,我们将其分成了3.5GB、0.5GB两个部分。GPU会优先访问3.5GB部分。
如果游戏需要的显存少于3.5GB,就只会访问第一部分,所以有些第三方工具显示显存占用量的时候就只会给出3.5GB,而在GTX 980上会显示更多。
如果游戏需要的显存超过3.5GB,我们就会同时使用两部分。
我们知道大家担心这0.5GB显存的性能,而最好的测试就是看看实际游戏性能。GTX 980、970首先在显存使用量不到3.5GB时进行对比,然后调高设置,显存使用量超过3.5GB,再次对比。
这是部分实测数据:
显存使用量超过3.5GB之后,GTX 980、970都会出现性能下降,其中后者会多损失1-3个百分点,差距并不大。
NVIDIA并没有过多地解释技术细节,但已经基本清楚了:GM204核心采用了不同于以往的设计,显存管理器、交叉开关的结构更简单,与SM阵列之间的关系更紧密,结果就是降低了设计复杂度、缩小了核心面积、节约了成本、提高了能效,但也给显存的分配与管理带来了新的难题,屏蔽掉部分SM阵列后会让部分对应的显存“无所适从”。
NVIDIA应该是采用一种(扩展寻址?)解决了这个问题,但效果并不完美,会导致监控软件识别错误,性能也有一定的影响,好在不是很大,GTX 970用户相信也很少会在极高画质下玩游戏。
问题是,如果继续精简GM204核心规模,特别是将位宽砍到192-bit,又会出现什么状况呢?难道这就是为什么迟迟看不到GTX 960 Ti的原因?