Сбой cuCtxCreate, если панель управления NVIDIA устанавливает оптимизацию для вычислений - PullRequest
0 голосов
/ 02 сентября 2018

Я запускаю CUDA через JCuda API. Когда я использую панель управления NVIDIA для настройки оптимизации вычислений (которая по умолчанию выключена) для участвующего исполняемого файла JVM (java.exe), программе не удается создать контекст при вызове cuCtxCreate.

Для оптимизации, программа работает просто отлично. Единственной проблемой было слишком большое отклонение прошедшего времени в ядре (~ 50%) от запуска к запуску. Я искал способы получить ядра CUDA в монопольном режиме, чтобы получить более стабильный результат.

Я неправильно понимаю этот параметр на панели управления?

Исключение в потоке "main" jcuda.CudaException: CUDA_ERROR_UNKNOWN в jcuda.driver.JCudaDriver.checkResult (JCudaDriver.java:353) в jcuda.driver.JCudaDriver.cuCtxCreate (JCudaDriver.java:1606) на com.varankin.cuda.CudaContext. (CudaContext.java:21)

Конфигурация:

  • Intel i7-4510U со встроенной графикой, установленной в качестве графического процессора по умолчанию.
  • NVIDIA GeForce 840M в общей памяти.
  • Windows 10
  • Java 8, ред. 152
  • JCuda-All-0.9.0d-бен-x86_64
  • CUDA от cuda_9.2.148_win10.exe

1 Ответ

0 голосов
/ 03 сентября 2018

Для оптимизации, программа работает нормально. Единственной проблемой было слишком большое отклонение прошедшего времени в ядре (~ 50%) от запуска к запуску.

Это, вероятно, вызвано пакетированием вычислительных команд драйвером WDDM. Если вы будете искать вокруг, вы найдете некоторые предложения, которые можно попытаться свести к минимуму его отрицательное влияние.

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

Этот тип режима работы существует только для Tesla и некоторых графических процессоров Quadro, использующих режим TCC в Windows. Ваш графический процессор не может быть использован таким образом.

Я неправильно понимаю этот параметр на панели управления?

Да. Цитирование из документации:

Windows 10, Maxwell GPUs and later.
Offers significant improvement for some Compute applications.
Care should be taken when turning this setting ON, as there can
be unpredictable effects with some applications and graphics features.

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

...