GPGPU

페미위키

1 개요

GPGPU는 범용 연산을 위한 그래픽 처리 장치(General-Purpose Graphics Processing Units)의 약자이다.

컴퓨터의 연산은 보통 CPU가 담당한다. 그러나 점점 더 많은 연산량이 필요해지자 다수의 프로세서를 가지고 있으나 개개의 프로세서 성능이 낮은 GPU를 연산 처리 장치로 활용할 방안을 모색하게 된다.

첫 GPGPU 구현은 HLSL을 이용한 GPU 쉐이더 연산이 가능한 Direct3D 9에서 수행되었다. 초창기 GPGPU는 컴퓨트 쉐이더가 아닌 정점 쉐이더와 픽셀 쉐이더만 이용해 구현되었으므로 개발 난이도가 높고 활용도가 낮은 편이었다. Direct3D 9.0c에서 쉐이더 모델 3.0이 사용되며 GPGPU 프로그래밍 활용도가 그나마 높아졌지만 부족한 점이 많았다.

2006년에 NVIDIA에서 GPGPU 언어인 CUDA가 발표되면서 GPGPU 시장이 발전하기 시작했고, 2008년에 AppleOpenCL을 공개하고 Khronos Group에서 표준을 정리하면서 대중적으로 사용되기 시작했다.

2 대표적인 적용 소프트웨어

3 같이 보기