Проблема PyTorch с определенной версией CUDA

Фон

Мне нужно протестировать эту модель ИИ на следующем сервере CUDA:

https://github.com/sicxu/Deep3DFaceRecon_pytorch

$ nvidia-smi 
Tue Jun 18 18:28:37 2024       
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 545.23.08              Driver Version: 545.23.08    CUDA Version: 12.3     |
|-----------------------------------------+----------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
|                                         |                      |               MIG M. |
|=========================================+======================+======================|
|   0  NVIDIA GeForce RTX 3060        On  | 00000000:41:00.0 Off |                  N/A |
|  0%   40C    P8              13W / 170W |     39MiB / 12288MiB |      0%      Default |
|                                         |                      |                  N/A |
+-----------------------------------------+----------------------+----------------------+
                                                                                         
+---------------------------------------------------------------------------------------+
| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|    0   N/A  N/A      1078      G   /usr/lib/xorg/Xorg                           16MiB |
|    0   N/A  N/A      1407      G   /usr/bin/gnome-shell                          3MiB |
+---------------------------------------------------------------------------------------+

Но во время тестирования я получаю это предупреждение:

/home/arisa/.conda/envs/deep3d_pytorch/lib/python3.6/site-packages/torch/cuda/init.py:125: Предупреждение пользователя: NVIDIA GeForce RTX 3060 с возможностью CUDA sm_86 несовместима с текущей установкой PyTorch. Текущая установка PyTorch поддерживает возможности CUDA sm_37 sm_50 sm_60 sm_61 sm_70 sm_75 Compute_37. Если вы хотите использовать графический процессор NVIDIA GeForce RTX 3060 с PyTorch, ознакомьтесь с инструкциями по адресу https://pytorch.org/get-started/locally/

Я получаю эту ошибку после приведенного выше предупреждения:

RuntimeError: ошибка CUDA: на устройстве нет образа ядра, доступного для выполнения.

Примечание: CUDA 12.2 против 12.3

Мне удалось без проблем протестировать ту же модель искусственного интеллекта в Google Colab с помощью CUDA 12.2. Я не уверен, почему сервер с CUDA 12.3 доставляет проблемы.

Почему?

Почему CUDA 12.2 работает нормально, 12.3 выдает предупреждения и ошибки?

Сборка из исходников

Итак, я просто подумал, что создам PyTorch 1.6.0 — требуемый моделью искусственного интеллекта — с CUDA 12.3. Я просто хотел спросить о возможности сборки из исходников. Я просто хочу знать, можно ли собрать PyTorch 1.6.0 вместе с CUDA 12.3 без исправления исходного кода:

https://github.com/pytorch/pytorch/releases/tag/v1.6.0

🤔 А знаете ли вы, что...
Python используется в разработке мобильных приложений с использованием Kivy.


81
1

Ответ:

Решено

Как прокомментировал @talonmies:

Это не имеет никакого отношения к «версиям CUDA», что не имеет значения. Проблема четко описана в сообщении об ошибке: в случае с Colab используется Tesla T4 (вычислительные возможности 7.5), для которого имеющаяся у вас сборка Pytorch включает поддержку двоичных файлов, тогда как другой графический процессор представляет собой устройство с вычислительными возможностями 8.6 и поддержка двоичных файлов отсутствует. в той же сборке Pytorch. Вам нечего делать, кроме как получить сборку версии PyTorch, которую вы хотите использовать, с включенной поддержкой двоичных вычислений Compute 8.6, если такая вещь существует.

План

Я собираюсь найти первые/самые ранние версии PyTorch, обладающие вычислительными возможностями 8.6, а затем протестировать их, чтобы увидеть, можно ли с ними запустить модель ИИ...