인공지능을 좋아하는 곧미남

Linux AI 개발 환경 구축 본문

Linux(Ubuntu)

Linux AI 개발 환경 구축

곧미남 2022. 3. 30. 09:30

Linux os에서 우분투를 설치하여 훨씬 직관적으로 보기 쉬운 GUI 환경에서 작업할 수 있었다.

 

하지만, Tensorflow, Pytorch 등의 인공지능 API 코드를 실행하거나 Cuda GPU를 사용하기 위해 우분투 버전에 적합한 버전들을 설치해야했고, 결과적으로 여러번의 재설치를 통해 삽질을 3일동안 했다. 그래서 삽질하는 동안의 기록을 남겨 다음엔 실수하지 않도록 노력하겠다.

 

<INDEX>

1. 우분투 리눅스 설치

 

2. 아나콘다 가상환경 생성

 

3. IDE 파이참 설치

 

4. pip 설치

 

5. Cuda Toolkit 버전 일치화

 

6. Tensorflow 버전 일치화

 

7. Pytorch 버전 일치화

 

8. Nvidia-driver 설치


1. 우분투 리눅스 설치

https://wjdtmddnjs6788.tistory.com/941

2. 아나콘다 가상환경 생성

https://ieworld.tistory.com/12

3. IDE 파이참 설치

https://www.crocus.co.kr/1659

4. pip 설치

https://jjeongil.tistory.com/1274

5. Cuda Toolkit 버전 일치화

https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&Distribution=Ubuntu&target_version=18.04 

 

CUDA Toolkit 11.6 Update 2 Downloads

Resources CUDA Documentation/Release NotesMacOS Tools Training Sample Code Forums Archive of Previous CUDA Releases FAQ Open Source PackagesSubmit a BugTarball and Zip Archive Deliverables

developer.nvidia.com

6. Tensorflow 버전 일치화

https://www.tensorflow.org/install/source#tested_build_configurations

 

소스에서 빌드  |  TensorFlow

소스에서 빌드 소스에서 TensorFlow pip 패키지를 빌드하고 Ubuntu Linux 및 macOS에 설치합니다. 명령어는 다른 시스템에도 적용될 수 있지만, Ubuntu 및 macOS용으로만 테스트되었으며 지원됩니다.참고: 잘

www.tensorflow.org

7. Pytorch 버전 일치화

https://pytorch.org/get-started/locally/

8. Nvidia-driver 설치

https://hwiyong.tistory.com/233

 

9. cudnn 설치

https://developer.nvidia.com/rdp/cudnn-archive

 

cuDNN Archive

NVIDIA cuDNN is a GPU-accelerated library of primitives for deep neural networks.

developer.nvidia.com

10. 시행 착오 및 고찰

- 시행착오1: cudatoolkit, cudnn을 설치하고 sudo gedit ~./bashrc 에서 시스템 환경변수를 local path로 잡아주어야 한다. 하지만, anaconda 가상환경 path나 path를 지정하지 않으면 엉뚱한 곳에서 cuda 라이브러리를 실행하기 때문에 정상적으로 GPU를 사용할 수 없다.

고찰: cudatoolkit을 설치하고 시스템 환경변수 경로를 아나콘다 가상환경 path 또는 local path로 사용자가 지정하여 cuda를 사용할 수 있습니다. 그래서 여기서 얻은 인사이트는 cudatoolkit과 cudnn 시스템 환경변수 경로를 conda 가상환경의 경로로 맞추어준다면, cuda tooklit이랑 cudnn을 가상환경에 설치해서 가상환경 별로 cuda 버전 셋팅이 가능할 것 같습니다. 아직 직접 시도해보진 않았지만 충분히 가능성이 있습니다. 하지만 카카오 오픈챗에서 자문을 구한 결과 여론은 아나콘다 환경을 따로 잡더라도 충돌이 일어날 가능성이 농후하다. 그래서 도커를 사용한다고 답변을 받았습니다. 근데 도커를 사용하지 못하는 환경에서는 충분히 구축해볼만한 시도라고 생각듭니다. 결국엔 cudatoolkit과 cudnn을 local에 저장할지 anaconda 가상환경에 저장할지 선택하고 환경변수 경로를 맞추어 주면 된다.

 

  1) anaconda 가상환경에 저장할 경우 가상환경마다 다른 cuda 버전을 저장할 수 있음

 

  2) local에 저장할 경우 하나의 cuda 버전을 사용할 수 있음.

 

- 시행착오2: 새로운 cudatoolkit 버전을 재설치하면 기존의 아나콘다 가상환경의 라이브러리도 모두 지우고 새로 build 해야한다. 그래야 그 cuda version에 맞게 실행 된다.

 

- 시행착오3: nvidia-driver -> cudatoolkit -> cudnn 순으로 보통 설치를 합니다. 근데 여기서 cudatoolkit을 설치했을때 자동으로 그 버전에 맞는 nvidia-driver가 설치될 수 있어 앞전에 설치한 nvidia-driver 버전과 충돌이 일어날 수 있음으로 이러한 경우 기존의 nvidia-driver를 삭제하고 원하는 버전의 nvidia-driver를 재설치하거나, 그냥 cudatoolkit만 설치해서 확인하는 방법이 있습니다.

'Linux(Ubuntu)' 카테고리의 다른 글

윈도우, Ubuntu 듀얼 부팅 시 고려사항  (0) 2023.01.18
Comments