Amazon EC2 P2 인스턴스에서 실행되는 Deep Learning AMI(DLAMI)에서는 CUDA를 사용할 수 없습니다.

Amazon EC2 P2 인스턴스에서 실행되는 Deep Learning AMI(DLAMI)에서는 CUDA를 사용할 수 없습니다.

나는 뛰고있어Ubuntu 18.04 딥 러닝 AMI(DLAMI)AWS에서 EC2 인스턴스에서 실행하려고 하는데 p2.xlargePython 인터프리터에서 CUDA를 사용할 수 없습니다. 나는 CUDA가 토치/CUDA와 함께 사용하도록 설계된 AMI이기 때문에 즉시 작동할 것이라고 가정합니다.

pytorch_latest_p37DLAMI가 사전 설치된 Conda 환경에서 코드를 실행하려고 합니다. Python3.7을 사용하며 CUDA 11.0으로 구축된 PyTorch 1.7.1과 함께 제공됩니다.

ubuntu@ip-111-21-33-212:~$ source activate pytorch_latest_p37

nvidia-smi두 출력 모두 nvccCUDA가 설치되었음을 나타내는 것 같습니다.

(pytorch_latest_p37) ubuntu@ip-111-21-33-212:~$ nvidia-smi
Sun Jul 18 07:51:09 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 450.119.03   Driver Version: 450.119.03   CUDA Version: 11.0     |
|-------------------------------+----------------------+----------------------+
| 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  Tesla K80           On   | 00000000:00:1E.0 Off |                    0 |
| N/A   32C    P8    30W / 149W |      0MiB / 11441MiB |      0%      Default |
|                               |                      |                  N/A |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                                  |
|  GPU   GI   CI        PID   Type   Process name                  GPU Memory |
|        ID   ID                                                   Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+


(pytorch_latest_p37) ubuntu@ip-111-21-33-212:~$ nvcc --version                  nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2020 NVIDIA Corporation
Built on Mon_Oct_12_20:09:46_PDT_2020
Cuda compilation tools, release 11.1, V11.1.105
Build cuda_11.1.TC455_06.29190527_0

하지만 ipython으로 torch.cuda.is_available()반환하면 false토치가 CUDA 지원으로 컴파일되지 않았다는 오류가 발생합니다.

(pytorch_latest_p37) ubuntu@ip-111-21-33-212:~$ ipython
Python 3.9.5 (default, Jun  4 2021, 12:28:51)
Type 'copyright', 'credits' or 'license' for more information
IPython 7.22.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import torch

In [2]: torch.cuda.is_available()
Out[2]: False

In [3]: torch.zeros(1).cuda()
---------------------------------------------------------------------------
AssertionError                            Traceback (most recent call last)
<ipython-input-2-0904fac96cba> in <module>
----> 1 torch.zeros(1).cuda()

~/anaconda3/envs/pytorch_latest_p37/lib/python3.9/site-packages/torch/cuda/__init__.py in _lazy_init()
    164                 "Cannot re-initialize CUDA in forked subprocess. " + msg)
    165         if not hasattr(torch._C, '_cuda_getDeviceCount'):
--> 166             raise AssertionError("Torch not compiled with CUDA enabled")
    167         if _cudart is None:
    168             raise AssertionError(

AssertionError: Torch not compiled with CUDA enabled

여기서 무슨 일이 일어나고 있는 걸까요? P2/P3 인스턴스에서 CUDA를 실행하려면 어떻게 해야 합니까?

감사해요!

관련 정보