Отключение дискретной видеокарты mac os

MacBook Pro: как отключить дискретный графический процессор на постоянной основе от EFI?

Я бы отключил графический процессор NVidia GTX 750M на моем MacBook Pro 15 «(Retina, Mid 2014, Mac OS X 10.10 Yosemite). Я знаю, что могу использовать GfxCardStatus, но я читал, что у меня может быть более постоянное решение изменение некоторого флага EFI.

Мой вопрос:

Как отключить дискретный графический процессор от EFI?

Я предполагаю, что это повторяется при нескольких перезагрузках. Я также хотел бы знать, как отменить его, если потребуется.

Вопрос в основном заключается в том, указана ли команда, упомянутая в здесь, gfxCardStatus github здесь правильный или нет, и как отменить его, если он не работает.

Ответ на это один — правильный ответ, но это будет потрясающе, если вы также можете сказать мне:

Если вы принудительно интегрируете графику в GfxCardStatus, Mac OS X (по крайней мере, до Yosemite) не позволяет использовать несколько мониторов (хотя встроенный Iris Pro может это сделать).

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

Я слышал, что тот же параметр EFI отвечает за то, что он даже не отображает интегрированный графический процессор для других операционных систем, чем macOS, и вы должны обмануть его как-то, чтобы думать, что это macOS.

Это правда? И если да, как это сделать?

5 ответов

Вы можете окончательно отключить дискретную графическую карту следующим образом:

UPDATE! Попробуйте изменить переменную NVRAM из однопользовательского режима

Процедура, описанная в шагах 1-3, работала для меня до macOS Sierra, но с обновлением до High Sierra я начал получать розоватый /красноватый экран, и мне не удалось войти в режим восстановления, чтобы повторить шаг 3, поскольку я делать в предыдущих обновлениях. Поиск в Интернете я перешел в эту проблему GitHub , объяснив, что вы можете заменить шаги 1 и 2 со следующей командой, которую вы можете выполнить в однопользовательском режиме (загрузка нажатием cmd + s ):

1. Подготовьте загрузочный USB-накопитель с Linux-интерфейсом без GUI

1.1 Загрузить ArchLinux ISO

  • Для этого вам нужен рабочий компьютер и запасной CD /DVD /USB-привод.
  • Загрузите последний образ ISO Arch Linux .
  • Затем вы можете просто записать этот ISO на CD /DVD (который позже можно было либо вставить в SuperDrive MBP, либо на внешний DVD-привод, подключенный к MBP двумя USB-кабелями) или создать загрузочный USB .

1.2 Создание загрузочного USB с помощью .iso

    Сначала вам нужно определить USB-устройство.

Открыть /Приложения /Утилиты /Терминал в MacOS и перечислить все устройства хранения:

Ваше устройство USB появится как нечто вроде /dev/disk2 (external, physical) . Убедитесь, что это устройство, которое вы хотите удалить, путем проверки его имени и размера, а затем используйте его идентификатор для команд ниже, а не /dev/diskX .

USB-устройство обычно устанавливается автоматически в macOS, и вам необходимо отключить (не выгружать) его перед записью блока с помощью dd:

diskutil unmountDisk /dev/diskX

Теперь скопируйте файл образа ISO на устройство. Команда dd похожа на свою аналогию с Linux, но обратите внимание на «r» перед «диском» для режима raw, что делает передачу намного быстрее:

sudo dd if=path/to/arch.iso of=/dev/rdiskX bs=1m

После завершения работы macOS может пожаловаться на то, что «Установленный диск не был доступен для чтения на этом компьютере». Выберите «Извлечь». Устройство USB будет загрузочным.

2. Использовать Linux для изменения EFI vars

2.1 Загрузите его

  • Вставьте этот CD /DVD /USB в Macbook Pro, удерживая клавишу Option (alt) во время загрузки.
  • Выберите «Загрузка EFI» (это ваш загрузочный установочный носитель).
  • Когда отобразится меню, нажмите клавишу «e», чтобы отредактировать параметры GRUB в меню меню CD-архива Archixo x86_64 UEFI, когда он выбран на главном экране, добавьте nomodeset в конец эту строку и нажмите Enter.
  • Если все будет сделано правильно, вы окажетесь на консоли Linux! (Требуется некоторое время, чтобы быть терпеливым и ждать приглашения)

2.2 Очистить существующие EFI vars

