Introduction

Depuis la version 4, les numéros de versions défilent…

ff901intro04 A l'instar de Google Chrome nous assistons pour Mozilla Firefox depuis quelques temps à des changements de versions de plus en plus fréquents, des mises à jour effrénées diraient certains. Pour résumé l'historique, le 21 juin 2011 nous étions en version 5, le 16 août 2011 en version 6, le 27 septembre 2011 en version 7, le 08 novembre 2011 en version 8, un mois après le 20 décembre 2011 en version 9 et un jour plus tard, c’est-à-dire le 21 décembre 2011, déjà avec un correctif de faille pour une version 9.01 ! Chaque nouvelle version s'accompagne en substance d'un nouveau moteur de rendu Gecko (5.0, 6.0, 7.0, 8.0, 9.0) mais on ne peut pas dire que les fonctionnalités marquantes suivent pour autant.

 

Principal apport ? L'amélioration JavaScript ! ff901intro02

Nous verrons dans ce dossier quels sont les apports de cette dernière version 9.01. En avant-propos, notez toutefois que les nouveautés tiennent pour nous davantage du domaine de l'amélioration JavaScript plutôt que d'innovations ou de nouvelles fonctionnalités. Cela dit, ce n'est pas un reproche et on ne peut pas reprocher à Mozilla Firefox d'être entré de plain-pied dans la course aux performances JavasScript initiée par Google et son navigateur Chrome. Cependant est-ce bien judicieux de suivre également la concurrence en reprenant une succession aussi rapide de numéros de versions ?

 

L'avenir du navigateur c'est déjà aujourd'hui avec les développements futurs en route !

ff901intro03bis Nous allons passer en revue cette version 9 en mettant l'accent sur les performances JavaScript et HTML5 afin de mieux nous rendre compte quelle place occupe le navigateur de Mozilla face aux quatre autres concurrents. Cependant, il y a fort à parier que nos résultats de tests devront très prochainement remis au goût du jour avec la version 10 déjà entrée dans le canal bêta, la versions11.0 en alpha et la 12 (nightly) encore expérimentale !

 

 

Les améliorations

"Type Inference", c'est jusqu'à 30% de gain de vitesse sur les pages JavaScript les plus lourdes

La principale nouveauté de la version 9, c'est l'ajout au sein du moteur SpiderMonkey de l'inférence de types (Type Inference) pour de meilleures performances. Ces changements sont apportés à JaegerMonkey qui compile à la volée pour SpiderMonkey, le moteur Javascript de Firefox. Selon Mozilla cette méthode de compilation  active par défaut au sein du navigateur accélère les benchmarks, comme Kraken (outil de benchmark de Mozilla) ou V8 (outil de benchmark de Chrome) jusqu'à 30% et procure un gain de vitesse sur les sites lourdement chargés en Javascript. Type Inference doit donc en principe accélérer les chargements multimédias sur les sites qui ont recourt plus que d'usage à des images, des vidéos ou toutes sortes de graphiques.

ff901intro01    ff901news01

 

Continuer à séduire les utilisateurs macs, un point à ne pas négliger !

Selon une étude StatCounter datant de novembre 2011,  les utilisateurs sous Mac OS X privilégient en termes de parts de marché Chrome à 25,69 % et Firefox à 25,33 %. C'est donc un coude à coude qui s'exerce entre les deux navigateurs. Firefox doit continuer à séduire les utilisateurs sous Windows et Linux mais aussi sous Mac OS X. Pour aller dans ce sens, la version 9.01 apporte avec elle deux améliorations pour Mac OS X Lion. La première étant une meilleure intégration du thème avec l'environnement de l'OS et la seconde le support des gestes de navigation à deux doigts avec le Trackpad multi-Touch.

ff901news04    ff901news005

 

Et une quantité d'autres améliorations techniques…

