Использование GPU требует CUBLAS_WORKSPACE_CONFIG=:4096:8 or CUBLAS_WORKSPACE_CONFIG=:16:8
Система: Windows 11. Python 3.9, CUDA 11.7
Я абсолютно не разбираюсь в программировании, но хотел запустить скрипт с самообучением, который использует библиотеку PyTorch. При запуске на CPU проблем не возникает. Но при попытке запустить на GPU получается такая ошибка:
RuntimeError: Deterministic behavior was enabled with either `torch.use_deterministic_algorithms(True)` or `at::Context::setDeterministicAlgorithms(true)`, but this operation is not deterministic because it uses CuBLAS and you have CUDA >= 10.2. To enable deterministic behavior in this case, you must set an environment variable before running your PyTorch application: CUBLAS_WORKSPACE_CONFIG=:4096:8 or CUBLAS_WORKSPACE_CONFIG=:16:8. For more information, go to https://docs.nvidia.com/cuda/cublas/index.html#cublasApi_reproducibility
После того как заменил:
torch.use_deterministic_algorithms(True)
на:
torch.use_deterministic_algorithms(True, warn_only=True)
, то вроде бы запускается. Но теперь есть множественные уведомления по типу этого:
C:\Python\lib\site-packages\torch\nn\modules\linear.py:114: UserWarning: Deterministic behavior was enabled with either `torch.use_deterministic_algorithms(True)` or `at::Context::setDeterministicAlgorithms(true)`, but this operation is not deterministic because it uses CuBLAS and you have CUDA >= 10.2. To enable deterministic behavior in this case, you must set an environment variable before running your PyTorch application: CUBLAS_WORKSPACE_CONFIG=:4096:8 or CUBLAS_WORKSPACE_CONFIG=:16:8. For more information, go to https://docs.nvidia.com/cuda/cublas/index.html#cublasApi_reproducibility (Triggered internally at C:\actions-runner\_work\pytorch\pytorch\builder\windows\pytorch\aten\src\ATen\Context.cpp:159.)
Теперь CPU загружен не на 100%, а вот GPU - почти на 100%. Однако скорость выполнения шагов только уменьшилась.
Можно ли с этим что-то сделать? И правильно ли я вообще понял работу системы?
Ссылка на скрипт
Ну и пропишите в своих environment variables эти параметры. Если не знаете как, вот вам в картинках:

затем

затем

затем

затем

в верхнем поле пишете "CUBLAS_WORKSPACE_CONFIG", а в нижнем ":4096:8" (без кавычек, разумеется).
Аналогично и про другие переменные.
В конце фиксируете изменения при помощи кнопочки ОК и пробуете еще раз свои действия.