ProHoster > Blog > noticias de internet > O rendemento da compilación JIT mellorouse notablemente nas compilacións nocturnas de Firefox
O rendemento da compilación JIT mellorouse notablemente nas compilacións nocturnas de Firefox
В construcións nocturnas Firefox incluído compilador JIT actualizado, desenvolvido nome en clave WarpBuilder. Para activar o novo JIT, a opción "javascript.options.warp" aparece en about:config.
Nótese que WarpBuilder é só o primeiro paso para incorporar novas optimizacións ao navegador, que está previsto que se implementen durante o próximo ano.
O novo JIT mellora o rendemento do motor SpiderMonkey JavaScript reducindo a información de tipo interno rastrexada dentro do motor e empregando previamente a técnica de caché de código intermedio (CacheIR). proposto no intérprete de bytecode "baseline", que ocupa un nicho intermedio entre un intérprete normal e un compilador pre-JIT. Estes cambios fixeron posible simplificar significativamente a arquitectura JIT, aumentar a capacidade de resposta, reducir o tempo de carga das páxinas e reducir o consumo de memoria.
Nótaseque o novo JIT resolveu moitos problemas do antigo JIT IonBuilder, como:
Complexidade da implementación e posibles problemas de seguridade;
Sobrecarga adicional para o código Baseline/C++;
Especialización excesiva que leva a recompilacións innecesarias;
Xeración de código intermedio Eu (IR de nivel medio) no fío principal (en WarpBuilder, o conxunto principal do código intermedio colócase nun fío separado);
Consumo de memoria adicional para almacenar datos sobre tipos e grupos de obxectos (ObjectGroups).
De media, nas probas que avalían o rendemento en función de métricas visuais, obsérvase unha aceleración do 5-15% ao usar WarpBuilder. A taxa de realización da proba do velocímetro aumentou un 10%. As probas en sitios reais mostraron unha redución do tempo de carga de Google Docs 20%, índice SpeedIndex ao abrir a sección de Android en Reddit mellorada por 13%, pdfpaint comezou a funcionar máis rápido 18%. Consumo de memoria na proba tp6 diminuíu un 8%. Datos as estatísticas das ferramentas de desenvolvemento (devtools perf) tamén mostraron unha redución do 8% no consumo de memoria.