Comment dépister les causes d'au moins 100% d'utilisation du processeur dans Firefox (sur le bureau)?

4

Certains sites Web obligent Firefox à utiliser en permanence 100% de la CPU. Certains d’entre eux peuvent bien sûr être bloqués et ne jamais être visités, mais d’autres doivent malheureusement être utilisés de temps en temps.

Je veux lutter contre cela, et la première étape consiste à identifier le code JavaScript incriminé (ou peut-être une autre ressource incriminée, qui sait), après quoi il pourrait être possible de bloquer / réécrire de manière sélective ces parties ou peut-être de demander aux auteurs de résoudre les problèmes dans leur code.

Mais comment je fais ça? Les devTools de Firefox ont un inspecteur de performance, mais il ne semble enregistrer que les temps de rendu des images, le temps de réponse, etc., je n'ai pas pu trouver d'informations sur le temps réel utilisé par le processeur, et il est également limité à un seul onglet, autant que j'ai pu dire.

Mettre à jour

J'ai essayé de désactiver toutes les extensions et cela a montré qu'elles ne causaient pas une utilisation à 100% du processeur.

Mise à jour 2

J'utilise déjà uBlock Origin. Nous avons également essayé de bloquer grossièrement les scripts par des domaines tiers pour les sites Web problématiques (en utilisant cette extension), mais dans mon cas, cela reste tel quel ou il se casse complètement. Il me faut donc en quelque sorte profiler javascript globalement pour voir quelle (s) fonction (s) obtient un temps d'exécution insensé.

Sarge Borsch
la source
est-ce que la même chose arrive dans d'autres navigateurs?
Blaine
1
Je voudrais désactiver tous les plugins du navigateur pour prouver que rien n’est sous votre contrôle. Si cela se produit toujours, la première chose à faire est peut-être simplement d’exécuter Process Explorer. Si vous examinez l'onglet Threads du processus firefox.exe, vous pouvez trier par colonne de CPU. A quoi ressemble la pile? Modules intéressants dessus, toujours les mêmes, etc ... Je voudrais installer Debugging Tools for Windows (SDK) pour obtenir le dernier fichier dbghelp.dll - référencez-le dans ProcessExplorer. Mozilla rend leurs symboles disponibles. Il ne s'agit que d'un point de départ et de la visualisation du problème à partir d'un processus général exécuté du point de vue du système d'exploitation.
HelpingHand
@ Blaine n'a pas encore essayé, mais utiliser un autre navigateur n'est pas une option pour moi (au-delà des tests). J'essaie de résoudre le problème dans Firefox. Ou certains autres navigateurs ont des outils de développement plus sophistiqués qui pourraient aider à trouver les données problématiques dans les sites Web?
Sarge Borsch
@EMK bonne suggestion, je vais essayer de désactiver les extensions . (Je n'utilise déjà aucun plugin ). Je n'utilise pas Windows et, idéalement, je recherche des solutions multiplates-formes. En ce moment je suis sur macOS. Je ne peux pas voir l'utilisation du processeur de threads individuels dans Activity Monitor, peut-être serait-il possible de voir dans les utilitaires de ligne de commande (en haut)? Courir topsemble donner des informations très incomplètes…
Sarge Borsch
1
J'ai eu quelques sites qui me rendent fou. Pour un site, chaque fois qu'ils utilisaient ce site Web de polices dans leur script, même mon processeur quad passait à 100%. Le correctif consistait à ajouter quatre nouvelles entrées au fichier HOSTS, [exemple = 127,0,0,0 block.com] pour: "fonts.com" et "fast.fonts.com" (j'ai également ajouté "www." À ces URL). Le prochain correctif pour presque tout le reste, comme wunderground.com, consiste simplement à ajouter l’extension "UBlock Origin", ce qui est incroyable.
DaaBoss

Réponses:

4

Vous pouvez utiliser about:performancepour rechercher l'onglet incriminé, puis utiliser le journal de Ublock pour identifier la cause du taux de CPU élevé.

C'est ainsi que j'ai découvert comment une vidéo youtube intégrée posait problème, car elle continuait à se charger www.youtube.com/yts/jsbin/player_*************/en_US/remote.jsmême si la lecture automatique était désactivée.

Dans ce cas, je l'aurais trouvé encore plus rapidement si j'avais réglé le journal de Ublock sur all(c'est- à -dire tous les onglets) au lieu d'un onglet particulier.

Puisque vous avez mentionné Ublock mais pas l'enregistreur, cela pourrait être intéressant.

Wodanaz Spitfire
la source