Похоже, файловая система efivarfs монтируется по умолчанию! Таким образом, вы можете уже cd /sys/firmware/efi/efivars и ls изучить этот каталог и посмотреть, есть ли gpu-power-prefs-. (где . является UUID этой переменной).

Если есть такая переменная, лучше удалить ее с помощью rm.

Если вы получаете сообщение «операция не разрешена» при попытке выполнить rm , это означает, что efivarfs был установлен как доступный только для чтения, и вам нужно перемонтировать его с разрешениями на чтение и запись и попробовать еще раз:

cd /
umount /sys/firmware/efi/efivars/
mount -t efivarfs rw /sys/firmware/efi/efivars/
cd /sys/firmware/efi/efivars/
rm gpu-power-prefs-…

Если это также не удается (вы все еще не можете стереть файл), используйте команду chattr , чтобы отключить неизменность файла, а затем удалите файл:

Читайте также:  Wondershare mobiletrans mac os

chattr -i «gpu-power-prefs-…”
rm gpu-power-prefs-…
р>

2.3 Создайте новый файл gpu-power-prefs-â € |

2.4 Добавьте неизменяемость в файл gpu-power-prefs-â | |

Эта команда chattr должна блокировать файл, чтобы сделать его доступным только с помощью «суперпользователя» — и чтобы при загрузке ваша EFI не имела шансов испортить ваш gpu-power- prefs -. переменная при любых обстоятельствах

2.5 Отключение efivars и перезагрузка

Перейдите в корневой каталог, чтобы размонтировать efivars:

Гарантирует, что ваши переменные EFI будут сброшены в файловую систему efivarfs. Перед перезагрузкой отключите его.

3 Удалите файлы AMD /NVIDIA kexts

Примечание . Возможно, вам придется делать это каждый раз, когда вы обновляете свою ОС, поскольку она обычно восстанавливает эти kexts. Вы можете захотеть получить этот ответ , чтобы он был доступен с другого устройства, когда вам это нужно.

После отключения dGPU с помощью Arch обычная загрузка будет зависать на полпути, но безопасная загрузка будет работать.

3.1 Переместите файлы AMD /NVIDIA kext в резервный каталог

Удалите все файлы kext AMD (или NVIDIA, в зависимости от вашей карты) в терминале в консоли восстановления. Попытка удалить их в одиночном пользователе просто дает ошибки песочницы, поэтому не делайте этого в режиме одиночного пользователя! (тот, который вы загружаете с помощью cmd + s ).

  • Если у вас есть FileVault, сначала откройте его.
  • Загрузите в Recovery ( cmd + r ) напрямую. Если он терпит неудачу, повторите шаг 2 и повторите попытку (dGPU может снова активироваться после загрузки в os с помощью AMD /NVIDIA kexts).

Start Terminal (Эти команды предназначены для AMD. Если у вас есть NVIDIA, измените их соответственно)

diskutil cs list (найти логический том UUID: последний элемент)
diskutil coreStorage unlockVolume UUID (UUID: из предыдущей команды)
cd /Volumes/Macintosh\ HD
mkdir AMD_Kexts
mv System/Library/Extensions/AMD*.* AMD_Kexts/
reboot

Я нашел процедуру в эта ссылка , где вы можете прочитать атрибуцию разных разделов и дискуссионную нить по теме.

Я попробовал это сам в начале 2011 года MacBook Pro с неисправной дискретной графической картой, которая не смогла загрузиться даже с помощью перегревающего трюка и оказалась полностью функциональным компьютером!

Ваша дилемма

Я полностью сочувствую вашему желанию «экономя аккумулятор и уменьшая тепло, не платя шума» от использования дискретной видеокарты внутри MacBook Pro.

Предупреждение

Прежде чем делать что-либо, что отключит ваш дисплей, убедитесь, что вы можете вести журнал в вашем MacBook Pro, используя SSH , чтобы вы могли отменить свою работу. Хотя совместное использование экрана со всеми отключенными графическими картами, вероятно, будет работать с некоторым разрешением по умолчанию, я бы не поставил на него свой компьютер.

Ответы

Что произойдет, если я окончательно отключу дискретную графическую карту nVidia от EFI? Будет ли Mac OS интегрированным GPU, установленным и позволяющим мне использовать с ним несколько мониторов?

Вы потеряете любую возможность использовать внешний монитор (под любой ОС). Внешний графический порт (ы) подключен к дискретному графическому чипу.

