GPU 기초, 드라이버부터 PyTorch까지

Junyoung·2026년 3월 30일

AI(GPU)

목록 보기
1/4

어느 날 팀원 중 한 명이 다음과 같은 말을 했다.

choi.openai 님 Threads 포스트 (2025-12-24)

4개월 만에 상용 모델을 따라잡는 오픈소스라니, 직접 돌려보고 싶다는 생각이 바로 들었다.

그냥 API 쓰는 게 아니라, 모델이 내부적으로 어떻게 돌아가는지 직접 부딪혀보기로 했다.

시작하기 전에 GPU 관련 개념부터 제대로 정리해두기로 했다.


레이어 구조

GPU로 AI를 돌리려면 세 가지 계층이 맞춰져 있어야 한다.

PyTorch
   ↑
CUDA
   ↑
NVIDIA 드라이버
   ↑
GPU 하드웨어

위로 올라갈수록 추상화가 높아진다.

아래부터 하나씩 보자.


NVIDIA 드라이버

"운영체제 ↔ GPU 하드웨어를 이어주는 필수 소프트웨어"

OS와 애플리케이션이 GPU에 명령을 보내고 결과를 받게 해주는 가장 낮은 레벨의 소프트웨어 계층이다.

OS 입장에서 이게 없으면 GPU라는 하드웨어 자체를 인식하지 못한다.

드라이버 = GPU 장치 드라이버 (Device Driver)


CUDA

드라이버 위에서 돌아가는 개발용 플랫폼이다.

"GPU를 써서 연산을 짜고 돌리게 해주는 것"

CUDA = GPU 프로그래밍용 SDK + 런타임

개발자 입장에서 이게 없으면 C/Python 코드로 행렬연산이나 딥러닝 같은 걸 GPU에 던질 수 없다.


PyTorch

CUDA 위에서 돌아가는 고수준 프레임워크다.

CPU/GPU에서 텐서 연산, 자동 미분, 딥러닝 모델 구현과 학습을 담당한다.

GPU 가속이 필요할 때 내부적으로 CUDA를 사용한다.

개발자는 torch.cuda 모듈을 통해 CUDA를 직접 다루지 않고도 GPU를 쓸 수 있다.


레이어 순서 정리

레이어역할
NVIDIA 드라이버GPU 인식·초기화, 커널 모드 명령 처리 (가장 아래층)
CUDA 런타임 / 드라이버 API드라이버 위에서 커널 실행, 메모리 할당/복사 등 GPU 연산 제어
PyTorch텐서 연산·NN 모듈·옵티마이저 제공, torch.cuda로 CUDA 추상화

서버 AMI 설정

이번에 AWS에서 아래 AMI를 선택했다.

Deep Learning OSS Nvidia Driver AMI GPU PyTorch 2.9 (Ubuntu 24.04)

이 AMI 하나로 아래가 전부 세팅된 상태로 시작한다.

  • NVIDIA 드라이버 ✅
  • CUDA Toolkit ✅
  • cuDNN ✅
  • PyTorch 2.9 ✅
  • 기타 딥러닝 라이브러리들 ✅

직접 하나씩 설치하면 버전 충돌로 삽질할 가능성이 크다.

딥러닝 AMI를 쓰면 이 과정을 통째로 건너뛸 수 있다 !


다음 편에서는 Out Painting이 뭔지, 상용 서비스들을 직접 써보면서 비교한 과정을 정리한다.

profile
라곰

0개의 댓글