NPU, HBM and PIM

AI 반도체 - GPU, NPU, PIM, 그리고 HBM

요즘 컴퓨터 산업의 가장 큰 화두는 AI입니다. 반도체 시장에서도 AI 관련 분야에 관심이 많은데요, AI 반도체와 관련된 용어들을 알기 쉽게 정리해보겠습니다.

GPU는 어떻게 AI 시장을 장악하게 됐는지?

GPU는 원래는 게임을 위한 그래픽 프로세서였습니다. 컴퓨터가 보급이 되면서 사람들이 게임을 하게 되고, 게임을 하려니까 화면, 즉 픽셀들을 빠르게 병렬로 처리해야 게임이 원활하게 플레이 할 수 있습니다. 이것에 특화된 칩을 만들자고 해서 나온게 GPU(Graphic processing unit)이고, 그래서 GPU는 병렬 연산을 처리하는데 뛰어난 성능을 가지고 있습니다.

그런데 AI에 필요한 연산을 잘 살펴보면 병렬로 처리할 수 있는 연산들이 매우 많고, AI 연산을 CPU가 아니라 GPU에서 처리해봤더니 엄청나게 빠르게 처리가 된다는게 알려졌습니다. 그래서 지금 AI 시장에서 GPU가 매우 많이 활용되고 있죠. 그리고 뭐 사실 요즘에야 NPU들이 등장하고 있지만, 과거에는 AI 연산을 위해서는 CPU나 GPU 말고는 대안이 없었습니다. CPU보다 GPU가 더 나으니까 GPU를 쓰게 된거죠.

AI 반도체란?

AI 반도체는 AI 연산에 특화된 반도체들을 말합니다. 아 그러면 그래픽 처리를 하기 위한 프로세서를 AI에 사용하지 말고, 애초에 처음부터 AI 연산에 특화된 반도체들을 설계하면 더 좋지 않을까? 하는 생각에 여러 기업들에서 AI 반도체를 설계하고 있습니다. AI의 특징은 엄청난 양의 컴퓨팅, 즉 계산을 필요로하죠. 그런데 최근 AI 산업이 폭발적으로 성장하면서 이에 따라 이에 필요한 연산량도 폭발적으로 늘었습니다. 그래서 컴퓨터를 설계하는 사람들이 고민을 하고 있는 부분이, 어떻게 하면 이렇게 폭발적으로 늘어난 AI 연산을 효과적으로 처리할 수 있을까입니다. 다른 반도체 프로세서보다 이거를 효율적으로 처리한다는 것은 그만큼 성능이 좋다는 것이고, 당연히 성능 좋은 반도체는 많이 팔리겠죠. 그래서 반도체 프로세서를 설계하는 사람들이 여러 가지 방법을 고민중이고 시도하고 있습니다. 전통적으로는 GPU를 이용해서 AI를 처리했고요, 이밖에도 NPU, PIM, 뉴로모픽 반도체와 같은 방식들이 있습니다. 이러한 반도체들 모두 AI 반도체라고 할 수 있습니다.

AI 반도체를 만드는 이유는?

AI 연산에 특화된 반도체를 만들어서 AI 서비스가 필요한 기업들에 많이 팔기 위함이죠. 일반적으로 한 분야에 특화됐다는건, 이곳 저곳 모든 다양한 분야에 사용할 수 있는 범용 반도체보다 성능이 더 좋다는 것을 의미하거든요. 따라서 AI에 특화된 반도체는 범용적으로 쓰이는 CPU나 GPU보다 훨씬 더 효율적으로 AI 연산을 처리할 것입니다. 따라서 ChatGPT 등 AI를 서비스하는 기업에서는 엄청난 양의 AI 연산들이 굉장한 부담인데, AI에 특화된 반도체가 있다면 앞다퉈 구매하겠죠.

NPU란?

Neural Processing Unit의 약자이고, AI 연산에 최적화된 프로세서입니다. 컴퓨터의 역사에서 CPU가 가장 먼저 등장했고, 이후 컴퓨터 산업의 성장과 컴퓨터 게임의 등장으로 인해 그래픽만을 처리하는 GPU가 등장하게 됐죠. 지금은 AI에 대한 폭발적인 수요가 있고, 이에 따라 AI 연산에 특화된 프로세서, 즉 NPU를 개발하고자 하는 여러 시도들이 있습니다.

HBM이란?

High Bandwidth Memory, 즉 고대역폭 메모리라는 뜻인데요, 고대역폭이라는 것은 기존의 메모리에 비해 같은 시간 동안 더 많은 데이터를 읽거나 쓸 수 있다는 것을 의미합니다. 현대 컴퓨터가 가지고 있는 여러 문제 중에 하나가 메모리에요. 지금 우리가 사용하는 CPU나 GPU는 모두 폰 노이만 아키텍쳐입니다. 1940년대에 만들어진 폰 노이만 아키텍쳐의 특징은 프로세싱 유닛 외부에 메모리가 존재하고, 프로그램이 동작하기 위해서는 명령어들과 데이터들을 프로세서 바깥에 있는 메모리로부터 읽어와야 합니다. 그런데 현대의 많은 어플리케이션들은 방대한 양의 데이터를 처리해야 할 경우가 많습니다. 따라서 데이터를 계산하는 것 보다 데이터를 메모리로부터 읽거나 쓰는 시간이 오래 걸려서 문제가 되는 경우가 많습니다. 그래서 이러한 배경에서 등장하게 된 게 HBM 입니다.

PIM이란?

Processing in Memory, 그러니까 프로세싱을 메모리에서 하자는거죠. 아까 말씀드렸듯이 요즘 컴퓨터의 문제가 프로세서와 메모리 사이에서 데이터가 왔다갔다 하는게 실제 계산에 필요한 시간보다 더 느리다는게 문제거든요. 그러면 애초에 메모리에 있는 데이터를 CPU같은 프로세서까지 가지고 오지 말고, 그냥 데이터가 있는 메모리에서 필요한 연산들을 하면 좋지 않을까? 하는 생각에서 나온게 PIM입니다. in memory processing, 데이터가 있는 곳에서 처리하자.

Tags:

Updated:

Leave a comment