context: Limit trigger_gc_if_needed frequency to 5 minutes
Instead of every 10 seconds.
When profiling cursor movement (mutter#283 (closed)) with fixes applied to
specifically optimize cursor movement,
appearing as one of the main remaining users of CPU. Just with cursor
trigger_gc_if_needed would typically occupy 20%-80% of gnome-shell's
CPU usage according to Google Profiler. And according to sysprof the
js::GCRuntime::collect would typically account for 98% or more
After changing the maximum frequency to every 5 minutes (30 times less often), garbage collection no longer shows up in short term performance profiles at all.
If we assume that most of the work was in the scanning process of
trigger_gc_if_needed and not proportional to the amount of garbage
collected then it stands to reason that long term power usage should
also benefit from this change. So total power used is reduced and not
Helps with: mutter#283 (closed)