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++AMP | Visual Studio에 추가된 이기종 지원 람다 표현과 병렬 반복문 결합 C++ Accelerated Massive Parallelism | MS | |
OpenACC | CUDA 추상화 프로그래밍 모델 컴파일러 지시문(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연계로 효율성 도모
View Comments (1)
기술사를 준비하는 저로서는 도리님 사이트를 많이 참고하고 있습니다.^^