Accueil » Actualité » Chrome iOS : plus lent que Safari, et c’est normal

Chrome iOS : plus lent que Safari, et c’est normal

Hier, Google a annoncé (et rendu disponible) Chrome pour iOS, une version adaptée du célèbre navigateur. Mais attention, il ne s’agit pas de Chrome comme on l’entend habituellement : les restrictions d’Apple avec iOS empêchent de facto une société de développer un navigateur. Chrome iOS est en fait une interface différente pour une version ralentie de Safari Mobile. Expliquons.

Premièrement, Apple ne permet pas à des développeurs de proposer un moteur de rendu HTML. Toutes les applications iOS qui affichent des pages écrites en HTML doivent passer par le moteur de rendu du système, WebKit. Concrètement, Chrome iOS, Safari Mobile et toutes les applications qui affichent des pages web utilisent le même moteur de rendu.

Seconde limite, beaucoup plus gênante, le JavaScript. Apple utilise depuis quelques années le moteur Nitro dans ses appareils iOS. Ce moteur de rendu fait notamment de la compilation JIT (à la volée) du code, ce qui permet d’accélérer très nettement les calculs. Mais comme cette compilation à la volée peut poser des problèmes de sécurité, Apple ne permet son utilisation que dans Safari Mobile et dans les WebApp mais pas dans les applications qui font appel à UIWebView, l’API permettant d’afficher des pages HTML.

Avec Chrome iOS (et aussi l’application Facebook), c’est l’ancien moteur JavaScript d’iOS qui est utilisé, et il est significativement plus lent que Nitro. Sur un iPhone 3GS sous iOS 6ß2, Chrome iOS obtient un score de 12 486 ms sur le test SunSpider alors que Safari Mobile effectue le même test en 4 233 ms.

Image 1 : Chrome iOS : plus lent que Safari, et c'est normal Image 2 : Chrome iOS : plus lent que Safari, et c'est normal

Si Chrome a donc beaucoup d’avantages, notamment au niveau de l’interface et de la synchronisation avec les autres appareils qui utilisent le navigateur, les performances n’en font pas partie. Espérons qu’Apple change les choses dans le futur, ce qui arrive parfois : quand Nitro est arrivé avec iSO 4.3, les WebApp ne pouvaient pas l’utiliser, alors que la version 5.0 de l’OS a permis à ces dernières d’en profiter.