Команда для выполнения щелчка правой кнопкой мыши по исполняемому файлу и выбора опции типа «Запуск с графическим процессором» - PullRequest
2 голосов
/ 28 марта 2019

Я хочу написать в командной строке Windows команду для репликации следующего:

  1. Щелкните правой кнопкой мыши исполняемый файл
  2. Выберите «Запустить с графическим процессором»
  3. Выберите «Высокопроизводительный процессор NVIDIA»

Есть ли способ сделать это?

1 Ответ

1 голос
/ 28 марта 2019

Согласно техническому примечанию NVIDIA, Включение высокопроизводительной визуализации графики в системах Optimus , вы можете убедиться, что ваше приложение использует режим высокопроизводительной графики, экспортировав глобальную переменную с именем NvOptimusEnablement, значение которой установлено до 1.

Начиная с драйверов выпуска 302, разработчики приложений могут указывать драйверу Optimus во время выполнения использовать высокопроизводительную графику для визуализации любого приложения - даже тех приложений, для которых нет существующего профиля приложения. Они могут сделать это, экспортировав глобальную переменную с именем NvOptimusEnablement. Драйвер Optimus ищет наличие и ценность экспорта. Только LSB DWORD имеет значение в это время. Значение 0x00000001 указывает, что рендеринг должен выполняться с использованием высокопроизводительной графики. Значение 0x00000000 указывает, что этот метод следует игнорировать

Пример использования:

extern "C" {
    _declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001;
}

(В этом примере кода используется __declspec(export) для указания компилятору автоматически экспортировать символ в виде данных, что предполагает компилятор Microsoft , хотя GCC теперь поддерживает его как расширение для MSVC -compatibility.)

Кроме того, в том же документе говорится, что вы можете статически связываться с одной из библиотек DLL драйвера NVIDIA для достижения того же эффекта:

Для любого приложения без существующего профиля приложения существует набор библиотек, которые при статической привязке к конкретному исполняемому файлу приложения будут указывать драйверу Optimus на визуализацию приложения с использованием высокопроизводительной графики. Начиная с версии 302, текущий список библиотек: vcamp110.dll, vcamp110d.dll, nvapi.dll, nvapi64.dll, opencl.dll, nvcuda.dll и cudart*.*.

.

Обратите внимание, что это решение обеспечит зависимость от драйверов NVIDIA, тогда как экспорт переменной не будет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...