4 ms·
Finally! Congratulations to the V8 team for completing the switch to a sane compilation pipeline. :) Hopefully this will lead to many more simplifications in t
by fmap 10y ago
Finally! Congratulations to the V8 team for completing the switch to a sane compilation pipeline. :)
Hopefully this will lead to many more simplifications in the future.
Does anyone know which optimizations finally catapulted Ignition+Turbofan ahead of FullCodeGen+Crankshaft in terms of performance?
- bmeurer 10y agoI'm not sure if you are referring to a particular optimization, but speaking of https://twitter.com/bmeurer/status/834677090381348865 https://twitter.com/bmeurer/status/834677090381348865 and https://twitter.com/bmeurer/status/834668611180625921 https://twitter.com/bmeurer/status/834668611180625921 the "Bazinga!" event in both cases refers to two very specific fixes that addressed deoptimization loops in TurboFan. The more interesting steady increase in performance is due to long-term real-world performance work, especially in the area of data-driven ICs (inline caches) and function context specialization. We will follow up with more details about Ignition and TurboFan, and the whole new code generation architecture soon.
- fmap 10y agoYes, that's what I had in mind. Another thing I seem to recall is that Turbofan used to be a lot slower than Crankshaft and spend a lot of its time in scheduling and register allocation. Has this changed recently? In any case, I'm looking forward to the more in depth post. :)
- Klathmon 10y agoAnd just to provide some context on the "sane" part. [0] is their current architecture. [1] will be the architecture after this change goes into effect. It's a massive simplification which should allow them to implement new changes to the language much faster, improve memory usage and startup speed, and will allow them to tackle web assembly much easier! [0] http://i.imgur.com/M86wHy2.png http://i.imgur.com/M86wHy2.png [1] http://i.imgur.com/Bmuxtdq.png http://i.imgur.com/Bmuxtdq.png