Как отключить Macbook Pro от перехода на высокопроизводительную графическую карту в Cocoa?

В 2010 году MacBook Pro поставляется с двумя видеокартами - низкопроизводительным встроенным процессором Intel HD и высокопроизводительным дискретным NVIDIA - и он переключается между ними "на лету" в зависимости от потребностей работающих приложений.

У меня есть простое приложение Cocoa, состоящее только из элемента меню с NSTextField. Все, что я делаю, время от времени обновляет текстовое поле с помощью NSAttributedString. Проблема в том, что мое приложение переключает мой Macbook Pro на использование высокопроизводительной карты NVIDIA (я использовал инструмент gfxCardStatus, чтобы подтвердить это).

Что может понадобиться для высокопроизводительной карты? Есть ли список причин, по которым приложения требуют высокопроизводительной видеокарты? Есть ли способ заставить компьютер использовать дискретную графическую карту?

Ответы

Ответ 1

Существует хорошая статья о переключении GPU в новых MacBook Pros на Ars Technica. Я заметил, что OS X переключается на выделенный GPU, если вы

  • Запустите приложение, которое ссылается на OpenGL
  • Подключить второй дисплей

Код gfxCardStatus является открытым исходным кодом. И кажется, что соответствующая часть находится в switcher.m. Вы можете более внимательно посмотреть здесь.