On retrouve d'autres fonctionnalités en guise d'amélioration, la possibilité d'interrogation de la fonctionnalité Do Not Track via une détection JavaScript, la prise en charge améliorée des standards HTML5, CSS et MathML, l'amélioration du support de la propriété CSS text-overflow, des évolutions pour les développeurs (objets XHR, XMLHttpRequest, pour gagner en rapidité pour les sites ou les applications Web qui effectuent beaucoup de requêtes) et bien entendu les corrections de problèmes liés à la sécurité et la stabilité du navigateur.

ff901news03    ff901news02

Performances JavaScript par rapport à la concurrence (SunSpider)

SunSpider 0.9.1 mesure les performances de rapidité JavaScript d'un navigateur en lançant une série de tests portant sur les fonctions mathématiques, la 3D (cube, morph, raytracing), la cryptographie (AES, MD5, SHA1). Précisons que la plupart des services utilisés au quotidien, tels que Gmail, Flickr, YouTube, Yahoo! Mail ou encore Facebook reposent aujourd’hui sur le langage de programmation JavaScript. Ce langage de programmation est donc à la base de nombreuses tâches interactives que nous avons pris l’habitude d’effectuer sur le Web (et encore plus sur le Web 2.0) et est au cœur de tous les navigateurs permettant d’exploiter ces programmes.

Vous trouverez ci-dessous une comparaison des vitesses d'exécution de JavaScript entre Mozilla Firefox 9.01 et les principaux navigateurs concurrents sous Windows 7 :

Firefox 9.01 : 1,21x plus lent qu'IE 9.04

ff901vsIE9

 

Firefox 9.01 : 1,005x plus lent que Chrome 16.0.912.63

ff901vschrome16

 

Firefox 9.01 : 1,014x plus lent que Safari 5.1.2

ff901vssafari

 

Firefox 9.01 : 1,006x plus lent qu'Opera 11.60

ff901vssopera

 

La différence des performances JavaScript SunSpider entre Firefox et ses concurrents tient dans un mouchoir de poche. Cependant, les chiffres parlent d'eux-mêmes, le navigateur de Mozilla est plus lent qu'IE 9, Chrome 16, Safari  5.1.2 et Opera 11.60. Il arrive en dernière position !

Performances JavaScript par rapport à la concurrence (PeaceKeeper)

Peacekeeper développé par Futuremark, repose sur une série de tests JavaScript entre autres et simule en conditions réalistes le surf Internet (navigation, animation, formulaires…) en collectant des données sur divers sites comme YouTube, Facebook, Gmail, Meebo…Plus le score est élevé, plus le navigateur est performant !

Firefox 9.01 : 1 449 points (capacités HTML5 : 6/7)

ff901peacekeeper

 

IE 9.04 : 1 533 points (capacités HTML5 : 3/7)

ie9peacekeeper

 

Chrome 16.0.912.63 : 3 091 points (capacités HTML5 : 7/7)

chromepeacekeeper

 

Safari 5.1.2 : 1 636 points (capacités HTML5 : 1/7)

safaripeacekeeper

 

Opera 11.60 : 2 313 points (capacités HTML5 : 5/7)

operapeacekeeper

 

D'après les tests de Peacekeeper variables en rapport avec la configuration de votre système, les tests JavaScript, DOM (Dynamic Object Model) nous révèlent que Firefox 9.01 arrive en dernière position bien que disposant pourtant d'un fort potentiel de compatibilité HTML 5 de 6/7 (deuxième position derrière Chrome).

Tests HTML5 par rapport à la concurrence (HTML5Test.com)

HTML5test.com teste environ 160 fonctionnalités HTML5 (Doctype, Canvas, Video, Audio, Géolocalisation, formulaire...). Le test donne ensuite une note globale, plus la note est élevée et plus le navigateur est compatible HTML5 :

Firefox 9.01

html5ff9

 

IE 9.04

html5ie9

 

Chrome 16.0.912.63

html5chrome16

 

Safari 5.1.2

html5safari

 

Opera 11.60

html5opera11

 

D'après Les test du site HTML5test.com c'est Google Chrome 16.0.912.63 avec ses 374 points qui est le plus compatible pour le HTML5. Firefox 9.01 (330 points) arrive en deuxième position en quasi-égalité avec Opera 11.10 (329 points).

