1 points par GN⁺ 2023-08-16 | 1 commentaires | Partager sur WhatsApp
  • Firefox est devenu plus rapide que Chrome sur l’ancien benchmark JavaScript SunSpider, mais ce test a depuis largement été remplacé par JetStream
  • Le récent Firefox Nightly News a indiqué que Firefox semblait dépasser Chrome sur SunSpider, et les chiffres publics montrent aussi un avantage pour Firefox
  • La source des benchmarks est AreWeFastYet.com, et la comparaison porte sur un test de performance JavaScript vieux d’environ 10 ans
  • Sur le JetStream 2.0 plus récent et plus exigeant, Google Chrome continue toutefois de devancer nettement Firefox
  • Depuis environ un mois, Firefox a aussi apporté plusieurs améliorations au-delà de la vitesse d’exécution de SunSpider, notamment la vitesse d’envoi HTTP/2

Avantage de Firefox confirmé sur l’ancien SunSpider

  • Les développeurs de Mozilla voient d’un bon œil le fait que Firefox obtienne de meilleurs résultats que Google Chrome sur le benchmark JavaScript SunSpider
  • SunSpider est un benchmark JavaScript vieux d’environ 10 ans, aujourd’hui remplacé par le benchmark JetStream
  • Le récent Firefox Nightly News a indiqué : “We’re now apparently beating Chrome on the SunSpider JavaScript benchmark!”
  • Les chiffres publiés montrent que Firefox prend facilement l’avantage sur Chrome dans cet ancien benchmark JavaScript
  • Les données de benchmark proviennent de AreWeFastYet.com

Chrome conserve l’avantage sur les benchmarks récents

  • Sur le benchmark JetStream 2.0, plus récent et plus exigeant, Google Chrome continue de devancer nettement Firefox
  • Firefox a fortement accéléré l’exécution du benchmark JavaScript SunSpider au cours du dernier mois environ
  • Sur la même période, plusieurs autres travaux ont aussi été menés, dont des améliorations de la vitesse d’envoi HTTP/2
  • Les changements dans les dernières builds Firefox Nightly sont consultables dans Firefox Nightly News

