pytorch docker image에서 생성한 container에서 cuda 버전을 어떻게 확인하나요?

안녕하세요, 딥러닝을 공부하고 있는 학생입니다.

공부를 하면서 환경구축에 용이한 docker를 주로 사용하고 있습니다.
일반적으로 pytorch/pytorch:latest 이미지를 사용해서 컨테이너를 만듭니다.

지금까지 gpu사용에도 문제가 없었고, CUDA_VISILE_DEVICES=... 명령어를 사용해서 제가 사용하고자 하는 gpu를 할당하는 것에도 문제가 없었습니다. nvidia-smi 명령어도 잘 뜨고요.

그런데 며칠전에 nvcc 버전을 체크하고자 컨테이너 내부에서 nvcc -V 명령어를 입력했는데 bash: nvcc: command not found 라고 뜨더라고요.
원래 pytorch 이미지에 cuda관련된 것들이 컨테이너를 생성할 때 자동으로 설치되는것으로 알고 있는데 왜 nvcc 가 안 뜰까요? /usr/local/ 폴더에도 cuda 폴더가 존재하지 않아서 cat으로 확인하려고 해도 할 수가 없네요…

좀 두서 없어서 정리를 해보자면 :

  1. pytorch/pytorch:latest 이미지를 사용해서 생성한 container 내부에서 nvcc 명령어가 작동하지 않는다
  2. nvcc 가 설치 되지 않았는지? 설치되어있다면 어떻게 버전을 확인할 수 있는지?
  3. nvidia-smi, CUDA_VISIBLE_DEVICES=… 는 제대로 작동하는 것을 확인했었음

아… 저는 nvidia-smi 하면 귀퉁이에 보이더라구요ㅎㅎ

좋아요 1

답변감사합니다!

그럼 nvcc 가 제대로 작동하지 않아도 별 문제가 없는 환경일까요…?

nvcc는 cuda 관련 바이너리이기 때문에 cuda 경로에서 확인하시면 됩니다.
저 같은 경우에는 /usr/local/cuda/bin/nvcc 에 존재합니다.

이미 빌드된 파이토치를 쓰는 경우에는 nvcc가 실행경로(PATH)에 없어도 사용에는 문제가 없습니다.

좋아요 2

헉 그렇군요! 안그래도 latest 버전이 runtime 버전이면 없을수도 있다고 생각하고 있었는데!

친절한 답변감사합니다! :slightly_smiling_face: