<p>As a gross oversimplification their GC is concurrent to mutator (java) threads but is mostly pauseless (they still pause at times but only very briefly) because they use read barriers.   This means that if a mutator thread reads memory that's been relocated, they trap this condition at read time, fix up the pointer (mutator does this itself), and continue on.  Last I heard this approach required azul's os support for bulk in/mapping of pagetable entries, and required a Linux patch for x86 to do the same (but it wasn't accepted into mainline kernel).</p>

<p>What's interesting is whether hotspot has any plans to do something similar?</p>
<div class="gmail_quote">On Nov 28, 2011 4:27 AM, "Li Li" <<a href="mailto:fancyerii@gmail.com">fancyerii@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
hi everybody,<div>    I read an article today about Azul's Zing JVM. It is said that this jvm is pauseless.</div><div>    In my application, our machine is about 48GB and about 25GB memory is given to jvm(by -Xmx). But it will occasionally pause 1-2 seconds.</div>

<div>    So when I saw this, I want to know whether it's so good as they say. And I googled and found a related question in stackoverflow: <a href="http://stackoverflow.com/questions/4491260/explanation-of-azuls-pauseless-garbage-collector" target="_blank">http://stackoverflow.com/questions/4491260/explanation-of-azuls-pauseless-garbage-collector</a></div>

<div>    after reading, I am still confusing. Anyone would give more detail explanations about it? thanks</div>
<br>_______________________________________________<br>
hotspot-gc-use mailing list<br>
<a href="mailto:hotspot-gc-use@openjdk.java.net">hotspot-gc-use@openjdk.java.net</a><br>
<a href="http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use" target="_blank">http://mail.openjdk.java.net/mailman/listinfo/hotspot-gc-use</a><br>
<br></blockquote></div>