Java and 64-Bit Architecture - GC Pauses
Posted by Mike Brunt at 9:39 PM Languages | Performance | JavaEE | Caching | Java-JVM | ColdFusion | JRun-J2EE
Is 64-bit architecture a problem for Java and the current JVMs, this question has been in my mind for some time? In doing some deeper research for my upcoming presentations at NCDevCon, Adobe MAX Unconference and cf.Objective anz, I came across a really good blog piece addressing the possible issues basically posed by two things.
The dramatically increased size of the heap available to us and resulting garbage collection (GC) challenges.
The fact that 64-bit architecture, overall, is not always optimal for paradigms heavily using data structures. I touched on this a little in this earlier blog post
I am hoping in at least one if not all of my presentations to exercise BigMemory from the folks at Terracotta, which is attempting to help in reducing GC management and thereby increased pauses on 64-bit JVMs.
In the meantime, here is the great blog post and even more interesting comment thread, it is a little dense but well worth the read for those interested in all things performance related
David Ames wrote on 09/07/11 3:23 PM
Hey Mike,We are currently working on integration Terracotta/BigMemory/EhCache into our application. The biggest problem so far is that objects that end up in BigMemory/Terracotta need to be serialized.
This means that it's impossible to put "transfer" in the cache and any other objects that contain references to singletons/factories/service layers.
Dave