1 commentaires

 
GN⁺ 2023-08-16
Avis de Hacker News
  • Du point de vue d’un ancien ingénieur V8, SunSpider est un benchmark médiocre, et j’ai du mal à croire qu’on le suive encore
    Pendant près de 15 ans, il a orienté l’ingénierie des performances JavaScript dans la mauvaise direction, et poussé les moteurs à mettre en place des astuces d’optimisation étranges qui n’aident pas les sites réels
    V8 s’est éloigné depuis longtemps de la plupart des microbenchmarks : https://benediktmeurer.de/2016/12/16/the-truth-about-traditi...
    Cela ne veut pas dire que les améliorations de performance de Firefox ne sont pas importantes ou bienvenues. Cela veut simplement dire que SunSpider est l’un des pires benchmarks que l’on puisse regarder

    • Pour être précis, on le suit encore dans le sens où il tourne toujours dans le cadre d’anciens tableaux de bord
      Son coût est faible, et il permet parfois de détecter des régressions de performance involontaires
      L’équipe SpiderMonkey est elle aussi entièrement d’accord pour ignorer les microbenchmarks. Elle accorde de l’importance à Speedometer, qui corrèle assez bien avec les performances réelles, et ne regarde dans JetStream2 que les parties nécessaires
      Ce qui est plus ancien que cela n’est pas un objectif, seulement une règle de mesure : c’est bien si les chiffres montent, mais seulement quand c’est un effet de bord de travaux menés pour d’autres raisons
      En particulier, l’amélioration SunSpider visible sur ce graphique est un effet de bord du travail sur Speedometer mené cette année
    • Le lien partagé met en avant Speedometer, où il est déjà connu que Firefox a dépassé Chrome
      https://news.ycombinator.com/item?id=36770883
    • Firefox suit ses performances sur plusieurs benchmarks
      Si l’on regarde ses performances face à Chrome sur plusieurs éléments au cours de l’année écoulée, il est encourageant de voir des améliorations régulières sur un bon nombre d’entre eux
      https://arewefastyet.com/win10/benchmarks/overview?numDays=3...
    • Les benchmarks basés sur de vrais sites semblent être à la fois une bonne et une mauvaise idée
      La bonne raison est évidente, mais la mauvaise est qu’ils créent une boucle de rétroaction. Les gens développent en fonction des performances, et les performances s’améliorent en fonction de ce que les gens développent
      Je serais curieux de savoir comment l’équipe V8 a abordé ce problème
    • Pour être juste, lorsque SunSpider est sorti, il reflétait assez fidèlement les principaux goulets d’étranglement des moteurs JavaScript présents sur le Web à l’époque
      C’était aussi vrai pour V8 ; même si V8 avait publié à son lancement son propre ensemble de benchmarks, celui-ci était trop axé sur l’accès aux propriétés et couvrait insuffisamment le chargement initial des pages, que SunSpider traitait par hasard
      Bien sûr, c’était il y a 15 ans : il est difficile de considérer qu’un benchmark de cette époque reflète encore quelque chose d’utile aujourd’hui, et sa valeur se limite désormais presque uniquement à la détection de régressions
  • J’utilise Firefox sur tous mes ordinateurs et téléphones
    Jusqu’ici, je suis très satisfait de ses performances et j’espère sincèrement qu’elles continueront de s’améliorer. Quand je ne peux pas utiliser Firefox, mon deuxième choix est Brave, et Chromium arrive tout en dernier
    Sur Firefox, je recommande vivement ces extensions : AdNauseam https://addons.mozilla.org/en-US/firefox/addon/adnauseam/, Consent-O-Matic https://addons.mozilla.org/en-US/firefox/addon/consent-o-mat..., Firefox Multi-Account containers https://addons.mozilla.org/en-US/firefox/addon/multi-account..., I don't care about cookies https://addons.mozilla.org/en-US/firefox/addon/i-dont-care-a...
    Comme mentionné plus bas, si vous ne faites pas confiance à Avast, mieux vaut éviter Consent-O-Matic

  • Cela revient à dire à la fois que « Firefox bat facilement Chrome dans un benchmark JavaScript vieux de 10 ans » et que « dans JetStream 2.0, plus récent et plus exigeant, Google Chrome bat toujours facilement Firefox »

    • Sur macOS, Safari surclasse Chrome avec une marge encore plus grande
    • J’aime beaucoup Firefox, mais lire cela me laisse un goût un peu amer
  • Il faut rappeler que SunSpider n’a pas été mis à jour depuis 2013
    JetStream représente mieux les charges de travail JavaScript modernes, mais l’écart se réduit aussi sur ce benchmark

  • Je travaille sur le moteur V8, et c’est un champ de mines de désoptimisation où des choses inattendues ralentissent
    La structure des gestionnaires d’exceptions peut fortement modifier les caractéristiques de performance du code, et async/await, c’est vraiment presque une question de chance. Parfois les Promise sont plus rapides, parfois ce sont les blocs async qui le sont
    Certains ralentissements peuvent être imputés à une spécification médiocre. Je ne comprends pas pourquoi la déstructuration avec ... utilise les itérateurs
    Mais je me demande si l’équipe V8 ne court pas après les benchmarks plutôt qu’après le code réel, qui n’est pas toujours parfaitement écrit

    • Si ... ne pouvait pas utiliser les itérateurs, la puissance des générateurs en serait nettement réduite, en particulier
    • L’équipe V8 ne fait pas ça
      Si les performances de V8 stagnent dans ce benchmark, c’est parce qu’elle ne s’en soucie plus depuis longtemps
      Firefox a malheureusement une raison de s’en soucier. Même si les benchmarks n’ont pas d’importance, avoir l’air à la traîne donne quand même une mauvaise image
    • Ce ne serait pas plutôt l’inverse ? https://v8.dev/blog/real-world-performance
      Il me semble qu’il y avait un article plus récent qui traitait ce sujet avec des chiffres et des exemples, mais je n’arrive pas à le retrouver. C’était peut-être sur le blog de l’équipe chromium/chrome, ou quelqu’un d’autre saura peut-être le retrouver
  • Comme on parle beaucoup ces derniers temps du fait que Chrome devient malveillant, j’ai passé quelques jours à peaufiner mon extension Chrome IPvFoo pour qu’elle fonctionne correctement aussi dans Firefox
    IPvFoo est un outil pour observer la transition vers IPv6. Techniquement, il existait une version Firefox depuis 2017, mais il y avait beaucoup de bugs de compatibilité que j’espérais voir Firefox corriger un jour
    J’ai finalement décidé de contourner les problèmes restants, et la parité fonctionnelle Chrome/Firefox est désormais atteinte à partir d’une base de code commune : https://github.com/pmarks-net/ipvfoo

  • Firefox avec uBO activé est plus de 100 % plus rapide que les navigateurs basés sur Chromium
    Dans les navigateurs basés sur Chromium, uBO ne fonctionne pas correctement à cause des restrictions

  • Les améliorations sont réelles
    Je viens de tester avec le tout dernier Speedometer 3.0, encore non publié mais open source, en utilisant la dernière version de chaque navigateur
    Firefox Nightly (Gecko) 11.6, Safari TP (WebKit) 11.4, Chrome Canary (Blink) 9.9
    https://github.com/WebKit/Speedometer

  • Honnêtement, pour moi, Firefox restera un second choix tant que ses outils de débogage ne seront pas au niveau de ceux de Chrome et que l’UI des onglets ne sera pas un peu plus peaufinée
    J’aimerais utiliser Firefox au quotidien, mais quand je le fais j’ai l’impression de développer plus lentement

    • Moi, au contraire, je trouve les outils de développement de Firefox bien plus faciles à utiliser
      Je n’aime pas le design de Firefox, mais on peut corriger ça avec des thèmes et des extensions
    • Si c’est l’UI qui pose problème, il suffit de bricoler un peu userchrome.css
      C’est ce que j’ai fait pour utiliser treestyletab comme je le voulais, et si l’UI vous importe, userchrome.css offre pas mal de liberté
      En plus, je le synchronise entre mes appareils avec Nextcloud, donc je n’ai pas besoin de le modifier séparément sur chaque machine
    • J’aimerais aussi que l’UI change un peu dans le même esprit
      Pas besoin que ce soit sophistiqué ; quelque chose d’aussi simple que Chromium par défaut me conviendrait
  • J’ai récemment constaté une régression de performance dans Firefox et, en regardant de plus près pour déposer un rapport de bug, j’ai vu que les outils de suivi des performances, assez publics, semblent recevoir de l’attention
    Le fait de pouvoir téléverser et partager facilement des profils de trace aide aussi : https://firefox-source-docs.mozilla.org/testing/perfdocs/ind...
    Si les performances de Firefox vous intéressent, un blog dédié donne régulièrement des nouvelles : https://blog.mozilla.org/performance/
    Si vous trouvez que Chromium est nettement plus rapide sur un site web précis, il existe https://webcompat.com/ pour faire un signalement simple. Cela dit, même en étant habitué aux GitHub Issues, je trouve Bugzilla meilleur que je ne l’aurais cru