Yosemite: zoom de accesibilidad + varios monitores = bajo rendimiento

Desde que se actualizó a Yosemite, la función de zoom de accesibilidad no se puede utilizar cuando se conecta a un monitor externo.

Pasos para reproducir:

  • Habilite Zoom en Preferencias del Sistema - Accesibilidad.
  • Conecte un monitor externo, sin usar espejo (segundo escritorio).
  • Acercar usando CTRL+(gesto de dos dedos) - u OPT-CMD-=

Esperado:

  • El zoom es suave como la mantequilla, todo se renderiza a 60 fps, sin demora alguna

Actual:

  • Toda la visualización en ambas pantallas se retrasa, incluida la reproducción de video, el movimiento del mouse y las pulsaciones de teclas/ingreso de texto. El sistema se vuelve increíblemente lento cuando se acerca el zoom (8-12 fps, mientras intenta "ponerse al día" con los fotogramas perdidos). Lleva mucho tiempo "recuperarse" de un zoom al alejar el zoom.

Hardware:

  • MacBook Pro (Retina, 15 pulgadas, principios de 2013)
  • Según otras fuentes, esto parece afectar a todo el hardware de Mac que ejecuta Yosemite.

Esto se ha informado en los foros de discusión de Apple varias veces: uno , dos , tres , cuatro

No he podido encontrar ninguna solución aceptable.

Tenga en cuenta que el rendimiento del zoom es "perfecto" (léase: aceptable) una vez que se desconecta el monitor externo. También es "perfecto" cuando se utiliza la duplicación.

Editar: Se eliminó el enlace a http://testufo.com ya que es demasiado frágil en circunstancias normales para ser una reproducción útil.

Edición 2, 18 de noviembre de 2014: después de actualizar a Yosemite 10.10.1, el rendimiento mejoró ligeramente , pero aún no está a la altura de los estándares anteriores. Por ejemplo, vaya a https://kraken.io/ y mueva el mouse sobre el control deslizante de la imagen. Luego intente hacer lo mismo con el zoom, es insoportablemente lento. Parece que cuando se activa el zoom (en varias pantallas), se reduce a la representación del software o algo igualmente lento. La misma prueba con solo la pantalla única es perfecta.

Edición 3: otras soluciones que se han sugerido han tenido malos resultados:

  • Reinicie (o elimine el WindowServerproceso, lo que lo cerrará). Los primeros minutos de uso son comparativamente fluidos, pero aún no al 100%.

Edición 4: Habilitar Aumentar el contraste parece ser la mejor solución hasta ahora. Ver mi segunda respuesta .

Edición 5: esto ahora está completamente solucionado en 10.10.2.

Respuestas (9)

Esto ahora está arreglado en OS X 10.10.2

Sí, volví a activar "Desplazamiento con inercia" esta mañana, y el zoom actúa de nuevo como se supone que debe hacerlo, en ambas pantallas.
Puedo confirmar que está arreglado en 10.10.2. ¡Gracias!

Después de actualizar a Yosemite, también obtuve una respuesta extremadamente lenta en varias situaciones diferentes, como pausas largas para que Spotlight devuelva coincidencias de archivos, inicio lento de aplicaciones, especialmente después de despertar de Display Sleep, así como otras operaciones. (Se siente como caminar en arenas movedizas y descubrir que no puede moverse como podría). Además, he estado viendo registros de la consola llenos de mensajes repetidos sobre conexiones no válidas y volcados de gestos del panel táctil que no coinciden, a veces con casi el mismo mensaje llenando una vista completa de la consola de 4000 líneas. Creo que ahora he encontrado la causa, al menos para mi iMac, así que lo pongo aquí para ver si es la causa de problemas similares para otros en torno a la lentitud después de cambiar a los problemas lentos de Yosemite.

