Pour V8, le moteur JavaScript de Google Chrome, il y avait déjà eu une révision majeure avec l'infrastructure de compilation CrankShaft. Relativement discrètement, une nouvelle révision a été implémentée depuis la version 41 de Chrome.

TurboFan a pour le moment été activé pour certains types de code avec donc l'objectif d'optimiser la compilation JavaScript. Pour cela, il est fait appel à une architecture dite " sea of nodes " (mer de nœuds) pour le déplacement transparent du code par le compilateur.

Ingénieur logiciel chez Google, Ben L. Titzer évoque notamment l'intérêt de TurboFan avec la technologie asm.js qui permet aux développeurs de compiler du code C / C++ d'applications en JavaScript pour une exécution dans le navigateur.

Il publie par ailleurs des résultats avec le benchmark Octane (benchmark JavaScript de Google) qui selon lui montrent des " performances prometteuses ". Avec TurboFan, il est constaté une hausse de performance de l'ordre de 29 % avec le benchmark zlib intégré à Octane (un test asm.js de la suite Emscripten de Mozilla) :

Benchmark-Octane-zlib-Chrome-TurboFan

Au cours des prochains mois, il est envisagé d'activer TurboFan pour " de plus en plus de types de code " JavaScript. Le but final est de remplacer entièrement le compilateur CrankShaft actuel par TurboFan.

Bien évidemment, Mozilla et Microsoft planchent aussi sur des améliorations pour la compilation JavaScript, que ce soit pour IonMonkey de Firefox ou Chakra de Microsoft Edge.

Source : Chromium Blog