Сборка кода в C для NVAPI

Как я могу работать с этой функцией?

typedef int(*NvAPI_GPU_SetCoolerLevels_t)(int *handle, unsigned int, int fanlevel);
NvAPI_GPU_SetCoolerLevels_t NvAPI_GPU_SetCoolerLevels = 0;

NvAPI_GPU_SetCoolerLevels = NvQueryInterface(0x891FA0AE);

А теперь установите скорость на 100%, hdlGPU[0] означает, что скорость будет установлена ​​на первый GPU:

int retval = NvAPI_GPU_SetCoolerLevels(hdlGPU[0], 0, 100);
    if (retval != 0)//retval retrieves action status {
        printf("Status: %i \n", retval);
    }

Выдает ошибку:

System.AccessViolationException: 'Попытка чтения или записи в защищенную память. Это часто указывает на то, что другая память повреждена.

Другие функции, такие как имя GPU, имя BIOS показывает все в порядке.

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

NvAPI_GPU_SetCoolerLevels_t

Хуже всего то, что nvidia docs вообще не предоставляет никакой информации об этой функции.

В некоторых репозиториях GitHub я читал, что если вы хотите управлять скоростью вентилятора, вы должны изменить параметры на NvAPI_GPU_SetCoolerPolicyTable, но я не смог найти какие параметры существуют для этой функции. Так что теперь я совсем растерялся.

PS для тестирования я собираю скорость вентилятора GPUS, и он показывает правильно, так что проблема осталась на SetCoolerLevels а также SetCoolerPolicyTable

PPS некоторое обновление, если я удаляю неподписанный int из SetCoolerLevels, он печатает ошибку -9 в соответствии с:

https://docs.nvidia.com/gameworks/content/gameworkslibrary/coresdk/nvapi/group__nvapistatus.html

это может означать:

  • Версия структуры аргумента не поддерживается.
  • Дескриптор больше не действителен (вероятно, из-за изменения конфигурации графического процессора или дисплея)

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

PPPS Я просматривал проект github, но ни один из них не работал.

0 ответов

Другие вопросы по тегам