Kraken, un test de mesure taillé sur mesure par la Fondation Mozilla pour Firefox 4 ?

C’est du moins ce que dit Pierre, d’Opera-Fr.com dans son commentaire.

Le test est disponible à cette adresse : http://krakenbenchmark.mozilla.com/

J’ai donc voulu vérifier cette affirmation, en me basant sur les dernières versions de développement disponible de Chromium, d’Opera et bien entendu de Mozilla Firefox 4.0 pré-béta7.

Voici les résultats :

  • Minefield 4.0 pré-beta7 : 14789,5 ms
  • Opera 10.70, révision 9047 : 17229,4 ms => 16,49% plus lent que Minefield
  • Chromium 7.0.517.0 : 20009,9 ms => 35,29% plus lent que Minefield

Minefield 4.0 prébeta7 avec Kraken

préversion Opera 10.70 avec Kraken

Chromium 7 - Kraken

Donc, optimisé ? Voici ce que dit la présentation du test Kraken :

Kraken focuses on realistic workloads and forward-looking applications. We believe that the benchmarks used in Kraken are better in terms of reflecting realistic workloads for pushing the edge of browser performance forward. These are the things that people are saying are too slow to do with open Web technologies today, and we want to have benchmarks that reflect progress against making these near-future apps universally available.[…]Kraken will evolve quickly over the coming weeks and months as we build out its test suite and continue to push forward the capabilities of the open Web, as we make the workloads more realistic and varied.

Ce qui donne traduit rapidement :

Kraken se concentre sur des charges de travail réalistes et vers les applications à venir. Nous pensons que les critères utilisés dans Kraken sont meilleurs en termes de charge de travail reflétant réaliste pour repousser encore les limites de performances du navigateur. Ce sont des choses que les gens disent être trop lents à avoir avec les technologies du Web ouvert aujourd’hui, et nous voulons avoir des repères qui reflètent les progrès par rapport à ces applications qui seront universellement disponibles dans un futur proche.[…]Kraken évoluera rapidement au cours des prochaines semaines et des mois que nous construisons sa suite de test et en continuant à faire progresser les capacités du web ouvert, ce que nous ferons avec de la charge de travail plus réaliste et plus variée.

Je laisse chacun juge de la partialité du test. S’il était aussi partial, les autres navigateurs seraient largement plus loin. Maintenant, à voir si ce test en plus sera le test de trop !

Compilons la version améliorée de Mozilla Firefox 4.0 pré-beta 6…

Ayant lu un article sur OSNews sur Mozilla qui a annoncé la disponibilité d’une version de test avec le moteur de compilation à la volée de Javascript, j’ai voulu faire compiler la version par moi-même, j’ai récupéré le code source correspondant :

[fred@fredo-arch fox]$ hg clone http://hg.mozilla.org/tracemonkey/ src/

Et ensuite, j’ai utilisé le .mozconfig suivant :

#
# See http://www.mozilla.org/build/ for build instructions.
#

export AUTOCONF=autoconf-2.13

. $topsrcdir/browser/config/mozconfig

mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-fx

# Options for ‘configure’ (same as command-line options).
ac_add_options –enable-optimize
ac_add_options –disable-debug
ac_add_options –disable-tests
ac_add_options –with-ccache

Une fois la version disponible, j’ai comparé la version « classique » compilé ce matin, et la nouvelle version disponible.

Version classique : 1153 points

1153 points dans v8 avec Firefox "classique"

Version expérimentale : 1723 points soit 49,43% de plus.

1723 points dans v8 avec Firefox le compilateur JIT activé

Evidemment, on est loin de Google Chrome qui dépasse largement ce score – 5289 points environ – mais il y a du progrès 🙂

5289 points dans v8 sous chromium

La suite au prochain épisode 😉

En vrac’ rapide et libre avant le week-end.

Comme le week-end approche, un petit en vrac’ se justifie.

C’est tout pour aujourd’hui. Bon week-end

Une nouveauté visuelle de Mozilla Firefox 4.0beta6 : un bouton « arrêt, rechargement, chargement » tout-en-un

Alors que la 5ième béta de Mozilla Firefox est prévue pour le 7 septembre, la 6ième béta est en cours, comme l’on peut voir avec l’identifiant d’une compilation effectuée ce matin vers 10 h 30 : Mozilla/5.0 (X11; Linux x86_64; rv:2.0b6pre) Gecko/20100903 Firefox/4.0b6pre

