Todos los Macbook Pros 2010 vienen con dos tarjetas gráficas, una Intel HD de bajo rendimiento y una NVIDIA discreta de alto rendimiento, y cambia entre ellas sobre la marcha dependiendo de las necesidades de las aplicaciones en ejecución.¿Cómo deshabilitar Macbook Pro para cambiar a una tarjeta gráfica de alto rendimiento en Cocoa?
Tengo una aplicación de Cocoa simple que consiste en solo un elemento de la barra de menú con un NSTextField
en él. Todo lo que hago es actualizar el campo de texto con un NSAttributedString
de vez en cuando. El problema es que mi aplicación cambia mi Macbook Pro para usar la tarjeta NVIDIA de alto rendimiento (utilicé la herramienta gfxCardStatus para confirmar esto).
¿Qué podría necesitar la tarjeta de alto rendimiento? ¿Existe una lista conocida de razones para que las aplicaciones requieran tarjetas gráficas de alto rendimiento? ¿Hay alguna manera de forzar a la computadora a usar la tarjeta gráfica discreta?
Gracias por el enchufe. :) De hecho, es de código abierto, y te animo a que lo mires si lo deseas; sin embargo, no recomendaría agregar el código de conmutación a otras aplicaciones. Una aplicación que intenta controlar qué GPU está activa es suficiente. Logré corromper una de las extensiones de mi kernel ejecutando 3 copias simultáneamente e intentando cambiar con cada una de ellas justo después de la otra, solo para fines de prueba: mala idea. – codykrieger
Además, cualquier cosa que use CALayers activará un cambio a la GPU discreta. – codykrieger
¡Eso fue Cody! Tan pronto como configuro wantsLayer en uno de los controles en NO, dejó de cambiar a GPU discreta. Deberías dejarlo como una respuesta. –