La guerre du Javascript vient-elle de finir ?

En septembre dernier, dans un article, je parlais d’une guerre à la vitesse d’exécution à Javascript.

A l’époque, le podium – basé sur l’outil de mesure v8 benchmark version 5 – était constitué par Chromium 7 (qui affichait 5052 points), suivi d’Opera 10.70 (3243 points) et de la pré-béta6 de Mozilla Firefox 4.0 (1859 points).

Depuis, l’outil de mesure a été corrigé, passant de la version 5 à la version 6. Et comme la 1ière release candidate de Mozilla Firefox 4.0 est sorti, j’ai voulu faire un bilan.

En pourcentage, Chromium 7 avait 35% d’avance sur Opera 10.70 et 63% sur Mozilla Firefox 4.0 pré-béta6… Autant dire qu’à cette époque lointaine Chromium menait de la tête et des épaules.

J’ai donc pris les dernières versions en date – et en 64 bits pour m’accorder avec mon Archlinux 64 bits, tournant le PC suivant : AMD Athlon X2 215, 4 GiO de mémoire vive, 500 Go de disque, avec une carte Nvidia GeForce 210 – à savoir :

  • Une compilation maison du code source de Mozilla Firefox 4.0rc1 (car pas de version linux 64 bits encore !)
  • Chromium 10 disponible sur les dépots d’Archlinux
  • Opera 11.01, 64 bits.

Pour compiler le code source de Mozilla Firefox 4.0rc1, j’ai récupéré le code source avec la ligne de commande suivante :


[fred@fredo-arch fx4]$ hg clone --verbose http://hg.mozilla.org/releases/mozilla-2.0/ src

Ensuite, j’ai utilisé le fichier .mozconfig suivant :


export AUTOCONF=autoconf-2.13
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../objdir-fx
mk_add_options MOZ_MAKE_FLAGS=-j4
ac_add_options --enable-application=browser
ac_add_options --enable-optimize
ac_add_options --disable-debug
ac_add_options --disable-tests
ac_add_options --enable-official-branding
ac_add_options --with-ccache

Après avoir compilé le logiciel (make -f client.mk build), j’ai lancé l’outil de mesure v8 benchmark. Le score obtenu est de 3773 points.

3773 points - v8 - Mozilla Firefox4.0rc1

J’ai lancé ensuite Chromium 10 sur le même outil de mesure. Son score ? 4080 points, seulement, aurais-je tendance à dire…

4080 points - v8 - Chromium 10

Pour finir, j’ai lancé Opera 11.01. Son score est un petit peu décevant. Seulement 2913 points.

2913 points - v8 - Opera 11.01

Donc, le classement est légèrement modifié dans son affichage, mais vraiment chamboulé au niveau des résultats…

Ce qui donne : Chromium 10, suivi de Mozilla Firefox 4.0rc1 avec seulement 7,5% de moins et Opera distancé à plus de 28% de Chromium.

La guerre de la course à la vitesse est décidément bien terminée… Maintenant, la course au respects des normes du W3C ? 😀