Estaba buscando en mi Preferencescarpeta de usuario (en ~/Library Preferences) hojeando archivos de preferencias aleatorios para mantenerme ocupado mientras intentaba tener otra idea de qué hacer a continuación. (Tratar de trabajar se había vuelto realmente tedioso). En com.apple.sidebarlists.plist, me topé con una clave con un valor que continuaba después de recorrer bastantes páginas y luego me di cuenta de que la barra de desplazamiento todavía estaba cerca del comienzo del archivo. Verifiqué el tamaño del archivo y tenía 11 MB (la mayoría de los archivos de preferencias eran mucho más pequeños que 100 KB, muchos tenían menos de 10 KB de longitud). Tratar de ver el archivo en Xcode era casi imposible debido a la lentitud, así que lo volqué en una lista de propiedades de texto para editarlo y encontré varias claves con valores enormes, todas con el nombre de clave deBookmark(6 valores clave tenían poco más de 2,7 MB de longitud y otros 2 tenían poco menos de 4,3 MB). Varios de estos estaban asociados con volúmenes USB externos, uno con un volumen que ya no existía y otro con un volumen que era una partición en la unidad del sistema; la mayoría, si no todos, también tenían una Aliasclave corta que existía para cada volumen descrito en este archivo. Después de muchas horas perdidas de mi fallido intento de editar el archivo para eliminar las secciones problemáticas (lo cual no recomiendo) dejando mi máquina sin poder arrancar, finalmente deseché el archivo. Desde entonces, todos los molestos retrasos desaparecieron (esperemos que para siempre).