Мой собственный MacBook Pro 2011 работает на стабильном уровне 60 градусов даже при нагрузке с минимальным шумом вентилятора при использовании встроенной графики и шипов Intel для полных вентиляторов (в диапазоне от 4000 до 6000 об /мин) при нагрузке с дискретным 6750 . Проблема реальна. Я тоже хотел иметь возможность использовать только встроенную графику и управлять внешним монитором.

Правда ли, что одна и та же EFI даже не отображает интегрированный графический процессор для других ОС, чем Mac OS, и вы должны каким-то образом обмануть его, чтобы думать, что это Mac OS?

Да, это правда. Intel GPU отключается от EFI MacBook Pro 11,3, если вы загружаете что-либо, кроме Mac OS X. У вас четыре варианта , если вы хотите использовать встроенный чип Intel в альтернативной ОС:

В последних версиях rEFInd есть встроенный хакер «apple_set_os». Вы можете включить его, установив опцию spoof_osx_version в refind.conf.

Будьте осторожны, планируйте заранее. Если вы не подготовитесь, вы столкнетесь с отключенной интегрированной графической картой и черным экраном. Конечно, вы всегда можете вернуться и загрузить Mac OS X и начать снова.

Самый простой из вышеперечисленных вариантов будет вторым номером — заменить Apple EFI. К сожалению, это тот, который может оставить вас не в состоянии загрузиться вообще в будущем. Apple не любит людей играть с EFI и оставляет за собой право на кирпич вашего устройства для этого. Если у вас есть Apple Care и все еще в гарантийном периоде, вы можете найти плечо где-то плакать. Мог бы. Когда вы меняете EFI, вы также берете риски безопасности , то есть вы можете упростить взломать ваш компьютер. Вы должны иметь возможность обновлять последнюю EFI, которая удаляла бываш патч.

Вариант один, Refind ставит себя между загрузкой и EFI, что оставляет значительные возможности для того, чтобы что-то пошло не так, и чтобы вы остались с кирпичом и длинным жестким трейлом обратно на рабочий компьютер. Насколько серьезны эти проблемы? Многие владельцы MacBook Pro потеряли свой жесткий диск для Refind:

Многочисленные отчеты об ошибках REFIt указывают на проблемы с повреждением диска на дисках более 500 гигабайт . Я настоятельно рекомендую вам не вводить sudo bless-info для проверки состояния вашей установки, если у вас есть такой диск, или даже если вы подозреваете, что у вас может быть такой диск. (Я видел диски с расширенным форматом размером 320 ГБ.)

Вариант третий относительно прост. Patching grub — это процесс, с которым любой ранний владелец Hackintosh хорошо знаком. Patching Grub работает и легко отменяется, поскольку изменения не выполняются на уровне прошивки. Если вы исправляете grub консервативно, дополнительный код grub включен только удерживая опцию /alt при загрузке .

Заключение

Если вы предпочитаете использовать свой компьютер для его исправления, то gfxCardStatus от Cody Krieger в его конфигурации со встроенным ящиком выглядит все более привлекательным. Если вы действительно хотите заставить gfxCardStatus запускаться при запуске, г-н Кригер принимал участие в освещающем разговоре , что привело к переключению ГПУ. switchGPU предварительно устанавливает gfxCardStatus на дискретную или интегрированную графику достаточно рано, чтобы вы могли запускать интегрированную графику, когда ваш дискретный графический процессор в противном случае перегрев и сбой. gfxCardStatus продолжает работать нормально (т. е. вы можете вернуться на дискретный графический процессор после загрузки, используя пункт меню gfxCardStatus). Нет никакой причины устанавливать switchGPU, если у вас есть серьезные проблемы с оборудованием с вашим дискретным графическим процессором, что означает, что вам нужно поддерживать его выключено все время.

При отражении моя собственная ситуация со встроенным процессором AMD 6750 достаточно плоха (настолько горячая и громкая даже после термической обработки), что я воспользуюсь расширенным программа гарантийного ремонта на 2011 MacBook Pro с графикой AMD. Вероятно, Марко Армент был прав на включил его 2,2 ГГц MBP с 6750 для версии 2.0 ГГц с 6490 . Хотя в то время я считал, что я делаю то же самое, мне пришлось бы отправить мой MBP за границу, чтобы изменить его. К сожалению, Retina MacBook Pros, по-видимому, продолжает испытывают те же проблемы с теплом и шумом . Моя девушка 2013 2013 MacBook Pro с только интегрированной графикой ведет себя намного лучше.

