【发布时间】:2014-12-20 08:02:44
【问题描述】:
我使用 HTML5 和 Javascript 编写了一个游戏。该游戏可以在 www.be-sw.com/game/2 上玩。我认为在这里发布代码不会有帮助,因为它很长。它使用两个循环;一个游戏逻辑循环和一个请求动画帧循环,我不认为有什么特别复杂的逻辑。
直到最近,它在所有经过测试的计算机上的 Chrome、IE 和 Firefox 上都以相同的速度运行。
但是,它在某些计算机上的 Chrome v38 上突然开始出现不同的表现 - Chrome 将整个游戏的速度降低到其速度的 10%,因此游戏变得极其缓慢。我无法确定这种变化的任何潜在原因 - Chrome 在计算机上播放速度慢还是正常似乎是随机的。在所有计算机上它都可以在 FF 和 IE 上正常运行。
在出现问题的计算机上,使用 Chrome 的分析器,我可以看到问题不在于 CPU 使用率,它最多仅使用 2-3% 的 CPU)并且通常有很大百分比的空闲。有时程序使用了 20-30%,但仍然总是有空闲的 CPU。
关于可能导致此问题的原因/我如何解决此问题的任何建议?
【问题讨论】:
-
如果我们看不到你的代码,我们怎么可能调试它?我们可以用通用的“看看 X”建议来回答,但这不会得到一个好的答案。
-
您提到 Chrome 38 - 这是问题所在吗?总是在38上它很慢吗?也许this is related?
-
或者更具体地说是this one
-
谢谢詹姆斯 - 看起来它可能与您发现的第二个问题有关。添加 --disable-gpu-vsync 标志可以在一定程度上提高性能。它在其他计算机上的 Chrome 38 上运行良好,但我认为可能存在连接,因为我无法在旧版本的 Chrome 上复制该问题。
-
都是windows电脑吗?它特别提到它的 chrome 38 在有问题的 windows 上
标签: javascript performance google-chrome html5-canvas