Quantum Project di Mozilla è un nuovo motore per Firefox
Pochi giorni fa, Mozilla ha presentato il suo nuovo progetto, "Quantum", che mira a fornire un nuovo motore notevolmente migliorato per il browser Firefox. Sarà basato su Gecko e dovrebbe apportare molti miglioramenti alle prestazioni di Gecko, grazie all'aumento concorrenza e parallelismo, latenza ridotta e una migliore affidabilità fornita dal linguaggio del codice Rust e dai suoi caratteristiche.
Quantum è diviso approssimativamente in quattro progetti distinti.
Il progetto Quantum CSS sostituirà il motore CSS di Gecko con quello di Servo. Servo è il sostituto a lungo termine di Gecko basato su un'architettura moderna, ad alte prestazioni e parallelizzata.
Il progetto Quantum DOM renderà Gecko più reattivo, specialmente quando ci sono molte schede in background aperte. Al termine di Quantum DOM, il codice JS per schede diverse (e possibilmente iframe diversi) verrà eseguito in thread pianificati in cooperazione separati; il codice per alcune schede in background non verrà mai eseguito.
Quantum Compositor sposta il compositore di Gecko nel proprio processo. Poiché l'instabilità del driver grafico è una delle principali cause di arresti anomali di Firefox, ci aspettiamo che spostare il codice che interagisce con la GPU nel proprio processo renda Firefox più stabile.
Infine, Quantum Rendering sostituirà il sottosistema grafico di Gecko con quello di Servo, chiamato WebRender. Servo utilizza la GPU in modo più efficace di Gecko, guidandola più come un gioco che un browser web.
Questi progetti sono in vari stadi di completezza. Quantum Compositor è abbastanza avanti mentre Quantum Rendering è appena iniziato. C'è ancora molta incertezza sui progetti.
DOM quantistico
Quantum DOM eseguirà il codice JavaScript per diverse schede in thread paralleli, il che consentirà di aumentare le prestazioni del browser con molte schede aperte. Per passare da un thread all'altro, verrà utilizzato uno scheduler speciale per modificare il contesto in modo fluido e immediato. Arriveranno molti miglioramenti per catturare script pesanti e loop infiniti nel codice Javascript.
Flusso Quantico
Quantum Flow fa parte del progetto Quantum dedicato alle ottimizzazioni avanzate dell'interfaccia utente del browser.
Guarda il seguente video:
Fonte: Il blog di Bill McCloskey.