이 포스트를 찾아오신 분들은 분명 GPU를 활용한 딥러닝 개발을 시작하려고 하시는 분들일 것입니다. 이 글은 Ubuntu 환경에서 CUDA 기반 GPU 연산을 준비한 과정을 정리한 실전 가이드입니다.
특히 초심자 분들이 "내 PC에 CUDA가 제대로 설치되었을까?" 확인하고 싶은 경우 따라하기 좋은 내용으로 구성했습니다.

CUDA가 무엇인지 개념부터 궁금하신 분들은 이전 포스트 CUDA란 무엇인가? GPU와 병렬 컴퓨팅의 시작을 먼저 보고오시기를 권장합니다.

NVIDIA driving CUDA supercar


1. 왜 GPU 환경을 설정해야 할까?

AI 모델 학습은 매우 많은 수의 행렬 연산을 요구합니다.
이런 연산은 CPU보다 병렬 연산에 특화된 GPU에서 훨씬 더 빠르게 수행됩니다.

하지만 GPU가 있다고 끝이 아닙니다.
운영체제에 GPU를 알려주는 드라이버,
GPU에서 연산이 가능하도록 해주는 CUDA,
딥러닝에 최적화된 라이브러리인 cuDNN,
이 세 가지가 정확히 잘 설치되어야 GPU를 사용할 수 있습니다.


2. 내 GPU 상태 확인 – 드라이버와 CUDA가 있는가?

nvidia-smi

이건 GPU의 현재 상태를 보여주는 도구입니다.
여기서 CUDA Version이 보이고, GPU 이름이 정확히 나온다면,
"GPU가 정상 인식되었고 드라이버도 설치되어 있음"을 의미합니다.


3. CUDA 개발 도구 – nvcc는 왜 필요할까?

nvcc는 CUDA 코드(.cu)를 컴파일하는 툴입니다.
비유하자면, CUDA를 “진짜로 써먹기 위해” 필요한 컴파일러입니다.

sudo apt update
sudo apt install nvidia-cuda-toolkit
nvcc --version

4. cuDNN – 딥러닝 연산을 GPU에서 빠르게 해주는 비밀 병기

cuDNN은 딥러닝 연산을 최적화해주는 NVIDIA의 딥러닝 전용 고속 수치 연산 라이브러리입니다.

딥러닝 프레임워크(PyTorch, TensorFlow 등)에서 사용되는

  • Convolution
  • Pooling
  • RNN
  • LSTM
  • BatchNorm
  • Activation 같은 연산을 GPU에서 엄청 빠르고 효율적으로 계산할 수 있게 해

PyTorch, TensorFlow 등 딥러닝 프레임워크를 사용하실 계획이 있으신 분들은 정말 필수 라이브러리입니다.

CUDA 버전에 맞는 cuDNN 패키지를 설치해야 프레임워크가 GPU를 효율적으로 사용할 수 있습니다.

cuDNN패키지는 운영체제와 CPU 아키텍쳐에 따라서 그 다운로드 경로가 다르므로 다운로드 하실때는 반드시 NVIDIA의 공식 cuDNN 다운로드 페이지에 가셔서 자신에게 맞는 라이브러리를 다운로드하시고 설치 하시기 바랍니다.

NVIDA cuDNN 다운로드 링크

위 링크를 통해서 cuDNN을 다운로드 하실 때에는 가장 처음 nvdia-smi에서 확인했던 자신의 CUDA 버젼을 확인하고 맞는 cuDNN을 설치하시기 바랍니다.


5. 테스트 – Python에서 GPU가 작동하는지 확인하자

설치를 하셨으면, 제대로 작동하는지 확인을 해 봅시다.

import torch
print(torch.cuda.is_available())          # True
print(torch.cuda.get_device_name(0))      # NVIDIA GeForce RTX  XXXX

6. 요약

구성 요소 Your Action Why you've done this
NVIDIA 드라이버 설치 상태 확인 (nvidia-smi) GPU를 시스템에서 인식
CUDA Toolkit nvcc 설치 CUDA 코드 실행을 위한 컴파일러
cuDNN cudnn-cuda-12 설치 딥러닝 연산 최적화 라이브러리
PyTorch 테스트 GPU 연동 확인 실제 연산 가능한지 검증

7. Jesse의 마무리

이제 여러분의 시스템은 GPU 연산을 위한 준비가 완료되었습니다.
이 환경을 바탕으로 Whisper, LLaMA, ChatGPT 등 다양한 모델을 GPU로 빠르게 학습하거나 실행할 수 있을 것입니다.