Puedo ver fácilmente cómo podría haber ralentizado Spotlight (que se sentía como esperar a que un disco girara) ya que abrir la Finderventana de Spotlight probablemente requirió leer las preferencias de "listas laterales" para determinar cómo mostrar la ventana y tomaría un tiempo leerlo los datos secuenciales (similar a la ralentización cuando leí o edité el archivo yo mismo. Ahora que el archivo de preferencias tiene solo 7 KB (alrededor de 1570 veces más pequeño de lo que era) y se siente genial... tan ligero y rápido como si estuviera ejecutando el sistema operativo X 10.9 (Mavericks).

Aquí hay un resumen de lo que debe mirar y posiblemente hacer:

  1. Abrir /Users/(username)/Library/Preferences( ~/Library/Preferences) en una ventana del Finder; cambie a la vista de lista y ordene los archivos por tamaño.
  2. Compruebe si com.apple.sidebarlists.plist, o posiblemente, alguno de los archivos de preferencias es mucho más grande que la mayoría de los demás.
  3. Si encuentra archivos demasiado grandes, muévalos fuera de la carpeta y colóquelos en algún lugar (como en una nueva carpeta que cree en el escritorio). Esto no causará ningún problema, ya que se volverá a crear cuando reinicie, aunque es posible que deba restablecer algunas de las Sidebarconfiguraciones a su gusto usando Finder -> Preferences.
  4. Reinicie su máquina (o reinicie el Finder) y vea si los problemas de velocidad han mejorado. Si es así, haz un seguimiento de si las cosas siguen mejor (¿cómo podrías no hacerlo?)
  5. Ya sea que funcione o no, sería bueno para mí y para otros saberlo para que podamos ayudar a terminar con este problema a los afectados de esta manera o determinar que esta no es la causa y continuar determinando qué es lo que está mal, si es posible.

¡Espero que ayude como lo ha hecho para mí (hasta ahora) ya que escribir esta publicación hubiera sido insoportable si aún existiera la misma lentitud!

Hay una solución publicada en los foros de Apple .

Ventajas:

  • El rendimiento de la entrada del mouse/tecla se "siente" significativamente mejor, al igual que el zoom de impulso.
  • El zoom es por pantalla, en lugar de ambos a la vez

Contras:

  • Todavía no es tan eficaz como lo fue en Mavericks . El sitio testufo.com aún no se renderizará a 60 fps mientras se hace zoom.
  • Si bien esta solución hace que el rendimiento de múltiples pantallas sea un poco mejor en Yosemite, ¡hace que el rendimiento de una sola pantalla sea mucho peor! El rendimiento de una sola pantalla ya es "perfecto" usando el zoom predeterminado de "Pantalla completa" y esto es un paso atrás.

Instrucciones:

  • En Preferencias del sistema-Accesibilidad, configure el Estilo de zoom en Imagen en imagen .

Preferencias del Sistema - Accesibilidad

  • Haga clic en Más opciones...

Preferencias del sistema - Accesibilidad - Más opciones...

  • Haga clic en Ajustar tamaño y ubicación
  • Verá un panel rectangular ampliado con un botón "Aceptar" en el medio. Arrastre las esquinas hacia las esquinas superior izquierda e inferior derecha de la pantalla. Haga clic en Aceptar .

Ahora, cuando haces zoom, es utilizable, pero sigue siendo notablemente lento.

La mejor solución hasta ahora:

En Preferencias del sistema-Accesibilidad , seleccione Aumentar contraste (que implícitamente seleccionará Reducir transparencia). Esto parece mejorar el rendimiento en algunas circunstancias, pero afecta drásticamente la estética. El control deslizante en http://kraken.io es suave mientras se acerca. Todavía hay algunas circunstancias en las que el zoom es un poco lento, pero no es tan malo como antes.

Editar: después de varias horas de funcionamiento con Aumentar el contraste habilitado (y actualizar a Yosemite 10.10.1), puedo decir que el rendimiento ha vuelto a un nivel aceptable.

Todavía no me entusiasma tener que habilitar una función de accesibilidad que no quiero o necesito para mejorar el rendimiento. Realmente no me gusta la apariencia de Aumentar el contraste : los contornos negros sólidos alrededor de las entradas de texto y los botones, el efecto de rayas de cebra en las listas, etc. es un poco discordante debido a la sutileza de OS X.

Intenté simplemente habilitar Reducir transparencia (que se selecciona implícitamente cuando habilita Aumentar contraste ), pero esa configuración por sí sola no ayuda: ambos deben estar habilitados para ver cualquier ganancia de rendimiento.

Captura de pantalla: apariencia normal Apariencia normal

Captura de pantalla: Apariencia con 'Aumentar contraste' habilitado Apariencia con 'Aumentar contraste' habilitado

Todavía estoy interesado en encontrar una solución real, así que dejaré la recompensa abierta por ahora.

FWIW, mi experiencia es idéntica en todos los escenarios que describe (el original y ambas soluciones). Estoy usando 10.10.1 en un Mini CoreI7 2014 con 16 GB de RAM y un SSD con dos pantallas externas de 24". Veo un ligero retraso en el sitio kraken.io, pero nada terrible.

Algunas ideas sobre pasos adicionales para la solución de problemas: cada uno de estos pasos tiene como objetivo reducir los recursos necesarios para renderizar las pantallas.

  1. Intente bajar a miles de colores en las pantallas.
  2. Intente reducir las resoluciones de pantalla para cada una de sus pantallas
  3. Intente cambiar la disposición de sus pantallas para que se apilen verticalmente. — (Supongo que al reducir la dimensión más grande del búfer fuera de pantalla de las pantallas combinadas, verá una disminución en la memoria necesaria para renderizarlo; no estoy lo suficientemente familiarizado con las GPU modernas para saber cómo optimizan el uso de la memoria y esto puede tener poco o ningún efecto. Las razones por las que esto habría ayudado en el pasado pueden no ser válidas hoy).

Incluso si esto ayuda, entiendo que probablemente no será una solución práctica para usted. Los ofrezco principalmente como una forma de tratar de diagnosticar el problema subyacente. Ojalá pudiera ofrecer más.

Me di cuenta de tu publicación. Actualicé mi disco duro de producción principal a Yosemite un poco antes. Terminé ejecutando Mavericks desde una unidad externa y accediendo a Yosemite solo para archivos, ya que el disco duro todavía está dentro de mi macPro. Ahora reinicié Yosemite, ya que está recibiendo actualizaciones y actuando un poco mejor (lentamente). Entonces, algunas cosas funcionan mejor, pero todavía estoy tratando de depurar las cosas y creo que acabo de descubrir cómo recuperar mi CPU mucho del hilo del servidor de Windows. Simplemente vaya a accesibilidad y desactive todas las funciones de zoom. Creo que, en mi caso, al hacer zoom con la rueda ctrl+scroll activada, estaba mostrando todo en un nivel ampliado, así como en el nivel actual, por lo que estaría listo si tuviera que hacer clic en ctrl y hacer zoom en algo. cuando apagué esto, la computadora' s cpu volvió a saltar a un nivel aceptable. es una locura que mavericks funcione mejor con un disco duro usb 2.0 que con una cinta directamente en la placa lógica. Además, después de desactivar este zoom, hice clic en aumentar el contraste y no hubo mucha diferencia con respecto a la ganancia que ya obtuve. hace que el sistema operativo parezca una mierda, así que lo volví a apagar para que mi desenfoque volviera a aparecer en la interfaz de usuario. espero que esto ayude. lo siento por mi uso de mayúsculas, simplemente no tengo ganas de hacerlo atm. :) simplemente no tengo ganas de cajero automático. :) simplemente no tengo ganas de cajero automático. :)

Dos monitores, transparencia apagada. Tengo problemas con el zoom del mouse mágico con control horriblemente lento desde que actualicé a Yosemite. A veces, tomará hasta 5 segundos completar un simple zoom de pantalla. Tratar de quitar el zoom mientras la Mac está apagada a veces solo aumenta el problema.

El zoom del nivel del monitor se comporta mucho mejor si configuro Desplazamiento en " sin inercia " en el cuadro de diálogo Opciones del mouse del panel Ratón y panel táctil de las Preferencias del sistema de accesibilidad. El zoom ahora es ágil y se detiene cuando dejo de mover el dedo en el mouse. Por eso, puedo vivir sin la característica ocasionalmente útil de "inercia del mouse". -Tal vez Apple solucione el problema de la inercia, pero hasta entonces esta parece la mejor solución.

¿Probaste con "Aumentar el contraste"? Eso parece funcionar bien con monitores externos + desplazamiento por inercia, pero es más feo. Probaré lo de la inercia cuando tenga un monitor cerca.
Parece que no puedo acceder a ese cuadro de diálogo con solo un trackpad.

En mi Catalina (10.15.7), el problema aún persiste; WindowServer usa entre 12% y 27%. Tengo un monitor 4K (BenQ PD3220U) conectado y parece que macOS tiene un problema con eso:

En una publicación relacionada , vi que al verificar los registros con el comando:

log stream --predicate '(process == "WindowServer")' --debug

Yo obtengo:

2020-11-16 20:34:43.764462+0100 0x525      Debug       0x0                  378    0 
WindowServer: (CoreDisplay) [com.apple.CoreDisplay:default] [DEBUG] - On display
0x04280880, surface is not detached, CoreDisplay is detached (0x00000000), 
DetachCode = 0

Estos se registran a una velocidad de 10 a 30 filas por segundo, según la escala establecida en el monitor externo.

La (triste) solución que funcionó para mí fue renunciar al monitor interno de MBP; al cerrar la tapa, no hay más registros frenéticos, los ventiladores se detienen y WindowServer se está calmando. Dulce silencio, pero no feliz por perder una pantalla.

Estoy seguro de que esto no funcionará para todos, pero para mí todo lo que hice fue abrir las preferencias de pantalla y cambiarlas para reflejar mis pantallas, luego las cambié de nuevo a pantallas separadas. La CPU de WindowServer cayó inmediatamente de un 80% a un 10%.