Dans cette avant-dernière béta (7 bétas sont prévues), une nouveau graphique va simplifier la barre de tache : un bouton tout en un au niveau de la barre d’adresse, qui permet de lancer le chargement ou le rechargement, voire d’arrêter le chargement d’une page en cours.

Une image valant mieux que mille mots, voici où se trouve ce bouton :

Un aperçu du bouton en fin de barre d'adresse dans Mozilla Minefield 4.0b6pre

Pour info, cet ajout d’icone, c’est le bug 544816. En ce qui concerne le « Bouton » Firefox en haut à gauche de la fenêtre, c’est le bug 585370

v8 ou Nitro… Lequel des deux est le plus rapide et le plus respectueux de JavaScript et de ses normes ?

Dans un article récent, je parlais du progrès fait par la pré-beta5 de Mozilla Firefox 4.0, alias Minefield.

J’ai voulu voir où en était les deux autres grands noms des moteurs de rendu du logiciel libre, à savoir Chromium (et son moteur de Javascript v8), et Webkit (et son moteur de Javascript Nitro).

J’ai donc fait compilé les deux via AUR, aussi bien pour chromium-browser-svn et webkitgtk-svn. En sachant que pour le second, je ne l’ai pas installé, histoire d’éviter des conflits avec les logiciels de ma machine.

La compilation du code source de Chromium demande pas mal d’espace… 4,5 Go environ…


[fred@fredo-arch chromium-browser-svn]$ pwd
/home/fred/download/chromium-browser-svn
[fred@fredo-arch chromium-browser-svn]$ du -sh src/
4,5G src/

Webkit est quant à lui, largement moins gourmand : à peine 720 Mo.


[fred@fredo-arch webkitgtk-svn]$ pwd
/home/fred/download/webkitgtk-svn
[fred@fredo-arch webkitgtk-svn]$ du -sh src/
722M src/

Une fois les deux logiciels compilés, j’ai utilisé v8 benchmark, sputnik (pour vérifier le niveau de compatibilité avec les normes définies du langage javascript), et html5test, pour finir, histoire de voir le niveau d’avancement de ce nouveau standard du langage html.

Chromium, qui se définit comme une version 7.0.501 (7ième version, déjà, en l’espace de quoi, deux ans ?), explose largement le score au niveau du Javascript… 4961 points, soit 4,45 fois plus rapide que Mozilla Firefox 4.0b5pre… Autant dire que la Fondation Mozilla a de la marge.

Score de v8 avec Chromium

Coté respect des normes javascript, le score est plutôt bon : 5109/5246, soit un niveau de respect de… 97,38%.

Score de Sputnik avec Chromium

Enfin, en ce qui concerne html5test, Chromium fait mieux que Mozilla Firefox, avec un score de 222 points et 10 points de bonus.

Score de html5test avec Chromium

En ce qui concerne Webkit, j’ai utilisé l’outil GtkLauncher, qui offre une interface basique pour Webkit.

[fred@fredo-arch Programs]$ pwd
/homefred/download/webkitgtk-svn/src/webkit-build/Programs
[fred@fredo-arch Programs]$ ./GtkLauncher &

Le score du moteur de Javascript bien que moindre que celui de v8 reste honorable : 2984 points au benchmark v8, soit 2,67 fois le score de Mozilla Firefox 4.0b5pre. On comprend pourquoi la Fondation Mozilla veut intégrer Nitro dans son code source 😉

Score de v8 avec Webkit

Coté sputnik, le score est vraiment bon : 5069/5246, soit un niveau de respect de 96,62%

Score de Sputnik avec Webkit

Enfin, en ce qui concerne html5, le score est inférieur à celui de Mozilla Firefox et de Chromium, avec seulement 195 points et 12 points de bonus.

Score de html5test avec Webkit

J’allais oublier, le score de Mozilla Firefox 4.0b5pre pour sputnik : 4978/5246, soit un niveau de respect de 94,89%

Score de Sputnik avec Mozilla Firefox 4.0b5pre

Mis à part la vitesse d’exécution, le respect du html5 et des normes javascript sont une marque de fabrique de moteurs de rendu libre. Les moteurs de rendus non-libre ? Je ne saurais dire, je ne les utilise pas 😉