最近原装16GB内存有些不够用了,入手了两条芝奇DDR4 3200MHz 16GB CL22内存,顺便测试一下内存带宽对笔记本混合输出时游戏表现的影响。原装的一对8GB内存是单面颗粒的,AIDA64内存读取约37GB/s;入手的芝奇双16GB内存是双面颗粒,单列(1 Rank, 16 Banks),AIDA64内存读取约45GB/s。更换内存前后内存延迟和三级缓存效能几乎没有差异。


游戏对比这里以“古墓丽影:暗影”为例。这个游戏自带基准测试,并且内置CPU/GPU帧生成时间记录功能,可以独立显示CPU游戏/CPU渲染/GPU的每秒帧数,便于分析性能瓶颈所在;同时使用HWiNFO记录各项传感器数据日志,绘制性能曲线图象。
一般来说,最终呈现到屏幕上的帧数是由那一时刻的帧生成时间决定的,这是瞬时的值,所以我们用OSD检测软件看到的FPS在一秒内可以刷新很多次。
单位时间内的帧数 f = 1 ÷ t,其中t代表Frametime, 即帧生成时间
某一时刻的帧生成时间 t = Max(CPU Frametime, GPU Frametime)
游戏的每一帧都必须先经过CPU计算,再经过CPU渲染,然后交给GPU渲染,最后输出画面。混合输出的机器在GPU渲染后要多“将数据拷贝至核显显存(即笔记本RAM)”这样一步。也就是这一步,导致内存承受不必要地写入,导致读取带宽受限和帧数下降。在这个“输出一帧”的流程中,最终的帧生成时间由耗时最长的步骤决定,而非所有步骤耗时之和。就同一个游戏来说,CPU Frametime由CPU性能和内存性能共同决定,GPU Frametime由显卡性能决定。就某一时刻而言,如果CPU Frametime< GPU Frametime,则显卡瓶颈;反之显卡没有瓶颈。
说回游戏,为了避免显卡瓶颈所以采用1080P最低画质进行对比测试。先看游戏自带的测试结果:GPU帧数(包括最小值、最大值、平均和95%)几乎没有改变,而CPU游戏和CPU渲染的帧数有明显的提升;两次测试的GPU受限均为0,即显卡全程没有吃满。所以换内存前后,测试过程的每一时刻的帧数均由CPU内存决定(具体到图中,是CPU游戏这一项)。


再看HWiNFO抓取的游戏基准测试时的内存带宽数据。2BG内存读12.8,写3.7;4BG内存读16.8,写5.3。如果改用独显直连,内存写入消耗的内存吞吐量就能给内存读取利用。有外接显示器的吧友可以试试验证一下独显输出游戏时DRAM Write Bandwidth这一项是否有明显减少。

由于内存性能更强,所以CPU帧生成时间缩短,所以GPU在帧生成流程中变得更加繁忙,即显卡占用率提高。导致每一帧的帧生成时间缩短,使得最终的FPS提升。




游戏对比这里以“古墓丽影:暗影”为例。这个游戏自带基准测试,并且内置CPU/GPU帧生成时间记录功能,可以独立显示CPU游戏/CPU渲染/GPU的每秒帧数,便于分析性能瓶颈所在;同时使用HWiNFO记录各项传感器数据日志,绘制性能曲线图象。
一般来说,最终呈现到屏幕上的帧数是由那一时刻的帧生成时间决定的,这是瞬时的值,所以我们用OSD检测软件看到的FPS在一秒内可以刷新很多次。
单位时间内的帧数 f = 1 ÷ t,其中t代表Frametime, 即帧生成时间
某一时刻的帧生成时间 t = Max(CPU Frametime, GPU Frametime)
游戏的每一帧都必须先经过CPU计算,再经过CPU渲染,然后交给GPU渲染,最后输出画面。混合输出的机器在GPU渲染后要多“将数据拷贝至核显显存(即笔记本RAM)”这样一步。也就是这一步,导致内存承受不必要地写入,导致读取带宽受限和帧数下降。在这个“输出一帧”的流程中,最终的帧生成时间由耗时最长的步骤决定,而非所有步骤耗时之和。就同一个游戏来说,CPU Frametime由CPU性能和内存性能共同决定,GPU Frametime由显卡性能决定。就某一时刻而言,如果CPU Frametime< GPU Frametime,则显卡瓶颈;反之显卡没有瓶颈。
说回游戏,为了避免显卡瓶颈所以采用1080P最低画质进行对比测试。先看游戏自带的测试结果:GPU帧数(包括最小值、最大值、平均和95%)几乎没有改变,而CPU游戏和CPU渲染的帧数有明显的提升;两次测试的GPU受限均为0,即显卡全程没有吃满。所以换内存前后,测试过程的每一时刻的帧数均由CPU内存决定(具体到图中,是CPU游戏这一项)。


再看HWiNFO抓取的游戏基准测试时的内存带宽数据。2BG内存读12.8,写3.7;4BG内存读16.8,写5.3。如果改用独显直连,内存写入消耗的内存吞吐量就能给内存读取利用。有外接显示器的吧友可以试试验证一下独显输出游戏时DRAM Write Bandwidth这一项是否有明显减少。

由于内存性能更强,所以CPU帧生成时间缩短,所以GPU在帧生成流程中变得更加繁忙,即显卡占用率提高。导致每一帧的帧生成时间缩短,使得最终的FPS提升。