13 réflexions sur « La guerre du Javascript vient-elle de finir ? »

  1. Salut Fred,

    > »Donc, le classement est légèrement modifié dans son affichage, mais vraiment chamboulé au niveau des résultats… »
    Faut se méfier des conclusions hâtives résultant d’un simple test rapide sur un seul benchmark 😀
    Certains tests Javascript, comme ce bon vieux Progressive Raytracer de nontroppo ( http://nontroppo.org/timer/progressive_raytracer.html ) pourrait laisser croire qu’Opera est plus rapide que les autres (et de loin, comparé à Firefox 4)
    http://files.getwebb.org/view-cre65wgz.html

    Accessoirement, je ne constate pas les mêmes écarts entre les 3 nav’ sur le bench V8 ( http://v8.googlecode.com/svn/data/benchmarks/v6/run.html )
    http://files.getwebb.org/view-cre65wgy.html
    Tout ça avec Opera 11.10.2033.0, Mozilla/5.0 (Windows NT 5.1; rv:2.0b13pre) Gecko/20110310 Firefox/4.0b13pre et Chromium 11.0.697.0 (77441) en configuration par défaut, sous XP-SP3 (Intel Core2Duo E8400, 2Go RAM)
    Mais je crois qu’on avait déjà constaté ça l’aut’fois.

    Bon, allez, on dit que la guerre est pas finie, same player, shoot agin <:o)

    @+

    Pierre

    1. Surtout que tu as utilisé Chromium 11, ce qui fausse les résultats. Tu n’as pas la possibilité d’utiliser un chromium / chromium 10 ?

      Histoire de comparer ? 😉

      Idem pour Opera, j’ai utilisé la build 1190, pas la 2033.

      Donc, versions différentes, résultats différents. Donc, refait les tests avec Opera 11.01 (build 1190) et Chromium 10.

      J’attends avec impatience tes résultats sur les MÊMES versions que celle que j’ai utilisé 🙂

  2. Hello Fred,

    Viens de tester sur ma machine qui tourne sous debian squeeze 64 bits (core i7 860 4GB RAM / nvidia gtx 260)

    Chrome 10.0.648.133 beta => 6203
    Minefield 4.0b13pre => 5220

    War is not completely over 🙂

  3. > »Surtout que tu as utilisé Chromium 11, ce qui fausse les résultats. »
    Fred, tu m’as pas compris 😀
    Les résultats, en valeurs absolues, n’ont pas grande importance dans mon commentaire… Tes résultats n’ont pas de « justesse » particulière et ne sont pas plus faux que les miens.

    > »Donc, versions différentes, résultats différents. »
    Oui, comme il doit y avoir des différences évidentes liées à l’OS, au processeur, à la mémoire…
    Et pourquoi utiliser une nightly de Firefox et pas les dernières versions de dev’ des autres (je plaisante, hein, ça n’a aucune importance) ?

    > »J’attends avec impatience tes résultats sur les MÊMES versions »
    Tu me demandes de downgrader/régresser de version… Pourquoi pas aussi installer un Linux sur un Athlon ?
    Je préfère attendre que tu refasses le test sur les prochaines versions et sur un bon vieux Windows 7 motorisé par un p’tit processeur Intel !
    Et là, les résultats seront aussi, encore, à relativiser avant d’enterrer la hache de guerre 😀

    @+

    Pierre

    1. Oui, comme il doit y avoir des différences évidentes liées à l’OS, au processeur, à la mémoire…
      Et pourquoi utiliser une nightly de Firefox et pas les dernières versions de dev’ des autres (je plaisante, hein, ça n’a aucune importance) ?

      Complètement faux, et tu le sais très bien. Je le sais très bien. Il m’a suffit de suivre le développement de Mozilla Firefox 4 pour voir le gain de vitesse d’interprétation d’un béta à l’autre?

      Tu me demandes de downgrader/régresser de version… Pourquoi pas aussi installer un Linux sur un Athlon ?

      Juste le logiciel, histoire de partir sur des versions IDENTIQUES. Trop demander ?

      Je préfère attendre que tu refasses le test sur les prochaines versions et sur un bon vieux Windows 7 motorisé par un p’tit processeur Intel !

      Quand il gèlera en enfer.

      Je ne dirais qu’une chose : tu veux comparer des pommes et des oranges. J’ai pris des versions FACILEMENT disponibles, tu utilises des bétas pour deux logiciels, dont moins accessibles => A toi de voir qui de nous deux dans ce cas a été le plus facilement reproductible.

      Installe ne serait-ce qu’une machine virtuelle linux, et compare les 3 logiciels. On verra bien les résultats.

  4. > »Complètement faux, et tu le sais très bien. »
    Tu penses qu’il n’y a pas de différences possibles liées à l’OS ou au processeur ? À quoi bon alors s’astreindre à utiliser des versions strictement identique (enfin, juste le numéro sur l’étiquette) de logiciels si les OS et les caractéristique et perf’ de la machine induisent un biais ?

    > »des versions IDENTIQUES. Trop demander ? »
    C’est pas que c’est trop, c’est que c’est pas très cohérent de demander ça ^^
    Surtout si tu cherches une « vérité pacificatrice » dans ces chiffres 😀
    Tu penses qu’un Opera 10.01.1190 en 64 bits pour Linux est IDENTIQUE à une version d’Opera 11.01.1190 en 32 bits pous Windows ?

    > »tu veux comparer des pommes et des oranges. »
    Je ne veux pas comparer, je voulais te sortir d’autres chiffres, juste pour te montrer qu’il était impossible d’en tirer des conclusions très précises. Tu le dis toi même d’ailleurs, ces chiffres bruts (ou même les écarts) peuvent fluctuer d’une alpha à l’autre ou comme tu l’as vu avec le commentaire de chalten07, d’une machine à l’autre 😀

    > »tu utilises des bétas pour deux logiciels, dont moins accessibles »
    Non, j’utilise les dernières versions de développement disponibles, donc ni alpha, ni beta, ni finale… Elles me sont toutes aussi accessibles les unes que les autres. Toi, tu compares une nigthly de Firefox avec des versions dite finales ou stables de Chrome et Opera. Pourquoi pas. C’est si difficile de télécharger/installer du Chrome ou de L’Opera sous Linux ?

    > »Installe ne serait-ce qu’une machine virtuelle linux, et compare les 3 logiciels. On verra bien les résultats. »
    Ils seront forcément différents de nos autres résultats et il sera pas aisé de dire si une variation de perf’ sur v8 est liée au navigateur, à l’OS, à l’émulateur, à la machine et dans quelles proportions…

    Au fait, qu’est ce qu’ils donnent, juste par curiosité guerrière, tes navigateurs de test sur le Progressive Raytracer ?

    @+

    Pierre

    1. Tu penses qu’il n’y a pas de différences possibles liées à l’OS ou au processeur ? À quoi bon alors s’astreindre à utiliser des versions strictement identique (enfin, juste le numéro sur l’étiquette) de logiciels si les OS et les caractéristique et perf’ de la machine induisent un biais ?

      Je vais rester courtois en te demandant : est-ce que tu me prends pour un idiot ?

      Tu as utilisé des versions de développement, une 11.10 pour Opera, au lieu de la 11.01. Autant dire que le code a du être amélioré entre temps.

      Surtout si tu cherches une « vérité pacificatrice » dans ces chiffres 😀
      Tu penses qu’un Opera 10.01.1190 en 64 bits pour Linux est IDENTIQUE à une version d’Opera 11.01.1190 en 32 bits pous Windows ?

      Donc, tu me dis que le code d’Opera n’a pas de tronc commun entre deux plateformes ? Ah ? Tu me prends vraiment pour un CON. Désolé, mais je nettoyais l’arme et le coup est parti tout seul.

      Envoyé le 12/03/2011 à 12:33

      > »Complètement faux, et tu le sais très bien. »
      Tu penses qu’il n’y a pas de différences possibles liées à l’OS ou au processeur ? À quoi bon alors s’astreindre à utiliser des versions strictement identique (enfin, juste le numéro sur l’étiquette) de logiciels si les OS et les caractéristique et perf’ de la machine induisent un biais ?

      > »des versions IDENTIQUES. Trop demander ? »
      C’est pas que c’est trop, c’est que c’est pas très cohérent de demander ça ^^
      Surtout si tu cherches une « vérité pacificatrice » dans ces chiffres 😀
      Tu penses qu’un Opera 10.01.1190 en 64 bits pour Linux est IDENTIQUE à une version d’Opera 11.01.1190 en 32 bits pous Windows ?

      Je ne veux pas comparer, je voulais te sortir d’autres chiffres, juste pour te montrer qu’il était impossible d’en tirer des conclusions très précises. Tu le dis toi même d’ailleurs, ces chiffres bruts (ou même les écarts) peuvent fluctuer d’une alpha à l’autre ou comme tu l’as vu avec le commentaire de chalten07, d’une machine à l’autre

      Il est vrai qu’Opera 11.01 est une alpha. Tu es d’une mauvaise foi confondante…

      Ils seront forcément différents de nos autres résultats et il sera pas aisé de dire si une variation de perf’ sur v8 est liée au navigateur, à l’OS, à l’émulateur, à la machine et dans quelles proportions…

      Tu auras toujours les mêmes proportions à peu de chose près.

      Quant à ce test, je n’en ai jamais entendu parler.

      Continue de me prendre pour un CON, et TOUS tes commentaires seront détruits à vue. J’en ai marre de ta mauvaise foi congénitale.

  5. > »Tu as utilisé des versions de développement, une 11.10 pour Opera, au lieu de la 11.01.  »
    Oui, comme toi tu utilises des versions de développement et des versions finales pour jouer un test, où est le problème ?

    > »Autant dire que le code a du être amélioré entre temps. »
    Ou pas. Les dernières 11.10 sont pas mal buguées pour le moment… J’ai pas remarqué de gros gain de rapidité en JS depuis la première v11 et même des weeklies récentes d’Opera légèrement plus lentes sur certains tests. Tu pourras t’en convaincre quand tu trouveras une 11.10 facilement installable (donc quand les propriétaires de tes app’store préférés décideront de la mettre à ta disposition) 🙂
    Tu constateras que la différence de perf’ sur les tests JS à la mode sont négligeables entre ces v11. Ça doit être pareil avec Chrome, il peut pas faire des étincelles indéfiniment, même sur son test « maison ».

    > »tu me dis que le code d’Opera n’a pas de tronc commun entre deux plateformes ? Ah ? »
    Je te dis juste que les versions 64bits et 32bits peuvent avoir des performances différentes, de même que des versions tournant sous Linux et sous Windows. Mais tu n’a pas l’air d’imaginer que ça pourrait « fausser » les résultats, peut-être dans des proportions plus importantes qu’entre deux numérotation voisines d’un même logiciel.

    > »Il est vrai qu’Opera 11.01 est une alpha. »
    Peut importe… ne te polarise pas là dessus… Il n’y a pas toujours de gros écarts entre deux versions contrairement à ce que tu peux croire et, à version quasiment similaires, mais sur des machine différente, il peut y avoir des écarts inattendus (voir chalten07 )

    > »Quant à ce test, je n’en ai jamais entendu parler. »
    Là, c’est toi qui me prend pour un perdreau de six semaines http://frederic.bezies.free.fr/blog/?p=4472 😀
    Tu penses que ce dont on ne parle pas n’est pas significatif ou pertinent ou utile ?

    > »J’en ai marre de ta mauvaise foi »
    Si tu relis bien, mon propos est surtout pour éviter ou relativiser toute foi, surtout lorsqu’elle émane de chiffres.

    Et je ne te prends pas pour un con, non, désolé.

    @+

    Pierre

    1. 1) La Release Candidate est une version quasiment finale, d’où son nom.

      2) Il y a des paquets sur AUR (qui n’est pas un app store) pour Opera. Mais comme je te l’ai déjà dit, j’ai perdu tout intérêt dans Opera depuis pas mal de temps.

      3)

      Je te dis juste que les versions 64bits et 32bits peuvent avoir des performances différentes, de même que des versions tournant sous Linux et sous Windows. Mais tu n’a pas l’air d’imaginer que ça pourrait « fausser » les résultats, peut-être dans des proportions plus importantes qu’entre deux numérotation voisines d’un même logiciel.

      Surtout que dans le cas de Mozilla Firefox, la majeure partie du code est commune aux deux versions. Il ne doit pas y avoir autant de différence que cela au final.

      4)

      Peut importe… ne te polarise pas là dessus… Il n’y a pas toujours de gros écarts entre deux versions contrairement à ce que tu peux croire et, à version quasiment similaires, mais sur des machine différente, il peut y avoir des écarts inattendus (voir chalten07 )

      Bien au contraire. Suivant depuis plus de 10 ans le développement de navigateurs web, je sais à quel point les alphas sont importantes dans le développement de technologies liés à la vélocité des fonctionnalités.

      5)

      Là, c’est toi qui me prend pour un perdreau de six semaines http://frederic.bezies.free.fr/blog/?p=4472
      Tu penses que ce dont on ne parle pas n’est pas significatif ou pertinent ou utile ?

      Jette un oeil à la liste, monsieur le perdreau.

      Et je ne te prends pas pour un con, non, désolé.

      Serais-je paranoïaque ?

  6. > »La Release Candidate est une version quasiment finale, d’où son nom. »
    La version d’Opera que j’ai utilisée est quasiment une finale aussi … 11.10 est annoncée pour mercredi. Et au rythme de Chrome, toutes les versions sont « quasiment des finales » aussi, hein 😉

    > »Il y a des paquets sur AUR (qui n’est pas un app store) pour Opera. »
    Enfin, c’est un entrepôt virtuel où tu peux trouver « facilement » des versions d’Opera ailleurs qu’à l’usine norvégienne… Sur le FTP d’Opera tu as bien plus de choix, mais de nos jours, ftp c’est p’t’être « compliqué » pour un Linuxien 😉

    > »j’ai perdu tout intérêt dans Opera depuis pas mal de temps. »
    Pourquoi alors le tester et te prétendre « déçu » du résultat obtenu ?
    Et laisser un lien relatif à Opera sur ce blog plutôt orienté « libre » ?
    J’ai vraiment du mal à te cerner.

    > »la majeure partie du code est commune aux deux versions. Il ne doit pas y avoir autant de différence. »
    Tu penses donc qu’un code commun offre les même performances quel que soit l’OS, les options de compilation, les capacité de la machine sur lequel il tournera ?

    > »Suivant depuis plus de 10 ans le développement de navigateurs web, je sais à quel point les alphas sont importantes dans le développement de technologies liés à la vélocité des fonctionnalités. »
    Tu me lis pas ou quoi ? J’ai pas dit que les alpha étaient pas importantes mais que, de l’une à l’autre, ou même entre quelques bêtas de Firefox, il n’y a pas toujours de gros écarts de perf’…

    > »Jette un oeil à la liste »
    Quelle liste ? Je t’avais parlé du test Raytracer JS dont tu dis n’avoir jamais entendu parler dans les commentaires de ton ancien article. J’aurais dû mettre un lien plus précis : http://frederic.bezies.free.fr/blog/?p=4472&cpage=1#comment-13222

    > »Serais-je paranoïaque ? »
    Partiellement amnésique ?

    @+

    Pierre

    1. La version d’Opera que j’ai utilisée est quasiment une finale aussi … 11.10 est annoncée pour mercredi. Et au rythme de Chrome, toutes les versions sont « quasiment des finales » aussi, hein 😉

      Merci pour l’info. Quant à Chrome, c’est limite de la folie douce, histoire d’occuper le terrain médiatique.

      Enfin, c’est un entrepôt virtuel où tu peux trouver « facilement » des versions d’Opera ailleurs qu’à l’usine norvégienne… Sur le FTP d’Opera tu as bien plus de choix, mais de nos jours, ftp c’est p’t’être « compliqué » pour un Linuxien 😉

      Pas franchement. Tu trouves juste des recettes pour créer des paquets.

      Quant au coté « compliqué », j’adore cela quand on voit l’usine à gaz qu’est devenu Opera au fil des versions.

      Pourquoi alors le tester et te prétendre « déçu » du résultat obtenu ?
      Et laisser un lien relatif à Opera sur ce blog plutôt orienté « libre » ?
      J’ai vraiment du mal à te cerner.

      1) Exhaustivité.
      2) Lien détruit.

      Quelle liste ? Je t’avais parlé du test Raytracer JS dont tu dis n’avoir jamais entendu parler dans les commentaires de ton ancien article. J’aurais dû mettre un lien plus précis :

      Full : 27,71 secondes sur ma machine avec Mozilla Firefox 4.0 post-rc1. Basic ? 14,27 secondes.

      Et sur le logiciel privateur qu’est Opera 11.01 – car je reste sur les stables quand je ne peux pas faire compiler le code source – voici les résultats :

      Basic : 0,752 ; full 15,2

      Pour la dernière remarque, je pense que je suis encore un peu jeune pour que la maladie d’Alzheimer ne m’attaque, du moins, je l’espère.

  7. > »Merci pour l’info. »
    Enfin, pour mercredi, ça sera que de la beta 😉 Ça me rassure d’un autre coté…

    > »j’adore cela quand on voit l’usine à gaz qu’est devenu Opera au fil des versions. »
    Opera est fonctionnellement très riche et très personnalisable, ça n’en fait pas plus une usine à gaz qu’un IE ou Firefox ou Chrome doté de quelques extensions. Il peut s’utiliser de manière tout à fait banale, comme Firefox ou IE. Après si tu as besoin d’un client de mail, NNTP, IRC, Bittorrent, d’un serveur d’appli ou de partage, de widget, d’outils de développement et quelques autres bricoles, t’a pas besoin de chercher/télécharger/installer… yakakliké ! Mais bon, je pourrais en parler des lignes et des lignes alors que tu n’as pas concrètement définis ce coté usinagazesque, donc je vais m’arrêter là en attendant un peu plus de détails, si besoin (mais faut pas que ça t’énerve non plus, ça fini souvent comme ça entre nous 😀 )

    > »1) Exhaustivité. »
    C’est bô, m’enfin t’as testé que 3 navigateurs, hein.

    > »2) Lien détruit. »
    Ça faisait un peu « Cherchez l’intrus », ici, je trouve. Merci. <:o)

    @+

    Pierre

Les commentaires sont fermés.