About Cesium frame rate in latest versions

Our team have been noticing that the performance of our app is decreasing with every new Cesium release.
However we were not sure if it was just imagination or not, so today I downloaded two clean releases of Cesium, and run them to check the frame rate.

I tested both in same computer, with same scene setup (default empty CesiumViewer with camera in default position after pressing the Home widget).
I put one version in a Chrome tab, another in another tab, and then put Chrome in fullscreen (OSX).

Cesium 1.10 (latest) - 19 fps in average
Cesium 1.1 - 28 fps in average

I can’t check the average frame times, which are probably better to compare than frame rate (which is non-linear).
And I know that 1.1 is already a very old version, but in this scene, both were showing exact the same, just a globe and nothing more.

I guess there can be different reasons for the difference:

  • Latest cesium can be doing more stuff in background
  • Latest cesium shaders can be more complex

The problem is that we’re already getting into single digits frame rate in our app and now I worry that later releases will keep getting more ‘heavy’.
Is there some Cesium settings/tweaks that can boost the framerate or some other useful tips?

Hi Sergio,

This is strange. If anything, we keep optimizing Cesium. However, we have added some fullscreen passes for OIT and the terrain depth buffer that can impact fillrate-limited scenes. What are the performance results if you compare at a low resolution like 640x480? Also, how are you measuring FPS?

Patrick

I’m measuring FPS using the builtin Cesium option to display FPS.

Reducing the resolution seems to make both versions run at a more similar frame rate. So this means the problem is the fill-rate, probably because of those extra fullscreen passes you mentioned.

OIT can be disabled if I remember correctly, I’ll check if it makes any significant improvement.

You can also play around with vertical syncing options to see if that helps.