WSL (Windows Subsystem for Linux)
✔ 윈도우의 가상화 기능을 활용해서 윈도우 위에서 리눅스를 사용할 수 있게 해줌
✔ 특히 WSL2는 리눅스에서 CUDA 지원 - Windows 10, 버전 1903, 빌드 18362 이상
설치환경
- Windows 10 Pro 22H2, 빌드 19045
- WSL2 - Ubuntu 22.04
WSL2 설치
- 관리자 모드에서 PowerShell 을 실행하여 아래 명령어를 입력
wsl --install
wsl --install
명령을 사용하여 설치된 새 Linux 설치는 기본적으로 WSL2로 설정됨
Ubuntu 버전 변경
wsl -l -v
명령어로 설치된 Linux 배포판을 나열함wsl --list --online
명령어로 사용 가능한 배포판 목록 확인wsl --install -d <Name>
명령어로 특정 배포판 설치wsl --unregister <Name>
명령어로 기존 배포판 제거
wsl --install -d Ubuntu-22.04
로 우분투 22.04버전 설치wsl --unregister Ubuntu
로 기존 설치버전 제거
초기 설정
- 패키지 최신화
sudo apt update
sudo apt upgrade
WSL2 - CUDA 설치
GPU Driver 확인
- WSL2의 경우 WDDM 모드로 동작하는 대부분의 GPU의 Driver를 호환함
- Windows에 설치된 GPU Driver를 불러오므로 WSL2에 따로 설치하지 않음
- WSL2에서
nvidia-smi
명령어로 GPU Driver가 정상 로드되는지 확인
CUDA Toolkit 설치
-
위 세팅의 경우 아래 명령어로 설치
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pinsudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.8.0/local_installers/cuda-repo-wsl-ubuntu-11-8-local_11.8.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-11-8-local_11.8.0-1_amd64.deb
sudo cp /var/cuda-repo-wsl-ubuntu-11-8-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda
CUDA 환경변수 등록
nvcc --version
명령어로 확인nvcc
를 인식하지 못한다면 아래 과정을 진행
sudo nano ~/.bashrc
s
# ~~~
# 마지막줄에 cuda 버전에 맞게 작성
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-11.2/lib64/
export CUDACXX=/usr/local/cuda-11.2/bin/nvcc
export CUDA_HOME=/usr/local/cuda-11.2
export PATH=$PATH:$CUDA_HOME/bin
# 저장 : Ctrl + S
# 종료 : Ctrl + X
nvcc --version
명령어로 설치 확인
Sample 실행
- CUDA Sample은 Cuda Toolkit 11.6 버전 이후로 기본 제공되지 않음
- git clone 하여 사용
- GitHub - NVIDIA/cuda-samples: Samples for CUDA Developers which demonstrates features in CUDA Toolkit
❗ 이슈
WSL2 에서 Tesla A100 지원안됨
- TTC 모드로만 동작하는 A100 또는 일부 Quadro, Tesla GPU는 아직 WSL2 에서 지원하지 않는다.
WSL 2 GPU acceleration will be available on Pascal and later GPU architecture on both GeForce and Quadro product SKUs in WDDM mode. It will not be available on Quadro GPUs in TCC mode or Tesla GPUs yet
참고
- WSL 설치 | Microsoft Learn
- [Windows] WSL 설치 및 사용법
- Window10 | WSL2 & Ubuntu 설치 과정, WSL2 NVIDIA Driver 설치, WSL2 CUDA 설치, WSL2 cudnn 설치 — 초보 개발자의 일기장
- 1. NVIDIA GPU Accelerated Computing on WSL 2 — wsl-user-guide 12.2 documentation
- Nvidia-smi is not working in WSL2 Ubuntu 22.04.1 installed on windows server 2022 - General Topics and Other SDKs / GPU - Hardware - NVIDIA Developer Forums