Из-за проблем с нагревом и шумом с четырехъядерными рабочими станциями MBP я отказался и купил два Mac Pros (2006 и 2009), обновил процессор до восьми ядер и шести ядер соответственно. В 2006 году с установленным Apple AMD 5870 почти беззвучно (намного тише в 2009 году) и многозадачность лучше, чем MBP 15 ». Две серебряные башни (домашний и офисный) стоят дешевле, чем один новый MacBook Pro. 2011 MBP 15 «на дискретной графике только как носитель (без внешнего монитора).

Плановая процедура возможна. Ваша запланированная процедура не так уж сложна. Ваша запланированная процедура — не лучший вариант.

Почему этот маршрут является субоптимальным

MacBook Pro будет и должен переключиться на дискретный графический процессор (dGPU) после подключения внешнего дисплея. Поэтому установленный, но отключенный dGPU убирает возможность использовать внешний монитор с этим dGPU. Есть и другие варианты, например, с использованием USB-решений или внешних графических процессоров (eGPU). Но настройка переменной EFI, которую вы ищете, определенно отключит прямой вывод с одним кабелем на внешний монитор.

Как вы можете отключить дискретный графический процессор от EFI?

Команда, о которой вы упомянули в своем обновлении, почти корректна. Он просто пропускает правильный идентификатор:

sudo nvram fa4ce28d-b62f-4c99-9cc3-6815686e30f9:gpu-power-prefs=%01%00%00%00

Это записывает соответствующую переменную EFI в NVRAM и заставляет MacBook Pro всегда загружаться прямо в интегрированный графический процессор (iGPU). Идентификатор предназначен не только для AMD dGPU, но и для всех dGPU. Это подтверждается работой с чипами NVidia. Он также легко обратим с перезагрузкой NVRAM.

Недостатки этой стратегии в этой ситуации

И теперь недостаток: Есть потенциально две небольшие проблемы с этим:

После установки этих настроек NVRAM macOS может немного «запутаться». Чип все еще там, подключен и подключен.

Чтобы получить это, вы можете > отключить графические драйверы для вашего dGPU. Или, по крайней мере, один kext, который управляет фактическим переключением графики. Загрузка может зависать при попытке инициировать переключение GPU в противном случае.

Оба новых возникающих проблемы можно решить, переместив либо все NVidia kexts из /System/Library/Extensions в безопасное место резервного копирования. Это приведет к загрузке машины, запущенной в ускоренном режиме iGPU. Но установка переменной EFI может оказаться недостаточной для обеспечения разумного управления питанием. Для этого вам, скорее всего, придется переместить NVidia kexts кроме тех, кто отвечает за переключение графики. Несоблюдение этого приведет к бесполезно высокой мощности на dGPU. Он будет, по крайней мере, простаивать при «полной мощности» (переведен на 60 ° C).

Этот простаивающий источник питания потенциально может стать большим поражением для вашего плана уменьшить шум вентилятора и увеличить батарею. Замечание из литературы. Должна быть истина, общепризнанная, что перемещение kexts вокруг также требует, чтобы вы отключили SIP в более новых версиях OS X /macOS, пока перемещаете такие вещи вокруг.

Чтобы найти kexts для экспериментов, загрузите без переменную NVRAM в систему запаса (с ‘default’ NVidia kexts). Затем обратите внимание на то, какие расширения ваша система загружает с помощью kextstat . Затем перезагрузка с ранее загруженными NVidia /Geforce kexts отодвинулась и взломанный. Получите подробный сенсорный монитор (iStatMenus, TGPro и т. Д.) И посмотрите температуру на GPU и вокруг него. Теперь загрузите один за другим из соответствующих kexts обратно в ядро ​​с помощью sudo kextload /path-to/NVDA***.kext . Подождите одну или две минуты после каждого.

Поскольку метод этого сообщения — или одинаково допустимый, но простой способ: манипулирование EFIvars в Linux — это NVRAM, он будет очищен, если вы выполните сброс SMC /NVRAM. Этот взлом NVRAM на самом деле является единственной частью этого сообщения, которая, несомненно, будет not давать вам много проблем.

Выполнение этого сброса NVRAM восстанавливает минимальный набор заводских настроек для переменных EFI /NVRAM. Эта заводская настройка не будет затронута.

Это можно сделать так часто, как вам нравится.

