10 votes

WindowServer utilise beaucoup de CPU, avec des pics lors du déplacement du curseur sur un MacBook Big Sur M1

Le processus "WindowServer" utilise un temps de CPU excessif sur mon MacBook Pro 2020 M1 exécutant Big Sur 11.2.1. Au repos, il utilise 15 à 25 % du temps processeur. Lorsqu'il déplace le curseur de la souris, il passe à 30-50% du temps CPU. Cela semble causer un ralentissement du système sous charge et réduire l'autonomie de la batterie.

Il y a quelques autres fils de discussion et questions sur Internet à propos de l'utilisation élevée de l'unité centrale de WindowServer, mais ils concernent tous des versions plus anciennes de MacOS sur des Macs plus anciens. J'ai essayé certaines des suggestions telles que :

  • Recherche d'une journalisation excessive de WindowServer et désactivation de ces journaux - il ne semble pas y avoir de journaux excessifs.
  • Activation du mode de transparence réduite -- sans effet
  • Désactivation des applications qui affichent des mises à jour dans la barre de menu -- aucun effet
  • Fermeture de toutes les applications sauf top dans un terminal -- aucun effet

Il semble donc qu'il s'agisse d'un problème différent, peut-être spécifique aux Mac M1 ou à Big Sur. Quelle en est la cause et comment peut-on l'atténuer ?

6voto

djo Points 61

Juste pour partager la même expérience sur un Intel Macbook Pro 2020 utilisant la dernière version de Big Sur (11.2.2), j'ai un processus WindowServer qui tourne au ralenti à ~15% CPU et qui monte à ~50% dès que je commence à utiliser le trackpad (comme un geste rond continu sur le trackpad pendant 20/30 secondes). J'ai signalé le problème dans l'Apple Feedback Assistant FB8974295 le 18 janvier, mais je n'ai toujours pas reçu de réponse d'Apple.

Sur Activity Monitor, le processus ayant le temps de CPU le plus élevé est WindowServer (et de loin).

3voto

rybosome Points 1829

Big Sur présente de nombreux problèmes connus liés aux performances de l'interface utilisateur. Il est presque certain que vous rencontrez l'un de ces bogues, et il est donc peu probable que vous puissiez y remédier par vous-même. Nous pouvons essayer de confirmer ou d'infirmer cette hypothèse si vous le souhaitez.

Cela se produit-il si vous êtes en mode sans échec ? ( Shift pendant le démarrage) Si c'est le cas, procédez comme suit en mode sans échec. Sinon, faites-le lorsque le problème survient.

  1. Exécutez la commande suivante pour activer la symbolisation du noyau : sudo nvram boot-args="keepsyms=1" (cela peut vous obliger à désactiver SIP d'abord ).
  2. Redémarrez votre machine et n'ouvrez aucune application à l'exception de Terminal .
  3. Faites le minimum requis pour reproduire le problème.
  4. En Terminal Exécutez le programme suivant, en veillant à ne l'exécuter que pendant la période où vous constatez un ralentissement du système. (En particulier, faites PAS avoir Moniteur d'activité (le moteur ne fonctionne pas lorsque vous effectuez cette opération) : sudo spindump -reveal -noProcessingWhileSampling
  5. Après avoir attendu 10 secondes pour collecter un échantillon et une minute ou deux pour symboliser et formater, vous obtiendrez un fichier dans le dossier /tmp/spindump.txt qui contient une image de chaque processus.
  6. Télécharger le fichier sur PasteBin ou un endroit équivalent et nous pourrons jeter un coup d'œil pour voir ce qui cause les pics d'utilisation de l'unité centrale.

0voto

Oskar Points 1242

Le terminal est livré avec quelques réglages qui peuvent amplifier l'effet. Je fermerais toutes vos sessions de terminal et en ouvrirais une qui n'a pas de défilement arrière illimité. Ensuite, dans un seul shell, lancez top -u -s 300 et s'en aller.

Au bout de 10 minutes, vous devriez avoir une bonne idée de l'utilisation du processeur en veille.

Le processus WindowServer réagit à tout ce qui peut être dessiné à l'écran, même si cela ne s'affiche pas. Les applications réduites, les applications fonctionnant dans le dock (regarder le haut du terminal se mettre à jour lorsqu'il est docké), les applications cachées, les navigateurs exécutant du code dans des onglets qui ne sont pas visibles, tout cela doit être traité en arrière-plan.

Il n'est pas immédiatement évident de savoir si un Mac a été configuré pour recevoir un grand nombre de mises à jour. Vous pouvez résoudre ce problème en démarrant en mode économie (plus facile sur le matériel Intel) et en paramétrant toutes les applications pour qu'elles ne démarrent pas automatiquement et en gérant celles qui s'exécutent jusqu'à ce que vous puissiez déterminer celles qui provoquent le travail constant du serveur Windows.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X