title: When to choose SerialGC, ParallelGC over CMS, G1 in Java?
body: <p>In Java 9, G1 GC is the default Garbage collector.
  As of now, I heard of <a href="https://www.elastic.co/guide/en/elasticsearch/guide/current/_don_8217_t_touch_these_settings.html" rel="noreferrer">some people preferring CMS garbage collector</a> over G1GC as it seems to be not stable and has some nasty bugs.</p>
  
  <p>What happened with ParallelGC (no buzz these days) ? 
  Is there any use case in which we would like to prefer ParallelGC over CMS/G1 ?</p>
  
  <p>Also, is there any case where SerialGC could out perform all these parallel collectors ?</p>