4

I'm doing some d3.js visualization development (mostly SVG) and I was measuring the FPS of my transitions using the "Show FPS meter" option in the web tools. Strangely, the FPS appears to be capped at exactly 30fps. Other colleagues using the same version of Chrome consistently get 60fps running the same code.

I can get a higher frame rate out of other browsers and out of Flash so it seems to be something Chrome specific.

Does anybody know what kinds of things might cause Chrome to clamp the frame rate at 30fps? I've read that it might do this if it thinks that a smooth 30fps will look better than a choppy 60fps if there is a lot of variance, but I don't understand why it would need to do that on my fast desktop machine.

Here's an example page that shows the problem:

http://mbostock.github.io/d3/talk/20111018/collision.html

Drag your mouse around and you'll probably see the FPS counter sit around 60fps. On my machine, it sits at precisely 30fps.

I've tried Canary with the same results.

Scott Cameron
  • 5,293
  • 2
  • 29
  • 32
  • What is the frame rate of your monitor set to? – Joachim Isaksson Jul 03 '13 at 16:05
  • I have 2 monitors hooked up, both set to 59Hz. I tried changing this to 60Hz but it won't take -- it keeps setting it back to 59Hz. At any rate, both of my colleagues' machines have the same refresh rate setting (and same video card and monitors) and they get 60fps consistently. – Scott Cameron Jul 03 '13 at 16:35
  • Just found this regarding the 59Hz. It is equivalent to the 60Hz setting. http://support.microsoft.com/kb/2006076 – Scott Cameron Jul 03 '13 at 16:37
  • 4
    After experimenting a bit more, I think I may be hitting a Chrome bug related to how it determines optimal frame rate. If I turn off one of my dual monitors, the problem goes away. If I disable "transparent glass" in Windows Performance settings, the problem goes away. If I maximize the window, the problem happens but if I reduce the size slightly the problem doesn't happen. If I open Dev Tools as a floating window the problem happens but it doesn't if Dev Tools are docked. I've submitted a bug for this here if anybody is curious: https://code.google.com/p/chromium/issues/detail?id=257173 – Scott Cameron Jul 03 '13 at 21:30
  • This is also a common problem I am witnessing with the Blur Busters Motion Tests at http://www.testufo.com (a motion testing website, which also features an ability to detect the refresh rate of your monitor). – Mark Rejhon Oct 02 '13 at 19:35

0 Answers0