В Linux система драйверов значительно лучше документирована, а imho — более чистым. Есть много способов добиться этого при загрузке или при загрузке Linux. И Linux (независимо от того, соблюдаете ли это настройки NVRAM /EFIvars или с помощью других методов) даст вам гораздо меньше проблем с драйверами (кто быдумал). Для других ОС, подобных тем, которые названы в стеклах, покрытых стеклом, у меня нет данных.

Повторить: если ОС не распознает, что dGPU не означает, что он выключен. То, что может привести к нежелательным тепловым побочным эффектам.

Взгляните на это руководство для MacBook Pro 2011 года за аналогичное решение и немного больше возможностей; также быстро отменить и переделать прошивку NVRAM.

Несколько мониторов и отключенный dGPU

Сказав, что все: gfxCardStatus (или попробуйте разные версии оригинала â € «У них есть разные варианты /возможности . » — это лучший вариант, если у вас нет реальных проблем с оборудованием. Он намного более гибкий, и вы все равно можете легко переключаться обратно на dGPU или внешние мониторы в запущенной системе.

Независимо от того, через EFI /NVRAM или с gfxCardStatus: принудительное использование Mac с переключаемой графикой для интеграции только с отключает внешние режимы отображения с использованием встроенного графического вывода DisplayPort или Thunderbolt. Это является следствием аппаратной конструкции, которая направляет сигнал отображения для внешних мониторов через dGPU. Использование недискретных, но внешних графических адаптеров может быть обходным путем для этого ограничения.

Настройка EFI для включения интеграции в другие операционные системы

Как уже должно быть ясно, настройка EFI, позволяющая другим операционным системам, таким как Linux, «видеть» переключаемую графическую настройку, отличается от выше, чем отключает dGPU. Крошечная программа EFI для разблокировки Intel IGD на Macbook Pro 11,3 для Linux и Windows:

Программа Tiny EFI для разблокировки Intel IGD на Macbook Pro 11,3 для Linux и Windows. Это было сделано, чтобы быть легко загруженным немодифицированным загрузчиком EFI, таким как Grub, rEFInd и т. Д.

Модель EFI Macbook Pro 11,3 отключает графический процессор Intel, если вы загружаете что-либо, кроме Mac OS X. Поэтому для обеспечения доступности всего оборудования требуется небольшой трюк, связанный с идентификацией ОС.

Все кредиты принадлежат Андреасу Хейдеру, который первоначально обнаружил этот взлом: https://lists.gnu.org/archive/HTML /личинка-Devel /2013-12 /msg00442.html

Если кто-то все еще ищет способы сделать это, пожалуйста, ознакомьтесь с этим сообщением форума MacRumors.

Я выполнил шаги, упомянутые на этом форуме, и мой 15-дюймовый MacBook Pro 2011 отлично работает, используя только встроенную графику. Бесполезная графическая карта AMD была успешно отключена.

Замеченный ответ на один из ваших вопросов: вам, вероятно, потребуется использовать дискретный графический процессор для использования внешнего дисплея. Причина заключается в том, как подключаются графические процессоры и видеовыходы.

(Я недооцениваю, наполовину экстраполирую из того, как работает технология коммутации графических адаптеров ПК. Небезосновательно предположить, что эти технологии основаны на работе продавцов графических процессоров с Apple. Тем не менее: возьмите следующее с помощью большое количество соли.)

С nVidia Optimus настройка заключается в том, что встроенный дисплей ноутбука подключен к встроенному графическому процессору, а внешний порт дисплея подключен к дискретному графическому процессору. Если вам нужно отображать материал с использованием дискретного графического процессора на встроенный дисплей, дискретный графический процессор «подчинен» интегрированному. Сначала вызов рендеринга переходит на встроенный графический процессор, который, если дискретный графический процессор включен, пересылает его туда, а затем извлекает результат, чтобы нажать его на дисплей.

Если подключен внешний дисплей, вызовы рендеринга для этого дисплея поступают непосредственно на дискретный графический процессор, потому что это GPU, который может отправлять любой вывод на этот экран. Интегрированный графический процессор просто не может вообще отправлять видеовыход в этот порт. Я не думаю, что даже встроенный графический процессор может быть «подчинен» дискретному, поскольку в первую очередь это было бы бессмысленно с точки зрения дизайна в отношении целей технологии графического переключения; и даже тогда ему все же потребуется включить дискретный графический процессор, что не поможет людям, чей чип не работает.

Источник

Читайте также:  Тема дождь для windows
Оцените статью