GPGPU
"General-Purpose computation on Graphics Processing Units"의 약자입니다. GPGPU 또는 GPU 컴퓨팅은 GPU를 사용해 일반적인 컴퓨팅 작업을 처리하는 것입니다. 최신 운영 체제에서는 프로그램이 CPU와 함께 GPU에 액세스할 수 있으므로 전체 성능이 향상됩니다.
GPU는 그래픽 계산을 처리하도록 설계되었지만, 다른 작업을 수행하는 데도 사용할 수 있습니다. GPGPU는 중앙 처리 장치(CPU)의 일부 작업을 GPU로 분산해 처리 효율을 극대화합니다. 그래픽을 처리하지 않을 때 유휴 상태로 있는 대신 GPU를 다른 작업에 계속 사용할 수 있습니다. GPU는 벡터 계산 처리에 최적화되어 있으므로 일부 명령을 CPU보다 더 빠르게 처리할 수도 있습니다.
GPGPU는 CPU와 GPU가 작업을 나누어 동시에 처리하는 병렬 처리의 한 유형입니다. GPU가 계산을 완료하면 그 결과를 버퍼에 저장한 다음 CPU로 전달할 수 있습니다. 프로세서는 매초 수백만 개의 작업을 완료할 수 있으므로 데이터가 버퍼에 저장되는 시간은 보통 몇 밀리초에 불과합니다.
GPU 컴퓨팅은 CPU와 GPU가 처리 요청을 공유할 수 있도록 하는 프로그래밍 언어를 사용해 구현됩니다. 가장 널리 사용되는 언어는 여러 플랫폼과 비디오 카드에서 지원되는 개방형 표준인 OpenCL입니다. 그 밖에도 NVIDIA가 만든 API인 CUDA (Compute Unified Device Architecture)와 AMD가 제공하는 SDK인 APP (Accelerated Parallel Processing)이 있습니다.
지식 테스트하기