Tests d'accélération matérielle par rapport à la concurrence (FishIE Tank, Psychedelic)

Nous avons utilisé également en référence de tests pour l'accélération matérielle "FishIE Tank" (avec 1 000 poissons en mouvement) et "PsychedelicBrowsing" (nombre de rotations par minute). Les deux démonstrations sont exécutées en résolution 1 024 x 768 pixels (NVIDIA 8800 GTS, 320 Mo). Plus les chiffres sont élevés, plus l'accélération web est bien gérée par le navigateur, et donc plus le navigateur web est performant.

 

Firefox 9.01 (60 fps, 3 710 rpm)

fishff9    psyff9

 

IE 9.04 (60 fps, 8 320 rpm)

fishie9    psyie9

 

Chrome 16.0.912.63 (3 fps, 485 rpm)

fishchrome16    psychrome16

 

Safari 5.1.2 (5 fps, 23 rpm)

fishsafari5    psysafari5

 

Opera 11.60 (4 fps, 163 rpm)

fishopera116    psyopera116

 

Au "FishIE Tank" (avec 1 000 poissons en mouvement) Firefox 9.01 rivalise en première place avec Internet Explorer 9 avec 60 fps. Par défaut, les autres navigateurs sont à la traîne entre 3 et 5 fps. Au test "PsychedelicBrowsing" le plus grand nombre de rotations par minute va incontestablement à Internet Explorer 9 avec 8 320 rpm. Firefox 9.01 occupe cependant la seconde place avec 3 710 rpm.

Conclusion

Cette version 9.01 est-elle concluante ?

Le navigateur Firefox a de plus en plus de mal à tenir son rang dans la course. Mozilla ne nous avait pas habitué à cela mais, il faut bien l'avouer, cette version 9.0.1 se révèle un cran en dessous de Google Chrome 16, Internet Explorer 9 et d'Opera 11.60 en termes de rapidité JavaScript. Le navigateur se rattrape en revanche en accélération matérielle et pour la prise en compte des fonctionnalités HTML5 (audio/vidéo notamment). Hormis le léger "relooking"  de façade pour MAC OS X Lion, les améliorations ne seront pas immédiatement visibles ou mesurables pour les utilisateurs (améliorée des standards HTML5, CSS et MathML, corrections de nombreuses failles, Type Inference…).

ff901conclu03    ff901conclu02

 

Ce qu'il reste à Firefox…

Les points forts de Firefox sont encore et toujours, pour le moment, la gigantesque bibliothèque de modules complémentaires, la personnalisation de l'interface, un usage raisonnable de la mémoire lorsque plusieurs onglets sont ouverts simultanément, sa disponibilité sur toutes les plateformes de types ordinateurs (Windows, Linux, Mac) et mobiles (Firefox pour Android et Firefox Home pour iPhone) et bien entendu une communauté d'utilisateurs  qui a tendance à s'orienter de plus en plus vers Google Chrome !

ff901conclu01    ff901conclu04

 

Les innovations majeures sont encore à venir !

C'est ce que nous révéleront les développements futurs des versions 10, 11 et 12. Mais on peut déjà parler d'une nouvelle politique de compatibilité des extensions, de l'anti-aliasing WebGL (Web3D), de la prise en charge de l'API Full Screen qui permettra d'afficher directement une application Web en mode plein écran, de versions en 32 et 64 bits dédiées, .... Mais cela suffira-t-il ? A voir.

+ Les plus

  • Amélioration du support des standards HTML5, CSS, MathML
  • Support de l’inférence de types (JavaScript)
  • Fonction "Do Not Track" interrogeable via une requête JavaScript
  • Thèmes MAC OS X Lion plus adapté et navigation avec le trackpad
  • La bibliothèque de modules reste un point fort

- Les moins

  • Performances JavaScript en retrait vs la concurrence
  • Peu de nouvelles fonctionnalités visibles pour Windows et Linux