Tous les Macbook Pro 2010 sont livrés avec deux cartes graphiques - une Intel HD intégrée basse performance et une NVIDIA discrète haute performance - et les commutent à la volée en fonction des besoins des applications en cours d'exécution.Comment désactiver Macbook Pro de passer à une carte graphique haute performance dans Cocoa?
J'ai une application Cocoa simple qui consiste simplement en un élément de barre de menu avec un NSTextField
dedans. Tout ce que je fais est de mettre à jour le champ de texte avec un NSAttributedString
de temps en temps. Le problème est que mon application bascule mon Macbook Pro pour utiliser la carte NVIDIA haute performance (j'ai utilisé l'outil gfxCardStatus pour le confirmer).
Qu'est-ce qui pourrait avoir besoin de la carte haute performance? Y at-il une liste connue des raisons pour lesquelles les applications nécessitent une carte graphique haute performance? Y at-il un moyen de forcer l'ordinateur à utiliser la carte graphique discrète?
Merci pour la prise. :) Il est en effet open source, et je vous encourage à le regarder si vous le désirez - cependant, je ne recommanderais pas d'ajouter le code de commutation dans d'autres applications. Une application essayant de contrôler quel GPU est actif est suffisante. J'ai réussi à corrompre une de mes extensions de noyau en exécutant 3 copies de celui-ci simultanément et en essayant de basculer avec chacune d'elles juste après l'autre, juste à des fins de test - mauvaise idée. – codykrieger
En outre, tout ce qui utilise CALayers déclenchera un basculement vers le GPU discret. – codykrieger
C'était Cody! Dès que j'ai mis wantLayer sur l'un des contrôles à NO, il a cessé de passer à un GPU discret. Vous devriez le poser comme une réponse. –