GPGPU (General Purpose GPU)

I. GPU 기반 범용 연산, GPGPU

가. GPGPU(General Purpose Graphic Processing Unit)의 개념

GPU를 그래픽 연산뿐 아니라 일반 컴퓨팅 영역에서 활용 위해 일반 계산에 GPU를 사용하는 기술

나. 등장배경 및 주요 특징

구분내용설명
등장
배경
기계 학습 성장기계학습 기반 딥러닝 폭발적 성장
빅데이터 처리단순 비정형 등 GPU로 처리 충분
주요
특징
초병렬 SIMD/SIMT제어, 캐시 간소화 집적/병렬처리
플랫폼 지원CUDA, OpenCL 등 플랫폼 기반

– 초병렬 SIMD 처리에 의한 강력한 연산능력으로 인공지능, 빅데이터 처리에 활용

 

II. GPGPU의 구성도/구성요소 및 플랫폼/비교

구분상세 설명
구성도
구성
요소
PCI 버스 연동부CPU와 통신 및 CPU 메모리 접근용
SIMD 코어병렬 연산 처리 스레드 프로세서
그래픽 메모리GPU사용 고속 메모리
캐시 메모리코어 내/외부 공유메모리

– AMD HD5870 GPU는 SIMD 코어와 그래픽 메모리, 캐시 등 컨트롤러로 구성
나. GPGPU의 플랫폼 및 비교

구분플랫폼설명관련사
플랫폼CUDA프로그램 모델 등 제공 병렬 처리
CUDA Runtime/Driver API 구성
Compute Unified Device Architecture
NVDIA
OpenCL이 기종 시스템 처리 지원
C, 런타임, API로 구성
Open Computing Language
크로노스
그룹
C++AMPVisual Studio에 추가된 이기종 지원
람다 표현과 병렬 반복문 결합
C++ Accelerated Massive Parallelism
MS
OpenACCCUDA 추상화 프로그래밍 모델
컴파일러 지시문(Directive)기반
for Open Accelerators
NVIDA
비교

– 병렬 라빈 핑거프린팅, 유사문자열 검색 등 GPGPU 활용 기술

 

III. GPGPU 활용 기술 동향

활용 기술세부 설명
병렬 라빈
핑거프린팅
– CPU 순차처리에 비해 16대 성능 향상
– CPU 병렬 처리에 비해 5.3배 성능 향상
유사 문자열
검색
– 문자열 크기에 따라 CPU 대비 최대 10배 성능 향상
빅데이터
처리
– Map & Reduce 시스템의 데이터 처리 시 CPU에 비해 월등한 성능 향상

– 기술 사용목적 및 난이도 고려한 플랫폼 선택 중요하며, CPU-GPU 연계기술 활용 가능

 

IV. GPGPU 효율 위한 CPU와 GPU 연계, HAS

구분세부 설명
HAS
개념
CPU와 GPU를 하나의 연산체로 간주하는 추상계층을 생성하여 GPU를 연산보조용으로 사용하는 이기종 아키텍처
GPGPU
활용

※ HAS (Heterogeneous System Architecture)
– 로보어드바이저, 핵심시스템융합관제 등 GPGPU 기반 구축 시 HAS연계로 효율성 도모
 

One Comment

콘텐츠 사용 시 출처 표기 부탁 드리고, 댓글은 큰 힘이 됩니다^^