IMPROVING COG’S JIT PERFORMANCE WITH ADAPTIVE OPTIMIZATIONS

Although recent improvements of the Cog VM performance made it one of the fastest available Smalltalk virtual machine, the overhead compared to optimized C code remains important. Efficient industrial object oriented virtual machine, such as Javascript V8’s engine for Google Chrome and Oracle Java Hotspot can reach on many benchmarks a performance similar to optimized C code thanks to adaptive optimizations performed their JIT compilers. The VM becomes then cleverer, and after executing numerous times the same portion of codes, it stops the code execution, looks at what it is doing and recompiles critical portion of codes in code faster to run based on the current environment and previous executions. In addition to the talk given at ESUG in 2014, we discuss the first results and the implementation issues we encountered.

Download presentation
  • Clement-Bera

    Clément Béra

    After working as a virtual machine engineer during two years in the Pharo team, Clément Béra is now a phd student interested in virtual machines, especially just-in-time compilers. Recently he was experimenting a new architecture for the Cog virtual machine with Eliot Miranda.