brunch

You can make anything
by writing

C.S.Lewis

by KoreaIT Dec 07. 2019

1. 기본용어의 이해

1.1.1 CPU와 GPU의 차이

GPU (Graphics Processing Unit), CPU (Central Processing Unit)

CPU는 컴퓨터의 두뇌를 담당한다. 다양한 환경에서의 작업을 빠르게 수행하기 위해 ALU의 구조가 복잡하고 명령어 하나로 처리할 수 있는 기능도 많으며 각종 제어 처리를 위한 부분이 많다. 반면 GPU는 특화된 연산을 빠른 속도로 처리하기 위해 단순한 ALU를 다수 갖고 있는 구조로 이루어졌다. 이 때문에 GPU 단독으로는 아무것도 처리할 수 없으며 GPU를 제어하는 것은 여전히 CPU의 역할이다.


<Simple CPU-GPU architecture model>  출처: 나무 위키


CPU는 입출력 장치, 기억장치, 연산장치를 비롯한 컴퓨터 리소스를 이용하는 최상위 계층 장치인 '중앙처리장치'로써, 컴퓨터의 두뇌와 같은 역할을 담당한다. 따라서 데이터 처리와 더불어 프로그램에서 분석한 알고리즘에 따라 다음 행동을 결정하고 멀티태스킹을 위해 나눈 작업들에 우선순위를 지정하고 전환하며 가상 메모리를 관리하는 등 컴퓨터를 지휘하는 역할을 수행한다. 컴퓨터 프로그램의 대부분은 복잡한 순서를 가진 알고리즘을 가지고 작동하므로 CPU가 적합하다.


GPU는 비디오, 즉 픽셀로 이루어진 영상을 처리하는 용도로 탄생했다. 이 때문에 CPU에 비해 반복적이고 비슷한, 대량의 연산을 수행하며 이를 병렬적으로(Parallel) 나누어 작업하기 때문에 CPU에 비해 속도가 대단히 빠르다. 영상, 렌더링을 비롯한 그래픽 작업의 경우 픽셀 하나하나에 대해 연산을 하기 때문에 연산능력이 비교적 떨어지는 CPU가 GPU로 데이터를 보내 재빠르게 처리한다.


작가의 이전글 한 권으로 끝내는 딥러닝/머신러닝
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari