Performance issue

I have a performance issue with CESIUM which I would like to discuss:

CESIUM Viewer example needs the following performence from the CPU:

- i3-3217 @1.80 GHz, WIN 8.1, Internet Explorer, needs 25% processor load

- i3-3220 @3.3 GHz, Vista, Firefox, needs 21% processor load

All tests done with the CESIUM viewer example startet. The load values are present as long as CESIUM exmaple is loaded, even without any further use of it.

I did that test, because I have the same issue with my CESIUM application, migrated from GE plugin, the GE plugin needs less the 1%.


Per previous discussions in this group, Cesium does not currently have any support for CPU usage throttling. It simply keeps running its rendering loop as fast as the browser will allow. Kevin Ring has written some code for his current application that turns the rendering loop off and on based on some heuristics, but it’s not a “true” solution. Better throttling behavior is a known issue, with no timeline for implementation.

The Google Earth plugin is effectively an entirely separate application that happens to render into the browser. Yes, it consumes less CPU - apparently Google’s engineers were able to implement good throttling behavior.

Hi Mark,
thanks for the clarification. The main problem is, that it is not possibile to have additional instances of the browser open if CENSUS runs on one of the instances, because than the complete systems tends to freeze.


Mark is 100% correct, I’ll add that if Cesium is in a background tab or the browser is minimized, CPU usage drops to 0.

I think the freezing problem that you are seeing may have something to do with the way Firefox/IE handle tabs (single process) as opposed to Chrome (one process per tab). Do you see the same freezing issues with Chrome? Firefox just introduces per-tab processes in the nightly build (but it will be several months before it gets released).

unfortunately I can not perform the test with Chrome, because of the following failure message:

'The browser supports WebGL, but initialization failed' >> spinning cube is ok

With firefox CESIUM works fine, except the performance issue.


I'm also concern by those performance issues as we are developping an application that will potentially have multiple instances of Cesium on the same page.
Plus 20% CPU is a lot when there is no interaction.

So if there is a thread somewhere that discuss how to resolve these problems, I'd like to follow it.

I’ve had multiple instances of Cesium running with no issues at all. I don’t know of a specific thread, but if you post some samples of your code that is seeing performance issues I’m sure the community can help figure out if there is something to be done to optimize.

Indeed, I was wrong, multiple instances on the same page work without extra CPU usage