![某些游戏 FPS 较低,但硬件未得到充分利用](https://linux22.com/image/1343014/%E6%9F%90%E4%BA%9B%E6%B8%B8%E6%88%8F%20FPS%20%E8%BE%83%E4%BD%8E%EF%BC%8C%E4%BD%86%E7%A1%AC%E4%BB%B6%E6%9C%AA%E5%BE%97%E5%88%B0%E5%85%85%E5%88%86%E5%88%A9%E7%94%A8.png)
我刚刚在游戏/模拟游戏“Train Simulator 2013”中做了一个有趣的小实验。在全设置下,我的 FPS 通常不错(大约 30)。
我做的是真的真的长时间训练,以便模拟需要进行的计算巨大的(模拟非常逼真,它考虑到了所有因素,如速度/加速度、重力、舒适度、可能的车轮打滑等等,其中大部分因素每节车厢单独)结果只有 14FPS,因为已报告但感觉更像是 8FPS 左右。
我有一个带 LCD 的 Logitech G15 键盘,它允许我监控 CPU/RAM 和视频卡负载。
奇怪的是,所有 CPU 核心都在忙,但总负载始终只有 60% 左右。显卡负载只有 30%(可能要注意的是,内存已满,但这对于该游戏来说并不罕见)。RAM 空间充足,操作不多,因为它没有增加或减少太多。
我只是觉得如果游戏能更多地利用我的硬件能力,它就会运行得更流畅。为什么它没有这样做呢?我在另一款游戏《上古卷轴:晨风》中也遇到了同样的问题,当时我使用了 100 多个模组(全部使用脚本)和一些高分辨率纹理模组,以及一个全面的图形改进程序。引擎非常老旧(2003 年),所以我认为这可能是原因(未针对多线程进行优化)。
我想到过一些可能的原因,例如:
- 操作系统不允许游戏使用所有资源。
- 它没有适当地使用多线程。
为了消除前者,我尝试了一个 CPU 压力工具,当我让它运行时,它的 CPU 消耗量达到 100%,因此操作系统不是问题。不过我给它的线程赋予了“更高”的优先级。
我的实际问题
在这两款游戏中,我做了引擎无法实现或支持的事情。这些游戏的帧率受限是否是因为它们自己的引擎无法应对?真正的原因是什么?更重要的是,我能帮助它吗?无论如何,我的硬件真的有问题吗?它们都是相当新的,只有几个月,我(几乎)从未遇到任何其他问题。现代和要求更高的游戏运行得非常好。
眼镜
CPU: AMD Phenom II 965 X4 @ 3.4gHz
RAM: 8GB of DDR3 RAM
Video: MSI GTX560 (nVidia chip) with 1GB of GDDR5 memory
OS: Windows 7 Ultimate 64 bit
沒有任何超頻。
答案1
我帮您仔细研究了一下,火车模拟器似乎最多只使用 2 个 CPU 核心。如果您的 CPU 显示 60% 的负载,那么很可能是其中的 47-50% 仅用于火车模拟器,其余 10% 用于其他操作。
这对于大多数游戏来说都很典型,很少有游戏会使用 4 个核心。大多数操作都是串行的,因此很难找到利用额外核心的方法。
你有一个很好的处理器,你唯一的选择就是如果它是黑色版本,就对其进行超频。否则,不要让你的火车那么大 ;)
您的硬件很好,您会知道是否存在任何其他严重问题 - 它们会在任何压力测试下迅速出现,并且 90% 的时间它们会导致蓝屏死机。
至于 FPS 的显示 - 15fps 通常看起来很流畅,但不连续(它抖动)。它可能只是报告不正确。