Esta notícia aborda algumas das otimizações de desempenho feitas para o engine Chakra e os resultados de benchmark do Octane e Jet Stream para o Edge, Chrome e Firefox.
Como foi detalhado no artigo A Developer's View on Microsoft Edge, a fabricante de navegadores de Redmond mudou sua atitude em relação às tecnologias web, padrões web e complacência com outros navegadores. Não somente eles descartaram alguns dos antigos componentes do IE e decidiram implementar HTML, padrões JavaScript e CSS para a carta com o novo engine de renderização, mas eles começaram a endereçar um problema de muito tempo: desempenho.
Os principais gargalos de desempenho do IE estavam relacionados ao processamento de JavaScript, a Microsoft corrigiu alguns destes na nova versão do Chakra disponível com o Edge. Apresentamos resumidamente algumas dessas melhorias (mais detalhes aqui e aqui):
- O Chakra possui um novo compilador Simple JIT que executa pequenas otimizações e, como resultado, pode executar o código previamente. O profiling continua e o engine pode se alterar para o modo full-JIT quando disponível. O Simple JIT também funciona em um processo em segundo plano;
- Dependendo do hardware subjacente, o Chakra pode executar diversos processos JIT, resultando em compilações mais rápidas. Por conta disso, o TypeScript está agora 30% mais rápido;
- A marca final de paço GC agora pode ser feita tanto no processo principal quanto no processo GC, reduzindo a interrupção do processo principal para o passo da nota final em até 48%;
- A sobrecarga do código de inlining foi reduzido pelo uso de dados estáticos;
- O Chakra agora aceita arquivos cruzados de script inlining;
- O próximo const no ES6 salva o compilador nos testes de desempenho e observa se uma variável mudou. Para aplicações web que não usam o const, o Chakra pode identificar variáveis globais que nunca mudam ao invés de trata-las como const, salvando tempos de busca;
- O compilador JIT agora está mais otimizado para executar códigos minimizados gerados por UglifyJS que é usado pela maioria dos top 10K websites;
- O JIT agora otimiza o código dentro de um bloco try-catch.
Considerando todas as melhorias e otimizações, queremos saber o quão rápido o Edge é. De acordo com a Microsoft, o Edge é agora mais rápido que o Chrome e Firefox, como retratado nos seguintes gráficos:
(Clique nas imagens para ampliar. Os benchmarks foram realizados pela Microsoft usando navegador de 64 bits e Windows 10 TP 64 bits em um Compaq 8100 Elite, i7 860 2.80GHZ (4 núcleos), 12GB de RAM).
Percebemos o quanto o Edge melhorou no desempenho se comparado com o IE11. Além disso, resta ver se o Google e a Mozilla podem espremer mais pontos de benchmarks dos seus navegadores.