Java objects inside out

 /  RU

One of the frequently asked questions about objects in Java is how much do they take up in memory. In absence of "sizeof" language or library operation, programmers can only guess about the footprint of their code or refer to the legends and tales of specialists.

In this talk, we'll try to look inside Java objects and see what lies in them. After that many tricks in the objects, footprint should become clear, as well as some features of runtimes, and it will be obvious what can be exploited for dirty low-lever purposes.


Aleksey Shipilev
Red Hat

Aleksey is working on Java performance for 10+ years. Today he is employed by Red Hat, where he does OpenJDK development and performance work. Aleksey develops and maintains a number of OpenJDK subprojects, including JMH, JOL, and JCStress. He is also an active participant in expert groups and communities dealing with performance and concurrency. Prior joining Red Hat, Aleksey was working on Apache Harmony at Intel, then moved to Sun Microsystems, which was later consumed by Oracle.