JIT as a Service: Compiling for Runtimes in the Cloud
Just In Time (JIT) compilers can greatly speed up performance of a language runtime, but this comes at a cost. Most JIT compilers are fairly large and consume significant resources (memory and CPU cycles), but the overall benefit to performance is still usually a net win. Is it possible that you can have your cake and eat it too? Can we provide the high performance of JIT compiler with much less of the typically associated overheads?
At Eclipse OpenJ9 and Eclipse OMR, we have been experimenting with JIT compilers that operate as a remote service with only a relatively thin client layer required in the runtime. In this talk, we will show what we have accomplished so far including performance data. We will also talk about the exciting new possibilities and challenges opened up when the JIT compiler is no longer constrained by the runtime environment of the applications it compiles.
Mark Stoodley wrote his first compiler almost from scratch at the age of 16 after borrowing his older brother’s copy of the famous Dragon book. It wasn’t easy (and the result wasn’t really very good) but he was hooked. Mark went on to develop backend compiler optimizations for his M.A.Sc. and Ph.D. with the department of Electrical and Computer Engineering at the University of Toronto and, in 2002, joined the IBM Markham Lab in Canada to build Java Just In Time compilers for production use. For the past 5 years, Mark was the overall technical lead for the effort to open source nearly 4.3 million lines of source code from the IBM J9 Java Virtual Machine to create the open source Eclipse OMR and Eclipse OpenJ9 projects and is a lead for both projects. As part of this open sourcing effort, he also created the JitBuilder library, an ongoing effort at the OMR project to design a simplified API for leveraging the optimizing compiler technology at the heart of a production JIT compiler.
Mon 5 NovDisplayed time zone: Guadalajara, Mexico City, Monterrey change
08:30 - 10:00 | |||
08:30 30mTalk | Eclipse OMR: Building Blocks for Polyglot TURBO Xiaoli Liang IBM Canada | ||
09:00 30mTalk | Taking Eclipse OMR JitBuilder to a Language Near You TURBO Leonardo Banderali IBM Toronto Labs | ||
09:30 30mTalk | JIT as a Service: Compiling for Runtimes in the Cloud TURBO Mark Stoodley IBM Canada |