그 동안 윈도우를 사용하며 맥으로 갈아탈까 고민하다가 남이있던 이유가 바로 WSL(Windows Subsystem for Linux) 때문이었다.
사실 윈도우에서 개발을 한다는 것은 시간적, 정신적 에너지 소모가 크다고 생각했다. 윈도우에서 개발 후 개발서버에 테스트 및 배포할 경우 유닉스 기반인 맥과, 리눅스와 달리 전혀 다른 os 구조로 인해 이슈와 에러가 항상 뒤따르기 마련이고 결국 1.5배의 시간이 더 소모되었다.
하지만 WSL을 사용하면서 부터 사실상 리눅스 환경과 거의 동일한 환경에서 개발할 수 있게 되었다. 기존에 virtualbox라던가 vmware와 같은 가상 머신을 이용하는 방법도 있지만 써보면 알다시피 굉장히 불편하고 느리다.
WSL에서는 linux kernel이 윈도우 위에서 실행되며, 위도우와 독립된 환경이 아닌 통합된 환경에서 실행된다. 그렇기에 훨씬 더 빠른 file I/O 성능을 보여준다.
WSL2를 이용하기 위해선 Windows 10 version 2004(Build 19041) 보다 높은 버전을 사용하거나 Windows 11을 사용해야 한다.
wsl --install
최근 윈도우 업데이트를 통해 WSL2의 설치 방법이 단 한줄로 가능해졌다.
PowerShell 혹은 Windows Terminal 에서 위 코드를 수행하면 끝.
wsl --status
설치가 완료된 후 컴퓨터를 reboot해준 후 wsl의 잘 설치되었는지 확인해준다.
위 방법과 같이 설치할 경우 default 배포판인 Ubunut가 설치가 된다.
WSL 실행을 위해서는 윈도우 검색창에 Ubuntu를 검색해서 실행하거나, windows terminal을 사용할 경우 아래 화면에서 Ubuntu를 클릭하여 진입하면 된다.
MS에서 2020년부터 CUDA를 WSL에 정식지원하긴 하였으나, docker container를 이용한 써드파티느낌으로 작동시켜야했고, 작동도 불안정했었으나 마찬가지로 최근 업데이트 후 CUDA 설치 및 동작이 매우 안정화되었다.
우선 아래 링크에서 Get CUDA Driver 버튼을 클릭하여 Nvidia GPU driver를 다운로드 및 설치해준다.
CUDA toolkit 설정을 위해 우선 터미널에서 ubuntu로 진입 후 아래 명령어를 실행해준다.
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/11.4.0/local_installers/cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-11-4-local_11.4.0-1_amd64.deb
sudo apt-key add /var/cuda-repo-wsl-ubuntu-11-4-local/7fa2af80.pub
sudo apt-get update
sudo apt-get -y install cuda
설치가 완료된 후 아래의 명령어를 통해 인식된 GPU를 확인할 수 있다.
nvidia-smi -q
안녕하세요! WSL 2를 사용중인데 GPU Driver는 그럼 window 버전으로 깔아야할까요?