241118 CS 스터디

apple-mint·2024년 11월 18일

CS study

목록 보기
9/15

GPU의 용도와 처리 방식

1) GPU의 정의

  • 그래픽 처리 장치
  • 대량의 그래픽 연산을 위해 탄생한 장치
  • GPU가 CPU의 산술 연산을 보조하므로 보조프로세서라고 부르기도 함

2) GPU의 용도

  • 비디오 게임 그래픽 렌더링 등 대량의 그래픽 연산 시 활용
  • 그외에도 딥러닝 연산, 가상화폐 채굴 등 다양한 분야에 대한 연산에서 범용적인 목적으로 활용됨
  • 최근 AI 발전을 위해 고성능 GPU를 보유하고 사용하는 것이 중요
  • GPGPU: 범용적인 목적의 GPU 사용 기술

3) GPU의 특징

(1) 병렬 처리

  • CPU의 코어보다는 개별 코어의 성능은 떨어지지만 수백 개에서 수천 개의 코어가 포함되어 있음
  • 어떠한 크고 복잡한 문제를 쉽고 간단한 여러 문제로 쪼갠 뒤 이를 처리할 수 있는 수단을 동시에 동원해 빠르게 문제를 해결함

(2) 구성 요소

  • GPU 코어: 수백 개에서 수천 개의 개별 GPU 코어로 구성
  • 캐시 메모리: L1 캐시, L2 캐시 메모리 등
  • RAM: 많게는 수십 기가바이트에 이르는 용량

(3) 작업 방식

  • 직접 소스 코드를 입력해 수행할 작업을 지정하는 경우가 많음
  • CUDA를 이용해 일반적인 프로그래밍 언어로 GPU 수행 작업을 작성
  • CUDA
    • 엔비디아에서 개발한 프로그래밍 모델
    • CPU가 실행할 코드인 호스트 코드, GPU가 실행할 코드인 디바이스 코드로 구성되어 있음
    • CPU가 호스트 코드를 실행하다가 디바이스 코드가 나오면 해당 코드가 GPU 메모리로 복사되고 GPU는 이 코드를 실행해 결과를 CPU에게 전달

(4) CPU와의 차이점

CPUGPU
강력한 소수의 코어가 포함약한 다수의 코어가 포함
한번에 하나의 작업을 수행
=> 직렬 명령 처리
한번에 여러 작업을 수행
=> 병렬 명령 처리
ALU, 제어장치, 레지스터, 캐시의 처리 구조가 복잡제어장치를 공유하는 수많은 ALU, 캐시로 구성됨
다양한 환경의 작업을 처리특화된 연산을 처리
낮은 대기 시간 강조높은 처리량 강조

참고자료

0개의 댓글