Pour son navigateur Firefox, Mozilla voit plus loin que le multiprocessus qui est déployé pour de plus en plus d'utilisateurs. Pas question pour autant de faire table rase du passé et d'abandonner le moteur de rendu Gecko pour un socle Chromium (Blink) par exemple. D'ici la fin de l'année 2017, la place sera prise par Quantum.
Des pages qui se chargent plus rapidement, du scrolling plus fluide, des animations et applications interactives qui répondent de manière instantanée, des ressources allouées intelligemment… c'est ce que promet David Bryant, responsable Platform Engineering chez Mozilla.
Gecko servira à façonner les fondations de Quantum mais avec des composants qui seront remplacés par du code du moteur de rendu expérimental Servo. Développé en Rust, qui est un langage de programmation de Mozilla Research, Servo est reparti de zéro pour s'adapter à l'utilisation des performances du matériel massivement parallèle.
Quantum utilisera un générateur de liaison entre le code C++ de Firefox et les composants Rust de Servo dont pour l'optimisation du rendu sur GPU, le traitement parallélisé des feuilles de style CSS. Pour améliorer la stabilité, le code qui interagit avec le GPU aura son propre processus, le code JavaScript pour différents onglets voire iframes sera exécuté dans des threads séparés avec une gestion planifiée de manière coopérative de l'espace utilisateur. Il est également prévu des améliorations de performance pour l'interface utilisateur.
Avec Quantum, il s'agira de tirer le meilleur des processeurs avec plusieurs cœurs et des puces graphiques pour accélérer certains traitements. Une première version du nouveau moteur de rendu sera d'abord disponible sur Windows, macOS, Linux et Android.
Sur mobile, Quantum devrait aussi permettre d'abaisser la consommation d'énergie. Mozilla n'écarte pas l'idée de proposer un jour Quantum pour iOS alors qu'Apple impose actuellement d'utiliser son framework de rendu basé sur WebKit.