Xebia

Blog Xebia France

J2EE, Agility and SOA

March 12th, 2008

Traditional generation GC (JDK6) VS GC GARBAGE FIRST (JDK7)

The empirical analysis shows that in an application the vast majority created objects are almost immediately destroyed. It is true all the more for applications web and/or stateless where most objects are created to treat a request and can therefore be destroyed just after this treatment. From this official report results the idea of not treating similarly the newly created objects and those who exist since longer. Garbage Collector which uses realisation based on this principle is called generation GC. It is possible to fix two categories of objectives when GC is optimised: reduce pauses or augment the debit. These objectives are in general orthogonal (the reduction of the length of pauses is made to the detriment of the debit, and vice versa), they often depend on the type of applications: in an interactive application, we will favour pauses, and on the contrary, in batch one, alone the debit counts.

The continuation of the ticket is broken down into two parts:

  • The first one describes the functioning of traditional generation algorithms (current Realisation of JVM SUN)
  • The second itemises the new algorithm which SUN tries to grow for his INTENDED JVM

Read the continuation of this article

Xebia IT Architects lock France
Defence Colis e - 10/12, avenue of The Ark
92419 Courbevoie Cedex

T l : +33 (0) 1 46 91 76 16
Fax : +33 (0) 1 46 91 88 00
E-mail : info@xebia.fr