GC Bomb - CMS GC starves high priority system threads

It is fixed in 1.5.0_06 :slight_smile:

I reckon that counts as a ā€œreliable rumourā€ :wink:

Cas :slight_smile:

Necro!

This bug has returned with a vengeance in JRE6… and needs to be un-regressed! There are TIME_CRITICAL threads all over the place once more.

Cas :slight_smile:

No wait! I tell a lie. It’s different this time… here’s the symptoms:

Run Ultratron in Eclipse (java6ea) - game runs smoothly.
Run Ultratron as standalone executable, no Eclipse running in background - game runs smoothly.
Run Ultratron as standalone executable, Eclipse minimised in background - occasional, regular, 1 second pauses. Grr.

Any ideas on this particularly odd interaction? I feel that it’s something similar to what it was before.

Cas :slight_smile:

I’m not sure if it’s related, but I’m noticing some strange behaviour of java6 at work:
Sometimes the whole OS (still running Win2000 here) almost freezes completely! When that happens (sometimes 5 times a day, sometimes 2 times a week), trying to kill all java processes solves the problem (that is, if the OS isn’t frozen too much).
The problem seems to be triggered by running java6 and a java 1.4.2 version at the same time, as axing Lotus Notes’ JRE (1.4.2) and replacing it with a java6 JRE seems to make the problem almost go away (making all applications use the same java6). Weird but true :-. There’s still the occasional short, system-wide pauses though…

Cas, does Ultratron still have the same problem if you run Eclipse with the same JRE version as Ultratron?

Yes.

The plot thickens… turns out all games are afflicted with 1-second pauses when Eclipse is running. It might just be a daft Eclipse thread doing it.

Cas :slight_smile:

But then, are things any different between 1.4 and 1.6?

This is probably due to the idle GC feature in Eclipse. When the IDE detects itself as ā€œidleā€, it periodically runs System.GC() to reduce perceived memory footprint. This however causes its CPU usage to spike and pauses games and other CPU intensive apps.

It’s discussed in this bug: https://bugs.eclipse.org/bugs/show_bug.cgi?id=118335

You can run eclipse with: eclipse -vmargs -Dide.gc=false, as described in the post #8. This disables the idle GC and fixes the pauses, at least for me.

And oh, hi. First post, long time lurker. :slight_smile:

And what an excellent first post :slight_smile: Most welcome.

Cas :slight_smile: