Le navigateur Chrome pour Android a récemment doublé son score de Speedometer, révélant des améliorations de performance impressionnantes. De plus, il optimise la lisibilité pour une expérience utilisateur enrichie. Cette évolution marque un tournant significatif dans la rapidité et l’accessibilité, répondant aux attentes croissantes des utilisateurs modernes.
Google a annoncé des améliorations significatives dans les performances de Chrome pour Android, notamment un doublement des scores au benchmark Speedometer, qui sont désormais plus révélateurs des performances réelles des navigateurs sur mobile.
Le benchmark Speedometer est essentiel pour évaluer la rapidité avec laquelle Chrome exécute des interactions sur les pages web. Il mesure des tâches telles que le rendu du HTML, le CSS ainsi que l’exécution de JavaScript. D’après Google, depuis la version 112 de Chrome en avril 2023, il y a eu une « augmentation significative » des scores sous Speedometer 2.1 sur Android, avec la sortie récente de la version 3.0.
Sur de nombreux appareils, les scores ont plus que doublé, en particulier via la plateforme mobile Snapdragon 8 Elite, qui a établi de nouveaux records de performance pour Speedometer sur les appareils mobiles.
Le succès de ces améliorations réside dans trois grandes catégories de mises à jour. Tout d’abord, les optimisations de la construction ont contribué à plus de « la moitié des améliorations du score Speedometer« . Avec la version 113 sortie l’année dernière, Google a introduit une « version séparée à haute performance ciblant les appareils Android premium ». Cette nouvelle version a été conçue après des années d’optimisations visant une faible taille binaire principalement pour les téléphones d’entrée de gamme. Toutefois, une version « plus limitée en taille binaire » est toujours disponible pour d’autres dispositifs.
La nouvelle « version premium » apporte des optimisations modernes qui, bien que rendant les binaires plus volumineux, améliorent considérablement la vitesse. Google mentionne des contributions directes de ses partenaires chez ARM avec des optimisations comme :
- Le ciblage de ARM64 plutôt que ARM32, permettant d’exploiter des fonctionnalités d’instructions ARM plus efficaces et des opérations 64 bits plus larges.
- La compilation du code C++ optimisée pour la vitesse, passant de -Oz à -O2 / -O3, ce qui est plus pertinent pour les appareils premium avec de grands disques et une mémoire suffisante.
- Des ajustements dans les seuils d’inlining utilisés par le compilateur, permettant davantage d’inlining dans le code chaud et réduisant l’inlining dans le code froid grâce à une mise à jour des modèles utilisés par un autre compilateur (MLGO).
- La mise en œuvre d’optimisations guidées par le profil (PGO) pour améliorer la disposition et le niveau d’optimisation du code pour le code chaud.
- Enfin, une amélioration dans l’ordre des codes entre les fonctions, en synchronisant la génération des fichiers d’ordre de Chrome avec le nouveau build ARM64, et intégrant Speedometer 3 dans les charges de travail utilisées pour générer ces fichiers d’ordre.
Les améliorations se poursuivent également avec des optimisations apportées au moteur V8 JavaScript et au moteur de rendu Blink :
- Un parser HTML optimisé pour le chemin rapide est désormais utilisé pour analyser les attributs
innerHTML
. - Le V8 a lancé un nouveau niveau de compilateur, Sparkplug, qui permet de générer rapidement du code non optimisé. Par la suite, un autre compilateur, Maglev, génère un code semi-optimisé, permettant ainsi une hiérarchie de mise à niveau plus progressive.
- Les heuristiques déterminant le moment de la collecte des ordures (garbage collection) ont été ajustées pour tabler sur les moments où le moteur de rendu est inactif ou lorsque l’utilisateur navigue loin des pages.
- De nombreuses autres optimisations incrémentales ont été réalisées, par exemple sur V8 et les moteurs d’analyse, de style, de mise en page et de rendu de texte.
En combinant des politiques de planification optimisées avec des performances matérielles améliorées, la nouvelle plateforme mobile Snapdragon 8 Elite a enregistré une amélioration de 60 à 80 % dans Speedometer 3.0 par rapport à son prédécesseur, fournissant ainsi des performances web de premier plan sur les appareils mobiles.
Pour comprendre davantage ces avancées et leurs impacts, vous pouvez consulter des ressources telles que le site officiel de Google Chrome Developer, qui fournit des informations détaillées sur le développement et l’optimisation des performances de Chrome.
Quelles sont les améliorations apportées par Google Chrome pour Android ?
Google a amélioré les performances de Chrome sur Android, en particulier en ce qui concerne le Speedometer, en optimisant la compilation C++ pour la rapidité et en introduisant un nouveau système de build performant visant les appareils Android haut de gamme.
Quel outil utilise Google pour évaluer les performances de Chrome ?
Google utilise le benchmark Speedometer, qui est considéré comme le plus représentatif de la réalité, pour mesurer la rapidité avec laquelle Chrome interagit avec les pages web.
Quel impact ces améliorations ont-elles eu sur les performances de Chrome ?
Depuis Chrome 112, Google a constaté une augmentation significative des scores Speedometer 2.1 sur Android, avec des augmentations pouvant dépasser le double dans de nombreux cas, particulièrement avec la nouvelle plateforme mobile Snapdragon 8 Elite.
Quelles optimisations ont été apportées au moteur JavaScript V8 ?
Des optimisations telles que l’introduction d’un compilateur de base rapide, des ajustements des seuils d’inlining et des optimisations guidées par profil ont été mises en place pour améliorer les performances du moteur JavaScript V8 dans Chrome.
Bonjour, je m’appelle Arthur et j’ai 37 ans. Cadre supérieur dans l’administration, je suis passionné par la gestion et l’organisation. Bienvenue sur mon site web où je partage mon expérience et mes conseils en matière de leadership et de management.