V8 under the hood

We all use JavaScript every day, but few people think about what happens after the source code gets into a browser. I’ll take V8 engine as an example for showing you all the stages that our code goes through before becoming a set of machine instructions for the processor. I’ll tell you why almost identical code samples have different benchmarks and why these benchmarks can not be trusted. We will go through the history of the V8 engine from the first version without an optimizing compiler, to the modern Ignition + Turbofan pipeline and learn how the V8 authors managed to achieve such impressive performance.

Talk language: RU

Download presentation.

Andrey Melikhov

Andrey Melikhov

Before becoming a frontend-developer, Andrey was engaged in development of geophysical equipment. He was writing assembly code for the microcontrollers and was solving the problem of data transfer by kilometer noisy cable. Then he got a bit bored in frontend-development, but recently discovered a lot of poorly researched (at least in runet) low-level areas associated with the issues of generating machine code from Javascript. He continues to dig deeper and shares the results with the community.