18.인공지능 훈련용 서버 구축하기, GPU 지원 설정 인공지능 모델 훈련을 위한 GPU 설치 및 드라이버 설정 (NVIDIA 드라이버 및 CUDA)

1. 서론

인공지능(AI) 및 딥러닝 분야의 발전으로 인해 고성능 서버에 대한 수요가 급증하고 있습니다. 이러한 요구에 부응하기 위해 GPU 서버를 구축하는 것은 필수적입니다. 이 글에서는 우분투 기반의 인공지능 훈련 서버를 구축하고, NVIDIA 드라이버 및 CUDA를 설치하여 GPU를 활용하는 방법에 대해 자세히 설명합니다.

2. 시스템 요구 사항

GPU를 활용하여 인공지능 모델을 훈련하기 위해서는 특별한 하드웨어와 소프트웨어 요건이 필요합니다. 기본 요구 사항은 다음과 같습니다:

  • OS: 우분투 20.04 이상
  • CPU: 최소 dual-core 이상
  • RAM: 최소 16GB 이상
  • GPU: NVIDIA GPU 카드 (예: GTX 1060, RTX 2080, Tesla V100 등)
  • Disk: SSD 추천, 최소 256GB

이 외에도, 최신 버전의 라이브러리와 툴킷을 사용하기 위해 요구되는 패키지들이 있습니다.

3. 우분투 설치

서버 구축의 첫 단계는 우분투 운영체제를 설치하는 것입니다. 우분투 20.04 LTS 버전을 추천하며, ISO 파일을 다운로드하여 USB를 통해 설치할 수 있습니다.

  1. 우분투 공식 웹사이트에서 ISO 파일 다운로드
  2. 부팅 가능한 USB 드라이브 생성 (Rufus 또는 BalenaEtcher 사용)
  3. USB로 부팅 후, 우분투 설치 과정 진행
  4. 사용자 계정 및 비밀번호 설정

4. NVIDIA 드라이버 설치

NVIDIA GPU를 사용하기 위해서는 그에 맞는 드라이버를 설치해야 합니다. 아래의 단계에 따라 드라이버를 설치합니다.

  1. 터미널을 열고, 최신 패키지를 업데이트 합니다.
  2. sudo apt update && sudo apt upgrade

  3. 필요한 패키지를 설치합니다.
  4. sudo apt install build-essential dkms

  5. NVIDIA PPA를 추가합니다.
  6. sudo add-apt-repository ppa:graphics-drivers/ppa

  7. 패키지를 다시 업데이트합니다.
  8. sudo apt update

  9. 사용 가능한 NVIDIA 드라이버 확인
  10. ubuntu-drivers devices

  11. 제안된 드라이버 설치
  12. sudo ubuntu-drivers autoinstall

  13. 설치가 완료되면 시스템을 재부팅합니다.
  14. sudo reboot

시스템이 재부팅된 후, 다음 명령어를 통해 드라이버가 제대로 설치되었는지 확인합니다:

nvidia-smi

이 명령어를 입력하면, 현재 시스템에 설치된 GPU의 정보 및 드라이버 버전을 확인할 수 있습니다.

5. CUDA 설치

CUDA(Compute Unified Device Architecture)는 NVIDIA에서 제공하는 병렬 컴퓨팅 플랫폼 및 프로그래밍 모델입니다. CUDA는 GPU 성능을 극대화하기 위해 필수적입니다. CUDA 설치는 다음과 같은 절차로 진행됩니다:

  1. NVIDIA 공식 웹사이트에서 CUDA Toolkit 다운로드
  2. CUDA 설치 방법으로 .deb 패키지를 선택하여 download
  3. 다운로드한 패키지를 기반으로 설치합니다.
  4. sudo dpkg -i cuda-repo-ubuntu2004--local.deb

  5. CUDA GPG Key를 추가합니다.
  6. sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub

  7. CUDA 패키지를 업데이트합니다.
  8. sudo apt update

  9. CUDA Toolkit을 설치합니다.
  10. sudo apt install cuda

  11. 환경 변수를 설정합니다.
  12. ~/.bashrc 파일을 열고, 아래 내용을 추가합니다:


    export PATH=/usr/local/cuda/bin:$PATH
    export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH

  13. 변경 사항을 적용합니다.
  14. source ~/.bashrc

6. cuDNN 설치

cuDNN은 NVIDIA가 제공하는 딥러닝 네트워크를 위한 GPU 가속 라이브러리입니다. 모델 훈련을 효율적으로 수행하기 위해 cuDNN을 설치해야 합니다.

  1. 명령어를 통해 cuDNN을 다운로드 합니다 (NVIDIA Developer 계정 필요).
  2. 다운로드한 파일을 설치합니다.
  3. sudo cp cuda/include/cudnn*.h /usr/local/cuda/include

    sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64

  4. cuDNN 권한 변경
  5. sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*

7. TensorFlow/PyTorch 설치

이제 인공지능 모델을 훈련시키기 위한 라이브러리인 TensorFlow 또는 PyTorch를 설치합니다. 이 두 라이브러리는 GPU를 인식하고 사용할 수 있도록 설계되었습니다.

TensorFlow 설치

TensorFlow는 NVIDIA GPU를 사용하여 성능을 극대화 할 수 있습니다. 아래의 명령어를 통해 설치합니다.

pip install tensorflow

PyTorch 설치

PyTorch의 경우 원하는 CUDA 버전에 맞게 설치할 수 있도록 명령어를 선택해야 합니다.

공식 웹사이트에서 제공하는 설치 명령어를 통해 설치할 수 있습니다. 예시:

pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu116

8. 테스트 및 검증

모든 설치가 완료되면, 아래의 코드를 사용하여 GPU가 정상적으로 작동하는지 테스트해야 합니다.

            
                import tensorflow as tf
print("Num GPUs Available: ", len(tf.config.list_physical_devices('GPU')))

또는 PyTorch로 다음과 같이 테스트할 수 있습니다:

            
                import torch
print("Is CUDA available: ", torch.cuda.is_available())
print("Number of GPUs: ", torch.cuda.device_count())

9. 결론

인공지능 훈련용 서버를 구축하고 GPU를 활용하여 모델을 훈련시킬 수 있는 환경을 마련하는 것은 어렵지 않습니다. 위의 단계를 따라 각 종속성과 드라이버를 올바르게 설치하면 강력한 AI 훈련 서버를 운영할 수 있습니다. 이러한 설정은 AI 분야의 다양한 실험 및 연구에 큰 도움이 될 것입니다.