在加载游戏和观看Flash视频时出现大量的软页面错误


8

在玩动态加载资产的游戏时,我的计算机遇到一个奇怪的问题。也许我在错误的地方寻找,但似乎找不到任何遇到类似问题的人。

如果不清楚,我将举一些例子。在Source游戏中,映射器可以通过告诉引擎何时何地隐藏对象来优化事物,以便在您拐弯或打开一扇门之前不会将它们添加到场景中。当加载这些对象时,我的计算机感到窒息。以Portal 2为例。一旦某个区域的加载屏幕消失,我就被扔到了关卡中。立即,我用冻结的屏幕问候,并断断续续/重复播放音频大约一秒钟。一旦通过,每个人都将以全帧速率继续进行所有笨拙的操作。然后我走到一扇门,触发它打开。在另一侧装入房间时,又会出现静止和音频断断续续的情况。如果您要看别人玩游戏,那将永远不会发生。无论如何,我可以忍受。它' 令人讨厌,但并没有真正干扰游戏玩法。现在,让我们玩一个随着您的进步不断载入的游戏,《索尼克时代》。静止不动,我得到了柔滑的帧率。但是,一旦他开始向前奔跑,加载了更多的关卡,我便降至<1 FPS,使其完全无法播放。如今,越来越多的游戏正在这样做,这就是为什么我终于开始认真解决问题的原因。

我非常怀疑这些暂停是否已编入游戏本身。加载屏幕旨在在加载数据时平稳运行,而在其他任何计算机上也可以。再次以Sonic为例,在加载完成之前,即使加载屏幕上的运动部件也非常不稳定。

我在大约四年前就​​已经建造了这台计算机,并且自从我开始将其用于3D游戏时就遇到了这个问题。从那以后,由于它们快要死了,我已经更换了主板,硬盘和图形卡。(案例迷们有一天停止了工作,而硬盘则是另一回事。)

在Intel 2.5Ghz四核,4GB RAM和nVidia GTX 460上,在Aero上运行Win7 Ultimate 64位。

谢谢大家!

更新:很明显,我收到了大量页面错误。Sonic Generations的平均速度为每秒170,000,Portal 2的加载速度平均为每秒 70,000,而在Livestream.com观看视频流时则为稳定的30,000。根据Resource Monitor的说法,这些甚至不是硬故障。我很好奇这些数字与其他人相比如何。

