外接显卡性能损耗研究:核心空载率与损耗值的关系
外接显卡性能损耗研究:核心空载率与损耗值的关系
外接显卡的性能损耗问题一直困扰着许多用户。本文作者通过详细的实验设计和数据收集,探讨了外接显卡性能损耗的具体原因,并得出了令人信服的结论。
自从外接显卡后,性能的损耗率·一直是个谜。有的人说损耗率和显卡本身的性能有关,性能越高的卡损耗越大;也还有人说,损耗和帧数有关,帧数越高损耗越大,众说风云,但是究竟损耗在哪里?比例怎么计算,谁也没有一个准确的方案,所以我决定自己动手,把其中的具体相关关系理出来,供大家参考。
平台介绍:DELL Latitude 7490
CPU:i7-8650U
RAM:8G2 2400MHZ
外接方案:雷电3满血版 雷电3芯片:JHL6340
外接显卡:MSI 万图师 RTX2080
屏幕:外接屏幕(直连外接显卡DP线) 4K 60HZ
我们先把手头可以拿来跑分的工具先跑一遍:
然后我们得到以下表格:
虽然你做这个初衷挺好的,但是雷电三外接损耗相比其他外接方案都可以无视了。。
通过上面的表格我们发现:跑分似乎飘忽不定,有的很低,有的又很接近内置显卡的分数值,那我们把网上内置显卡的跑分放上来,作为对比。因为手上没有合适的台式机作为参考,且网上找不到MSI万图师RTX2080的跑分图,所以3Dmark的分数我直接引用了ZOL上测得的同样是MSI的RTX2080,但价格更贵的暗黑龙爵系列作为标准,而鲁大师和3DMark11,我也多方查找了资料,最后从别人的评测里取了一个可信值。
试试不同显卡用M.2接口在不同PCIE通道下还有点价值,有其他接口也可以试试
我们把以上标准分数列入表格,计算损耗值,得出以下表格:
通过以上表格,我们可以发现:外接损耗和帧数在同一项目中是正相关的,但是一旦切换项目,就无法相关了,只能证明帧数只是影响损耗的原因之一或者间接原因,还不是根本原因。
这个时候我突然想到:显卡的性能损耗就是显卡的计算力损耗,也就是说:问题可能出在频率或者负载上,正好手头有HWINFO64,可以监控频率和负载状况。
于是,我又把所有跑分重新跑了一遍!!!同时利用外接副屏监控频率和负载率。
然后我发现:所有跑分,核心频率都维持在1900MHZ左右,显存频率维持在7000MHZ,变化小的可以忽略不计,问题出在:核心负载率上!
把所有跑分的核心负载率引入表格,得出以下表格:
这个时候,我们发现:显卡核心负载率在所有跑分中都是不一样的,然后我计算出了显卡核心空载率(空载率=100%-负载率),然后惊人的事情出现了:空载率似乎和所有的损耗值都呈正相关函数关系!
我马上把这个函数关系做成了图形,请看:
然后我可以下结论了:两者关系为:显卡损耗值≈核心空载率2.3
最后我总结一下:
(1)外接显卡的损耗为计算力损耗,损耗的具体形式以显卡核心空载体现出来;
(2)因为PCI-E 3.0 X4的带宽十分拥堵(好比16车道改为了4车道),容易造成数据堵车,当数据交换率越高,堵车越严重,显卡核心喂不饱,空载率也越高,所以性能损失也越大;
(3)在同样的测试项目中(比如同一类型测试或者同一游戏),帧数越高,这个时候CPU与显卡数据交换越频繁,通道越堵,损耗越大。所以损耗和帧数正相关;
(4)在同样的测试环境中,显卡性能越好,跑出的帧数越高,损耗也越大,所以损耗和显卡性能(等级)正相关。
(5)显卡等级越高,配分辨率越高的屏幕,减低一定的帧数,可以相对的减少CPU与显卡的数据交换量,从而从一定程度上减轻损耗。
(6)如何随时的监控自己游戏的损耗呢?查看显卡核心的利用率,然后按公式去计算。我结论中的“显卡损耗值≈核心空载率*2.3”,暂时只针对我的配置,其他环境:比如外接方式为M.2,显卡为其他类型,2.3这个数字可能会变化,但是我相信整个计算方法是一致的。
另外我想说的是:外接显卡的损耗,和CPU拉不动显卡本质上是一样的,都是CPU与显卡数据交换不足,喂不饱显卡造成的(CPU拉不动的情况下,显卡也会出现空载跑不满的情况)。