GPU
(Graphic Processing Unit)
GPU는 컴퓨터 그래픽을 처리하는 장치입니다.
🔺 Image from codingworldnews.com
🔺 Image from 게사장블로그
GPU는 컴퓨터 그래픽을 처리하는 장치이며, 그래픽 카드(VGA)는 GPU와 쿨링 케이스, 외부 출력 포트 등을 포함하는 장치입니다. 즉, VGA 내부에 GPU가 존재합니다.
구조
ALU(실제 연산 담당)
- GPU는 그래픽과 같은 특화된 연산을 빠르게 수행하기 위해서 필요없는 부분을 과감히 지웠습니다. CPU는 적은 수의 고성능 코어 몇 개와 보조장치로 이루어졌다면, GPU는 그냥 수백개의 코어를 결합한 구조입니다.
- GPU는 직접 작업을 처리하기 어렵지만, 연산력을 높이는 데에는 특화되어 있습니다. 특정된 연산을 반복해야하는 딥러닝에는 GPU가 핵심 장치라 할 수 있습니다.
GPGPU
그래픽 가속 API(OpenGL, ...)과 같은 가속 API가 나오면서 그래픽 카드를 잘 제어하게 되었습니다.
단순 연산작업을 넘어 범용 목적의 병렬계산 프로세서(General Purpose Computing on Graphics Processing Units),
GPGPU가 대두되었으며 소프트웨어화를 위해서 NVIDIA 'CUDA' 기술이 나오게 됩니다.
(AMD는 Stream SDK과 유사합니다.)
CUDA
CUDA : Compute Unified Device Architecture의 약자이며 GPU에서 수행하는 병렬 처리 알고리즘을 C언어를 비롯한 산업 표준 언어를 사용하여 작성할 수 있도록 하는 NVIDIA의 GPGPU 기술입니다. GPU 개발 툴입니다.
CUDA를 이용하면 CPU에서 순차적 처리 되던 많은 앙의 데이터를 GPU의 병렬 동시 처리 작업을 통해
고성능의 컴퓨터(Super computer)에서 가능했던 작업이 일반적인 데스크탑에서도 가능하게 됩니다.
Hadoop, Spark -> CPU 기밥 병렬 처리
CUDA -> GPU 기반 병렬 처리
확인
그럼 내 컴퓨터의 GPU를 확인해서 딥러닝의 최적화된 환경인지 체크해봅시다.
Window10 기준 WIN+R 키를 눌러 실행창을 불러와 'dxdiag'를 입력합니다.
그리고 '디스플레이1' 탭을 눌러 확인할 수 있습니다.
저의 그래픽 카드는 NVIDIA GeForce GT 520이며 GPU는 GeForce GT 520입니다.
'Computer Science' 카테고리의 다른 글
Computer Architecture - [RAM] (0) | 2022.12.18 |
---|---|
Computer Architecture - [VGA] (0) | 2022.12.17 |
Computer Architecture - [SSD & HDD] (0) | 2022.12.17 |
Computer Architecture - [MAIN BOARD] (0) | 2022.12.17 |
Computer Architecture - [PSU] (0) | 2022.12.17 |