37 votos

WindowServer está consumiendo mucha CPU, no puedo averiguar por qué

2019 16 "MBP corriendo 10.15.4. WindowServer se está comiendo un montón de CPU, al ralentí en el 10-20%-aproximadamente incluso con nada mucho en funcionamiento. Los ventiladores están constantemente en marcha debido a ello.

He desactivado la transparencia y he impedido que las pantallas (virtuales) tengan sus propios espacios (como se recomienda en otros sitios), sin resultado. También probé a matar cosas al azar para ver si algo lo soluciona - no hubo suerte.

Ejecutar log stream --predicate '(process == "WindowServer")' --debug Puedo ver que está volcando lo siguiente en sus registros de depuración con mucha frecuencia, más de 10 veces por segundo, lo que parece que puede estar relacionado:

2020-05-06 23:54:23.680073+0100 0x4e7 Debug 0x0 228 0 WindowServer: (CoreDisplay) [com.apple.CoreDisplay:default] [DEBUG] - On display 0x2b287853, surface is not detached, CoreDisplay is detached (0x00000000), DetachCode = 0

¿Alguna idea de lo que está pasando?

Edición: como alguien preguntó: Las pantallas a las que me refería son pantallas virtuales. Tengo un monitor externo, pero esto sigue ocurriendo con él desconectado.

12voto

Jari Puntos 51

Tengo un monitor externo DELL UP3216Q. Tuve el mismo problema con los errores "la superficie no está separada, CoreDisplay está separada" que se envían cuando ejecuto log stream --predicate '(process == "WindowServer")' --debug . Estoy usando el monitor externo con la tapa del Mac cerrada.

Los errores cesaron cuando cambié la configuración de Preferencias del Sistema > Pantallas > Escalado de pantalla para que el escalado no sea máximo en el monitor externo. Si vuelvo a cambiar la escala al máximo (más espacio) los errores comienzan de nuevo en el modo de registro.

El uso de la CPU de WindowServer se redujo ligeramente, pero sigue estando en torno al 30 %. Al menos el ventilador dejó de girar tan rápido.

8voto

Dan Puntos 301

Respondiendo a mi propia pregunta con lo que he aprendido:

  • Las resoluciones HiDPI eliminan el mensaje de error de los registros. SetResX tiene una resolución HiDPI para la res nativa de mi monitor - usando eso se ve lo mismo que el escalamiento "más espacio", pero sin los errores. Esto reduce el uso de la CPU y el calor un poco.

  • Aunque parezca una tontería, el "modo clamshell" (es decir, cerrar la tapa) ayuda bastante. Supongo que ayuda a no tener que renderizar la pantalla incorporada

WindowServer sigue usando bastante más CPU de lo que me gustaría, pero esas dos cosas lo han reducido bastante.

Otras cosas con las que he visto que otros tienen éxito pero que no he podido confirmar yo mismo: Usar los puertos de carga a la derecha en lugar de a la izquierda reduce el calor, y ajustar las tasas de refresco en tan solo 0,1Hz ha reducido drásticamente el uso de energía para algunas personas.

EDIT: El modo Clamshell parece permitirme usar la res nativa del monitor sin usar SetResX sin causar los errores. Creo que esto se debe a que la máquina renderiza resoluciones estándar y HiDPI al mismo tiempo.

8voto

Oliver Salzburg Puntos 2455

Prueba con https://chromeisbad.com/ . En mi caso el problema era Google Chrome y desinstalándolo (y, sobre todo, Keystone) se solucionaron todos mis problemas.

4voto

Yo también me he encontrado con un uso elevado y constante de la CPU de WindowServer desde que me actualicé a Big Sur (hace unas semanas).

Después de actualizar a Big Sur me encontré con una gestión / movimiento de las ventanas generalmente lenta, y con la sensación de que MacOS estaba "muy cansado", y he buscado respuestas durante algún tiempo. Hoy las cosas se pusieron realmente lento, con pulsaciones perdidas al escribir en iTerm, y el uso de la CPU de WindowServer funcionando al 95% constantemente. Los reinicios "resolvieron" el problema por un tiempo, pero siempre después de un corto tiempo las cosas volvieron a ser lentas.

Entonces encontré este artículo y el enlace a " Chrome es malo ". He seguido las instrucciones (en Chrome es malo ) para eliminar Chrome y Keystone al pie de la letra, reiniciar y cambiar a Brave.

El diferencia es literalmente noche y día . El cambio entre aplicaciones / Windows es ahora, una vez más, rápido . No más pulsaciones de teclas en iTerm y otras aplicaciones. Mover Windows de la pantalla interna a mi monitor externo (4K Dell) es suave como la mantequilla, donde antes se convertiría en espasmos como Windows se trasladó a la pantalla externa.

Todavía estoy luchando para creer que Chrome / Keystone son los culpables, ya que ninguno de ellos muestra una alta CPU cuando los problemas se muestran, pero estoy (muy) feliz con el resultado.

En resumen, me costará mucho volver a cambiar a Chrome ahora, especialmente porque todas mis extensiones de Chrome funcionan perfectamente en Brave.

3voto

Alper Kocatas Puntos 124

El Macbook pro 2019 16 tiene un problema bien conocido relacionado con el alto uso de la CPU/GPU cuando se conectan pantallas externas ( Ver hilo relacionado aquí ). El problema se debe a que la conexión de la pantalla externa está conectada a la GPU externa. Si está utilizando el ordenador con pantallas externas conectadas, puede probar para ver si el problema continúa cuando se desconectan todas las pantallas externas.

Además, puede intentar establecer la resolución de la pantalla por defecto si está utilizando uno de los modos de escala. También es bien sabido que las resoluciones escaladas en macOS hacen trabajar considerablemente a la CPU y a la GPU.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X