附录:可能还会添加另一个示例和潜在的症状。首先,一个叫做Trackmania的赛车游戏。在单人比赛中,没有明显的页面错误(除了其他程序可能产生的错误),并且游戏运行流畅。但是,当在网上玩游戏时,我会在频繁但又随机的间隔内出现大量打((和页面错误尖峰)。我将继续比赛,游戏将暂停一秒钟或更长时间,然后将我的车辆颠倒过来,紧挨着墙壁,弄皱了。隐藏其他玩家的车也不能解决问题。

至于潜在的症状...我避免提及它,因为我担心这可能是一个无关紧要的问题,并且不想将疑难解答者发送到错误的路径。此时,为什么不提呢?基本上,我的计算机在观看视频一段时间后会完全冻结。循环播放音频,整个屏幕(包括光标)无响应,数字锁定不会切换,只能硬关机。它可以在数分钟或数小时内触发。通常,视口越大,发生的越早。只要启用硬件加速,全屏Youtube视频都是安全的。

启用硬件加速的全屏Youtube似乎不会产生页面错误。但是,在打开窗口时会显示。Livestream总是会产生页面错误,无论是否全屏显示,都不会加速。尽管游戏本身会产生大量页面错误,但游戏似乎从未像这样冻结我的计算机。

(将标题从“在后台加载游戏资源时图形变得不稳定”更改为“在加载游戏和观看Flash视频时获得大量的软页面错误。)


1
你有足够的内存吗?
soandos 2012年

我通常不会超过3GB的使用量,所以我应该有足够的空间。我已订购了另一组应在不久后到达的内存。我将尝试将其换出以查看是否有帮助。如果没有,那么我无论如何都将发挥最大的能力。双赢。
YotaXP 2012年

您可以在后台运行性能监视器,看看是否有很多页面错误?
soandos 2012年

就页面错误而言,我还没有足够的经验来了解什么是“正常”,所以这是屏幕截图。 i.imgur.com/cbGFP.png 我认为很清楚我在何时开始了Sonic Generations。
YotaXP

那就是你的问题。(PS,我
从没

Answers:


3

在查看了这里的信息并发现问题在于他的页面有很多错误之后,我将在这里添加一些我要研究的可能性。

如果这些是软页面错误,而您得到的很多,我的猜测是导致这些错误的内存访问是对纹理资源的请求。显卡具有一定数量的板载内存以加快纹理获取请求,但是由于某些原因,可能是驱动程序未将足够的纹理缓存在板载内存中,或者未缓存任何它。我不太熟悉nVidia的图形驱动程序设置(过去四年来我一直在运行ATI卡),所以我不确定是否应该归咎于驱动程序设置,超频设置甚至BIOS设置一个状态。但是,我将对此进行调查,看是否可能是问题的根源。

另外,作为注释,我像您一样记录了Portal 2的页面错误/秒,却几乎没有发现。当然,我的系统在Crossfire中使用2台Radeon HD 6970,但是,您的图形卡当然应该能够处理Portal 2,而不会出现类似的页面错误。如果一切正常,我希望您会看到类似的图像: 我的计算机上Portal 2的页面错误/秒

如果我们想排除图形卡是罪魁祸首(或计算机正在使用的图形硬件),我建议禁用Aero并查看在桌面闲置时会发生什么。如果页面错误的数量减少,那么我认为与图形有关的直觉可能是正确的。如果没有,那么它可能在其他地方。


只需切换SATA电缆和端口即可。没变。(当BIOS认为它可以从我的外部设备启动时,让我有些害怕。)不过,还是谢谢您的建议!
YotaXP 2012年

@ sidran32,他正在获取pagefaults,而不应该得到。问题是为什么(即,即使磁盘I / O速度非常慢,也完全没有关系,因为应该没有/对磁盘的查找很少)
soandos 2012年

@soandos我知道。我在发帖后才知道这一点。
本·理查兹

@ sidran32,考虑到即使在游戏未运行时,他也会出现相当多的页面错误(最小为471 / s),因此我认为它与图形无关。
soandos 2012年

1
好主意!下面是结果。我未能在该屏幕截图中捕获它,但是即使关闭了Aero,菜单中的每个步骤(单击“开始”,“打开计算机属性”,单击“高级系统设置”)也将故障增加到5-15k。当然,GPU应该与此无关。
YotaXP

0

进程发出的某些系统调用可能会产生软页面错误。可以使用此vmware文章中所述的pfmon工具找到有问题的确切系统调用:

Windows应用程序生成的页面错误过多可能会影响虚拟机的性能

pfmon仍可从Windows 2000 Resource Kit Tools单独下载。它是一个32位程序,但可能仍对您有用。

[编辑]

我已经在自己的计算机上测试了pfmon,并为大量的软页面错误所震惊。几秒钟的Firefox或Internet Explorer会生成数以万计的此类故障,但我确实没有发现任何放缓。

我的结论是,计算软页面错误是没有意义的。显然Windows生成它们是理所当然的事情,而它们只是它的工作方式。Windows需要在内存中搜索页面的事实可能是Linux为什么比Windows更快的另一个解释。

因此,仅将其归因于Windows中效率低下的内存管理,而只担心硬页错误(您发布的列表中的错误数量很少)。进程的许多软页面错误显然仅表明所讨论的进程对内存进行了大量处理。

如果您仍然认为计算机上存在内存问题,请参阅文章“ 通过监视来检测和解决性能问题”,该文章使用 Windows Server 2003资源工具包工具中的工具

当然,您也可以运行硬件测试,例如Memtest86 +,但我并不完全相信您的问题确实与内存有关。


有趣。我在Portal 2上进行了测试。它在执行pfmon的一秒钟内停止,并杀死了portal2.exe。 这是提示这是日志文件。老实说,我不知道从该信息中得出什么,但也许您会呢?在这种情况下,我在Portal2加载地图时执行了pfmon。
YotaXP

我在上面的编辑中添加了对该问题的看法。顺便说一句,我希望您还没有安装任何类型的“内存优化器”产品。
harrymc

除非它继续运行,否则我的PC上应该没有这种东西。您是否可以将您的错误与我在问题中发布的错误进行比较?我已经运行了多个晚上的Memtest86 +,甚至尝试过更换内存。如果您认为我的问题与这些页面错误无关,那么我还应该寻找什么?您是否有机会阅读其他一些评论?我已经有一段时间了。= p对于编写有问题的应用程序的人来说,那些诊断工具似乎更有用。我需要知道的是为什么它们只会对我造成问题。
YotaXP

我的猜测是建造计算机时发生了一些错误。可能是主板的内存错误,内存倍增器错误或其他原因。硬件看起来不能处理大量的内存应用程序,并且故障似乎不是Windows。您也许应该尝试用于超频的工具。
harrymc

-1

我可以建议稍微增加RAM和CPU上的电压吗?使用劣质主板或普通的差劲RAM时,我也遇到过类似的问题。稍微提高电压可使一切恢复正常-并且该系统在数年后仍能正常工作。


这是一个有趣的建议。我没有进行此类调整的经验,因此我将在早晨进行一些研究。您在想多少增加?
YotaXP

看一下我的电压设置,当前所有设置都设置为“自动”。有没有办法知道BIOS将它们设置为什么,以便我可以增加它?我还注意到有关内存电压的一些奇怪信息。我的内存建议为1.8v,但是BIOS中的最低设置为1.92v。可能有问题吗?
YotaXP

您将需要找出RAM模块以及CPU的确切型号。了解了确切的型号后,您可以在线查找规格表,并查看这些型号的默认电压。您可以使用CPU-Z(cpuid.com/softwares/cpu-z.html)确定确切的型号,甚至可以查看当前的工作电压。首先弄乱RAM,然后再弄乱CPU。我建议增加0.1v以开始,彻底测试,如果问题仍然存在,则继续增加至0.3v(请勿超过)。这应该足以排除RAM是问题。
约书亚

我建造了这台机器,所以我知道里面有什么。 内存CPU主板。CPU-z显示我的CPU接近其最大电压。如果您要查找任何内容,这是CPU-z 的报告。我将通过设置尽可能低的电压来开始搞乱我的RAM,该电压已经比建议的电压高0.12v。
YotaXP

好吧,看来RAM不是问题所在。让我们从另一个角度进行研究:您是否有可能安装了防病毒软件?是否安装了多个防病毒软件或反恶意软件?
约书亚
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.