Session Details
Session ID: TS-5427
Session Title: Inside Out: A Modern Virtual Machine Revealed
Session Abstract: Ever wondered what happens to your bytecodes when they're executed by a Java™ Virtual Machine? If so, this session will provide a taste of the many optimizations done by current virtual machines to make Java technology-based programs run faster. It discusses a few important optimizations in detail, using examples of Java code to show how the JVM™ machine makes common operations fast or how it transforms your program into something completely different that produces the same result -- in less time. It also airs some dirty laundry and covers aspects of Java technology that are not well optimized, explains why, and discusses some alternatives.

Topics include
• Synchronization - why uncontended locks are (almost) free
• Compilation - how dynamic profiling, inlining, escape analysis, and other techniques enable code transformation
• Memory management and garbage collection - why allocation is fast, temporary objects are cheap, and finalization is slow
• Other optimizations - exploiting NUMA architectures, using large pages

Java technology developers of all levels will learn more about what the JVM machine does under the covers, which can help guide development and performance tuning efforts.
Track: Core Technology: Java SE & Desktop; Java SE & Desktop Scheduling Track
Duration: 60
Speaker(s): John Coomes, Sun Microsystems, Inc.; Brian Goetz, Sun Microsystems, Inc.; Antonios Printezis, Sun Microsystems, Inc.