airhacks.fm podcast with adam bien

From Maxwell over Maxine to Graal VM, SubstrateVM and Truffle


Listen Later

An airhacks.fm conversation with Thomas Wuerthinger (@thomaswue) about:
Working on HotSpot,
Sun started collaboration with Johannes Kepler University (JKU) in Linz,
Java HotSpot is written in C++,
"Array Bounds Check Elimination" for Java HotSpot Compiler, increased the performance by approx. 10%,
the possibly most impactful student work ever,
IdealGraphVisualizer (IGV): the graphical visualisation tool for HotSpot uses NetBeans visual library,
IGV is also used for GraalVM,
the Maxine Research VM at Sun Microsystems,
Project Maxwell was renamed to Maxine,
working at Sun's Menlo Park at Maxine,
the circular optimization of Java leads to higher performance,
the relation between Maxine and GraalVM,
replacing the Maxine Compiler with Client HotSpot Compiler "transpiled" from C++ to Java,
the C1X compiler,
maxine was too ambitious, GraalVM just focusses on the compiler and makes it available for HotSpot,
the Java compiler (javac) is written in Java,
the quality of the JIT output is the first factor for good performance,
HotSpot asks JIT to optimize "hot" methods,
Maxine project is stil active,
JVMCI,
working on crankshaft compiler at Google with a team of 8 people,
using Graal as polyglot environment,
converting JavaScript to GraalIR was too complex,
JavaScript is dynamic and GraalIR is typed,
partial evaluation was inspired by PyPy,
JavaScript interpreter was written in Java and is optimized by GraalVM,
the frozen interpreters,
the meta-circularity comes with the native image,
a small JavaScript interpreter team implements recent JavaScript features,
improving serverside ReactJS rendering performance with GraalVM,
R, Ruby and Python are exectly the same integrated as JavaScript,
Java is going to be interpreted in the same way as well,
method inlining across language boundaries,
Truffle is the intepreter API and comes with language-independent tooling,
GraalVM is able to output bitcode instead of native code with LLVM,
native image was used to compile the Graal compiler itself,
the native image contains garbage collector,
native image is considered "early adopters" technology,
HotSpot mode is still 20% to 50% faster,
G1 is going to be available on the native image as well,
in future the performance of the AOT could vary +/-10% compared to JIT,
polymorphic invocations could become faster on the native image / AOT,
profile guided optimizations can be performed also ahead of time,
new native images could learn from the past,
the stability of AOT and JIT are similar,
twitter already uses AOT for years,
with Java you have the choice between AOT and JIT,
unikernels could be supported by GraalVM in future,
the GraalVM is hiring,

Thomas Wuerthinger on twitter: @thomaswue

...more
View all episodesView all episodes
Download on the App Store

airhacks.fm podcast with adam bienBy Adam Bien

  • 5
  • 5
  • 5
  • 5
  • 5

5

5 ratings


More shows like airhacks.fm podcast with adam bien

View all
Software Engineering Radio - the podcast for professional software developers by se-radio@computer.org

Software Engineering Radio - the podcast for professional software developers

266 Listeners

The Changelog: Software Development, Open Source by Changelog Media

The Changelog: Software Development, Open Source

285 Listeners

The Cloudcast by Massive Studios

The Cloudcast

153 Listeners

Thoughtworks Technology Podcast by Thoughtworks

Thoughtworks Technology Podcast

42 Listeners

Talk Python To Me by Michael Kennedy

Talk Python To Me

585 Listeners

Java Off-Heap by Freddy Guime

Java Off-Heap

10 Listeners

Software Engineering Daily by Software Engineering Daily

Software Engineering Daily

628 Listeners

Python Bytes by Michael Kennedy and Brian Okken

Python Bytes

214 Listeners

Data Engineering Podcast by Tobias Macey

Data Engineering Podcast

139 Listeners

CoRecursive: Coding Stories by Adam Gordon Bell - Software Developer

CoRecursive: Coding Stories

185 Listeners

Kubernetes Podcast from Google by Abdel Sghiouar, Kaslin Fields

Kubernetes Podcast from Google

180 Listeners

A Bootiful Podcast by Josh Long

A Bootiful Podcast

28 Listeners

The Stack Overflow Podcast by The Stack Overflow Podcast

The Stack Overflow Podcast

63 Listeners

Oxide and Friends by Oxide Computer Company

Oxide and Friends

47 Listeners

Foojay.io, the Friends Of OpenJDK! by Foojay.io

Foojay.io, the Friends Of OpenJDK!

0 Listeners