CPU, GPU, NPU는 무엇이 다른가
CPU, GPU, NPU는 무엇이 다른가
컴퓨터를 열어 보면 여러 종류의 연산 장치가 들어 있다. 그중에서도 요즘 자주 함께 언급되는 세 가지가 CPU, GPU, 그리고 NPU다. 이름은 비슷하게 생겼지만 이들이 세상을 바라보고 일을 처리하는 방식은 서로 상당히 다르다. 세 장치의 차이를 이해하는 가장 좋은 방법은, 각각이 어떤 문제를 잘 풀도록 태어났는지를 살펴보는 것이다. 결국 이들은 서로 경쟁하는 관계라기보다, 잘하는 일이 다른 전문가들이 한 팀을 이루고 있는 것에 가깝다.
먼저 CPU는 중앙처리장치(Central Processing Unit)의 줄임말로, 컴퓨터의 두뇌이자 총괄 지휘자라고 부를 수 있다. CPU의 가장 큰 특징은 한 번에 한 가지 일을 매우 빠르고 정확하게, 그리고 복잡한 순서를 따져 가며 처리한다는 데 있다. 문서를 편집하고, 웹 브라우저를 띄우고, 운영체제를 돌리는 것처럼 우리가 컴퓨터로 하는 대부분의 일상적인 작업은 CPU가 맡는다. CPU 안에는 성능이 강력한 코어가 비교적 적은 수로 들어 있다. 최신 개인용 CPU라 해도 코어의 개수는 보통 수 개에서 수십 개 수준이다. 코어 하나하나가 똑똑하기 때문에, 조건을 따지고 분기하며 순서대로 진행해야 하는 '복잡하지만 순차적인' 일에 특히 강하다. 마치 어려운 문제를 논리적으로 하나씩 풀어 나가는 소수 정예의 전문가 집단과 같다.

그런데 세상에는 복잡하지는 않지만 똑같은 계산을 엄청나게 많이 반복해야 하는 종류의 일도 있다. 대표적인 예가 화면에 그림을 그리는 일이다. 모니터의 수백만 개 화소마다 색을 계산해야 하는데, 각각의 계산은 단순하지만 그 수가 어마어마하다. 이런 일을 CPU에게 시키면, 아무리 똑똑한 코어라도 하나씩 순서대로 처리하느라 시간이 오래 걸린다. 바로 이 지점에서 GPU가 등장한다. GPU는 그래픽처리장치(Graphics Processing Unit)로, 원래 화면을 빠르게 그려 내기 위해 만들어졌다. GPU의 핵심 전략은 CPU와 정반대다. 각각은 그리 똑똑하지 않지만 수천 개에 달하는 작은 코어를 한꺼번에 동원해, 단순한 계산을 동시에 병렬로 처리한다. 소수의 전문가가 아니라, 단순 작업을 동시에 수행하는 거대한 군중을 떠올리면 된다.
흥미로운 점은 인공지능, 특히 딥러닝의 계산 방식이 이 병렬 처리와 놀랍도록 잘 맞아떨어진다는 사실이다. 신경망의 학습과 추론은 결국 방대한 행렬 곱셈과 덧셈의 반복인데, 이는 화면을 그리는 일만큼이나 '단순한 계산의 대량 반복'이라는 성격을 지닌다. 그래서 GPU는 그래픽 카드라는 본래의 이름을 넘어, 오늘날 인공지능 연구와 개발의 핵심 장비로 자리 잡았다. 우리가 알고 있는 거대한 언어 모델들이 학습되는 현장에는 어김없이 수많은 GPU가 동원된다.
여기까지 보면 CPU와 GPU만으로도 충분해 보일 수 있다. 그렇다면 NPU는 왜 필요한 것일까. NPU는 신경망처리장치(Neural Processing Unit)로, 이름 그대로 인공 신경망 연산만을 위해 특별히 설계된 칩이다. GPU가 그래픽이라는 원래 목적을 가진 채로 인공지능에 '빌려 쓰이는' 범용성 높은 도구라면, NPU는 처음부터 신경망 계산 한 가지에 집중하도록 만들어진 전문 장치다. 목적이 좁은 대신, 그 좁은 목적 안에서는 매우 효율적이다. 특히 NPU가 빛을 발하는 부분은 성능 자체보다 전력 효율에 있다. 같은 인공지능 연산을 수행할 때 NPU는 CPU나 GPU보다 훨씬 적은 전력으로 더 빠르게 처리할 수 있다.
이 전력 효율이 왜 중요한지는 우리가 매일 쓰는 스마트폰을 떠올리면 쉽게 이해된다. 사진을 찍을 때 얼굴을 자동으로 알아보고, 음성 명령을 알아듣고, 번역을 즉석에서 해 주는 기능들은 모두 신경망 연산을 필요로 한다. 만약 이런 일을 할 때마다 데이터를 서버로 보내 처리한다면 시간이 걸리고 개인정보 문제도 생긴다. 그렇다고 배터리로 움직이는 작은 기기에서 GPU를 쉴 새 없이 돌리면 금세 열이 나고 전력이 바닥난다. NPU는 바로 이 틈을 메운다. 기기 안에서 직접, 적은 전력으로 인공지능 연산을 처리하는 '온디바이스 AI'를 가능하게 하는 것이 NPU의 존재 이유다. 그래서 요즘 나오는 스마트폰과 노트북에는 CPU, GPU와 함께 NPU가 하나의 칩 안에 나란히 들어가 있는 경우가 많다.
세 장치의 차이를 한 문장으로 정리하면 이렇게 말할 수 있다. CPU는 복잡한 일을 순서대로 똑똑하게 처리하는 만능 지휘자이고, GPU는 단순한 계산을 동시에 대량으로 밀어붙이는 병렬 처리의 강자이며, NPU는 인공지능 연산을 적은 전력으로 효율적으로 처리하는 전문 일꾼이다. 이들은 서로를 대체하기 위해 존재하는 것이 아니다. 실제로 하나의 스마트폰 안에서 CPU는 전체 시스템을 관리하고, GPU는 게임 화면과 그래픽을 그리며, NPU는 카메라의 인공지능 기능을 조용히 담당한다. 각자가 가장 잘하는 일을 나누어 맡을 때 기기 전체의 성능과 효율이 가장 좋아진다.
결국 CPU, GPU, NPU의 이야기는 기술의 발전이 어떻게 진행되는지를 잘 보여 준다. 처음에는 하나의 만능 장치로 모든 일을 처리하려 했지만, 특정한 종류의 계산이 폭발적으로 늘어나면서 그 일에 특화된 장치가 새로 태어났다. 그래픽 수요가 GPU를 낳았고, 인공지능 수요가 NPU를 낳은 셈이다. 앞으로 어떤 새로운 계산 수요가 등장하느냐에 따라, 지금은 상상하지 못한 또 다른 이름의 전용 칩이 우리 곁에 자리 잡게 될지도 모른다. 중요한 것은 이 세 장치가 경쟁이 아니라 협력을 통해, 우리가 매일 사용하는 기기를 더 빠르고 똑똑하며 효율적으로 만들어 주고 있다는 사실이다.