This talk was given at ViennaJS March Joint Event with React Vienna by Michael Starzinger.
This talk takes you on a deep dive into the inner workings of V8, the high-performance JavaScript engine powering Chrome and Node.js, focusing especially on the compilation aspects. It starts with an overview of V8’s modern multi-tier compilation pipeline, including a bytecode interpreter (aka. “Ignition”) and an optimizing compiler (aka. “TurboFan”). The second half discusses two JavaScript language features as examples of how V8 delivers high performance execution. We’ll look at how V8 optimizes higher-order array functions (like Array.prototype.map and friends) as well as how JavaScript generators and async functions are modelled. Come join this journey into the depths of V8. You’ll walk away knowing how to get the best performance out of those language features.
Speaker Bio:
Michael Starzinger is a software engineer at Google working on the V8 team in Munich, specializing in garbage collector and compiler development. Before joining Google in 2011, he worked on Cacao, an open-source Java virtual machine developed by the compilers and languages group at the Vienna University of Technology.