인공지능(AI, Artificial Intelligence)은 현재 전 세계를 가장 뜨겁게 달구는 키워드다. SK하이닉스 뉴스룸에서는 [인공지능 반도체] 코너를 마련, 인공지능 전문가 정인성 작가와 함께 총 일곱 편의 기고문을 연재하고 있다.
이번 연재물에서는 컴퓨터와 반도체의 관점에서 인공지능을 살펴볼 것이다. 인공지능으로 바뀌면서 ‘0’과 ‘1’이 구체적으로 어떻게 변화되어 응용되는지를 알아보고, 이때 반도체는 어떤 역할을 해야 하는지 확인해 볼 것이다. (필자 주)
“PIM은 연산의 효율을 높여주는 것이지, 1만 개의 이미지 필요량을 5,000개로 줄이지는 않기 때문이다. PIM으로 인해 더 빠른 연산이 가능해지면서, 메모리 반도체 회사들은 더 많은 용량의 메모리를 생산해야 되는 상황이다.”
인공지능의 발전에 필요한 새로운 반도체
우리는 첫 장에서 인공지능과 반도체가 어떻게 함께 발전해 왔는지 알아봤다. 인공지능에서 반도체는 대부분 기존에 있던 인프라를 개선하는 역할이었다. GPU(Graphic Processing Unit)는 CPU(Central Processing Unit)가 할 수 없었던 대규모의 부동소수점* 연산을 가능하게 했고, HBM(High Bandwidth Memory)은 GPU 기반 학습에서 대역폭과 물리적으로 한정된 공간을 이겨내기 위해 사용됐다. 또, 낸드플래시(NAND Flash)는 GPU 학습에 필요한 데이터를 저장, 가공한 뒤 빠른 속도로 학습 서버로 전송하는 역할을 했다.
* 부동소수점 : 실수에서 정수와 소수가 본래 소수점의 위치를 고정하는 고정소수점과 대비되는 개념으로 소수점의 위치를 바꿔 정수와 소수를 구분 표기해 연산에 용이하게 하는 것. 본래의 실수가 123.485인 경우, 1.23485X 10^2, 혹은 0.00123485X10^5 등으로 연산 표기한다.
이런 반도체들 덕분에, 기존 CPU만으로는 불가능했던 일이 가능해졌다. 인공지능 기술은 대량의 데이터를 짧은 시간 안에 투입하는 방식으로 프로그래밍 방법론 자체를 변화시켰으며, 반도체들은 과학자들이 필요로 하는 요구사항에 맞춰 더 높은 성능, 더 큰 용량으로 발전했다.
하지만, 일정 수준의 발전을 이룬 반도체는 미세화에 큰 어려움이 생기기 시작했다. 예를 들면, 반도체 제조의 핵심이라 할 수 있는 노광기*의 가격은 한 대당 1,000억 원을 넘어서고 있고, 다음 세대 장비는 4,000억 원 이상으로 추정하고 있다. 그 외 기술적인 여러 가지 장애물과 함께 다양한 이유로 GPU와 메모리 반도체 모두 성능 발전의 속도가 점점 느려지기 시작했다.
* 노광기 : 반도체 제조 Photo공정에서 미세한 회로를 그리기 위해 빛을 직접 노출(Exposure)시키는 장비로 Stepper, EUV Scanner 등이 있다.
이런 흐름에 맞춰 우리의 초점도 약간 바뀌어야 한다. 단순히 더 빠르고 더 큰 용량의 메모리 반도체 개발로는 한계가 있어, 인공지능 혹은 컴퓨팅 시스템 자체를 다시 설계해야 할 필요가 있다. 당연히도 이를 위해선 새로운 개념의 반도체가 필요하다.
캐시메모리의 등장과 GPU의 부상
지난 수십 년간 컴퓨터를 괴롭혀 온 장애물 중 하나는 메모리 성능 한계였다. 본래 폰 노이만 구조로 컴퓨터를 연산장치와 메모리로 구성했을 때, 메모리의 용량과 속도는 무한하다는 가정이 있었다. 이 중 메모리 용량 문제는 메모리 반도체 전문 기업들이 기술을 발전시키며 해결해왔으나, 그중에도 메모리의 동작 속도가 발목을 잡았다. 성능 향상이 가장 빠르던 1980년대 후반부터 2000년대 중반까지 CPU의 동작 속도는 매년 약 60%씩 상승하고 있었으나, D램의 반응 속도는 10% 정도 상승하는 데 그쳤기 때문이다. [관련 자료]
위와 같은 문제로 인해 CPU 내부에 초고속 메모리를 직접 탑재하기 시작했다. 이것이 캐시메모리(Cache Memory)다. 캐시메모리는 일반 D램 대비 반응 속도가 10배 이상 빠르기 때문에, CPU가 데이터를 필요로 할 때 빠르게 읽기·쓰기 요청에 응할 수 있다. 물론 캐시메모리가 제 역할을 하기 위해서는 캐시메모리의 용량이 충분히 커야 할 뿐만 아니라, CPU가 다음에 쓸 데이터를 최대한 정확하게 예측하고 저장하는 기술이 필요했다. 이 모든 것이 CPU의 트랜지스터를 소모하는 과정이었다.
이러한 문제들 때문에 GPU가 인공지능 산업의 중심이 될 수 있었다. GPU는 거대한 캐시메모리와 분기 예측기* 등에 사용할 트랜지스터까지 전부 연산장치에 투입할 수 있었기 때문이다. 특히 반도체 기술이 더욱 발전하면서 GPU가 처리할 수 있는 연산 능력도 기하급수적으로 늘어나게 됐다. 거대한 공장이 끊임없이 돌아가려면 튼튼한 재고 창고와 강력한 물류체계가 필요하듯, GPU는 고용량·고대역폭 HBM*을 탑재해 쉬지 않고 인공지능 작업을 처리하고자 했다. 거대한 캐시메모리를 만들 트랜지스터까지 아껴 연산장치를 투입했으니, 이제 메모리 반도체가 연산장치들에 데이터를 전달해야 하는 상황이 된 것이다.
* 분기 예측기 : CPU 내에서 분기 예측을 수행하는 디지털 회로. 조건 분기의 다음 명령을 예측하고 실행해 계산 대기 시간을 낭비하지 않아 CPU의 성능을 높여준다.
* HBM(High Bandwidth Memory) : D램 여러 개를 수직으로 연결해 기존 D램보다 데이터 처리 속도를 대폭 끌어올린 고대역폭 반도체로 고성능 컴퓨터와 그래픽 카드에서 사용된다.
▲ SK하이닉스가 개발한 차세대 메모리반도체 PIM이 적용된 ‘GDDR6-AiM’
PIM : 연산 반도체 역할의 일부를 가져오다
우리는 메모리와 연산용 반도체(GPU, CPU 등)는 창고와 공장과 같고 이는 도로로 연결된 것과 같다는 것을 앞서 살펴봤다. 하지만 사실 이 안에는 컴퓨터 프로그램이 가지는 중요한 요소가 빠져있다. 바로 ‘연산용 반도체는 중간 결과물을 메모리에 저장해야 한다’는 것이다. 이는 실제 공장과는 달리 재료가 한번 들어오면 완제품이 만들어지는 구조가 아닌 제조 공정 단계별로 생산되는 재공품(생산과정 가운데 있는 미완성품)을 창고에 보관했다가, 가공하기 위해 다시 가져오는 것과 같다.
▲ 그림 1 : 메모리와 연산용 반도체의 데이터 처리 과정을 창고와 공장 간의 가공 과정으로 비유한 예시
<그림 1>는 메모리와 연산 반도체 사이에 발생하는 데이터 처리 과정을 가상의 공장(연산 반도체)과 창고(메모리)의 모습으로 설명한 예시이다. 공장이 원자재 완제품으로 만들기(데이터 처리) 위해서는 절단과 도색 두 가지 작업이 필요하다. 여기서 공장의 역할은 절단과 도색 두 가지 작업을 하는 것이지 원자재와 재공품을 보관하는 것이 아니다. 때문에 절단과 도색을 할 때 마다 창고에서 원자재와 재공품을 가지고 오고, 다시 가져다 놓는 일을 반복해야 한다. 이런 이동은 번거롭고 시간이 많이 소요된다. 때문에 공장에 작은 선반 같은 것을 두고 임시로 원자재와 재공품을 보관하면 더 빠르고 편해질 것이다. 여기서 말한 선반이 바로 캐시메모리의 역할이다.
여기서, 공장의 효율적인 생산, 즉 연산장치와 메모리를 통한 인공지능 동작 성능을 높이려면 어떻게 해야 할까? 메모리의 동작 속도를 높이는 방법이나 재공품 선반(캐시메모리)의 크기를 키우는 방법이 있을 것이다. 하지만 전자의 경우, 앞서 이야기 했듯 동작 속도의 성능 향상의 한계로 인해 어려움이 있다. 또한, 후자의 경우, 지금도 캐시메모리는 동일 용량의 D램보다 10배 이상 많은 면적을 차지하기 때문에 매우 비효율적이다.
그렇다면, 여기서 한 가지 아이디어가 떠오른다. ‘자주 해야 하는 작업에 필요한 물건은 굳이 공장으로 옮기지 않고, 이를 창고에서 바로 처리한다면 효율이 오르지 않을까?’라는 것이다. 이렇게 해서 등장한 아이디어가 바로 PIM(Processing-In-Memory)이다.
▲ 그림 2 : PIM이 적용되면 데이터 처리 과정이 비약적으로 줄어든다.
<그림 2>는 <그림 1>에서 메모리를 PIM으로 변경했을 경우의 데이터 처리 과정이다. 두 그림을 비교해 보니 PIM이 왜 필요한지 좀 더 명확하게 보인다. 데이터 전송은 연산 과정에서 상당 부분을 차지한다. 그래서 메모리 반도체 회사들은 처음부터 메모리 반도체에서 연산용 반도체로 데이터를 전송할 필요 없도록 방법을 찾은 것이다. PIM을 사용하면, 메모리 반도체의 데이터 전송 과정이 줄어들고 이로 인해, 데이터 처리 속도가 상당히 향상될 뿐만 아니라, 전성비(전력 대비 성능비)도 매우 높아진다. PIM은 인공지능 등이 요구하는 각종 연산을 메모리에 내재화해 전체적인 성능뿐 아니라, 전성비까지 개선하는 훌륭한 아이디어인 셈이다.
반도체 설계 관점에서 보면, PIM은 두 가지 방법으로 만들 수 있다. 첫째는 기존 D램 칩 내부에 연산기를 탑재하는 방식이고, 둘째는 D램과 매우 가까운 곳에 별도의 논리연산을 수행하는 칩을 배치하는 것이다. 전자는 D램 칩의 면적이 넓어지지만, 용량에 비례해 자동으로 연산 속도가 올라가는 장점이 있고, 후자는 로직 칩이 동반되어 메모리 반도체 회사 입장에서는 큰 비용을 들이지 않고 탑재 가능한 장점이 있다. 엄밀하게는 후자는 PNM(Processing-Near-Memory)이라 부른다. 연산 장치가 메모리 반도체에 가까이 있을 뿐, 별도의 칩에 있기 때문이다.
▲ 그림 3 : D램의 뱅크 내부에 연산기가 탑재돼 있는 PIM(왼쪽)과 D램 다이 하단에 별도로 로직 다이가 적용되는 PNM(오른쪽)
이런 메모리는 인공지능 개발사와 인공지능을 활용하는 서비스 회사 모두에게 매우 큰 이점을 준다. 인공지능 개발사는 현재 자신의 회사가 개발 중인 인공지능에 활용할 데이터는 충분하지만, 학습 속도가 느릴 때 PIM과 같은 솔루션을 도입함으로써 학습 속도를 크게 개선할 수 있다. 만약 인공지능 시장이 거대 신경망을 자주 학습시켜야 하는 방향으로 진화한다면, PIM은 매우 매력적인 솔루션이 될 것이다. 인공지능을 도입해 서비스하는 회사들에게 운용 비용 감소의 이점을 제공할 수 있기 때문이다. 또한, 전력 대비 성능이 높기에 전기를 적게 쓸 뿐만 아니라, 더 적은 개수의 GPU가 탑재된 서버로도 동일한 수준의 서비스를 제공할 수 있어, 공간에 대한 임대료도 낮아지게 된다.
뿐만 아니라, PIM과 같은 솔루션은 GPU 이외의 반도체를 인공지능 시장에 끌어들일 수 있을 것이다. CPU의 경우, 조건에 맞춰 선택지를 택하는 각종 분기 처리 등을 향상하기 위해 총 연산 능력을 줄였는데 PIM이 도입되면 그 단점을 상쇄시키는 동시에 CPU의 장점 또한 유지할 수 있다.
메모리 회사의 유망한 미래 사업
PIM은 메모리 반도체 회사 입장에서 매우 훌륭한 미래 시장이 될 수 있다. PIM이 탑재되어도 메모리 반도체의 사용량은 줄지 않기 때문이다. 예를 들어, PIM이 탑재된 시스템에서 작동되는 특정 인공지능이 1만 개 이미지를 처리해야 한다고 해도 메모리는 여전히 1만 개의 이미지가 들어갈 용량이 확보돼야 한다. PIM은 연산의 효율을 높여주는 것이지, 1만 개의 이미지 필요량을 5,000개로 줄이지는 않기 때문이다. PIM으로 인해 더 빠른 연산이 가능해지면서, 메모리 반도체 회사들은 더 많은 용량의 메모리를 생산해야 되는 상황이다.
다만, PIM을 사용하기 위해서는 기존의 소프트웨어를 고쳐야 한다는 장애물이 있다. PIM이 존재하지 않던 시절의 소프트웨어들은 연산을 위해 다음의 과정을 거칠 수밖에 없다.
메모리에서 값을 읽어 온다.
→ 읽어온 값을 연산 칩이 처리한다.
→ 다시 메모리에 적는다.
이런 연산 과정을 가진 소프트웨어 기반의 컴퓨터에 아무리 PIM을 적용해도 기존 소프트웨어들은 어떤 장점도 얻을 수 없다. PIM을 통한 장점을 활용하기 위해서는 다음의 형태로 프로그램을 고쳐야만 한다.
PIM으로 연산 명령을 보낸다.
→ PIM의 처리 결과를 확인한다.
이러한 입장을 이해해야만 PIM의 잠재력을 온전히 보여줄 수 있다. 아직 많은 소프트웨어 회사들은 PIM을 잘 이해하지 못한다. 이 때문에 PIM의 잠재력을 100% 보여주고, 고객의 마음을 사로잡기 위해서는, 메모리 반도체 회사가 소프트웨어의 입장을 이해해야 하는 시대가 된 것이다.
인공지능의 시대, ‘PIM’이 핵심
인공지능 시대가 도래하면서 데이터를 이용해 수많은 연산을 해야 하는 상황이 됐다. 데이터를 저장하고 운송하는 주체가 메모리 반도체인 이상, 인공지능 시대는 메모리 반도체 회사에 엄청난 기회가 되고 있다.
하지만, 이 기회는 공짜가 아님을 유념해야 한다. 메모리 회사 앞에는 메모리의 큰 고객인 GPU, CPU 칩 메이커들을 비롯해, 최고의 효율을 뽑아내고 싶어 하는 클라우드 고객들, 수많은 인공지능 알고리즘 연구개발, 인공지능을 활용한 서비스 제공 기업 등 다양한 이해관계자들이 존재한다.
PIM은 단순한 메모리 반도체가 아니기 때문에 앞에서 언급한 이해관계자들과 단편적인 관계를 맺을 순 없다. PIM의 판매량이 늘어날수록 이해관계자들과의 관계는 새롭게 구축될 것이다. 고객이었던 상대가 어느 순간 경쟁자가 되기도 하고, 직접적인 관계가 없던 상대가 가장 중요한 고객이 될 수도 있다.
이러한 변화에서 PIM이 고객들에게 더 큰 호응을 얻기 위해선, 고객의 입장이 돼야 한다. 단순한 제품이 아니기에 이론상의 최대 성능에만 집중해선 안 된다. 실제로 고객들이 SK하이닉스의 PIM과 PNM 제품을 사용했을 때 얼마나 큰 효용을 얻는지가 중요해질 것이다. 특히 단순한 메모리가 아닌 만큼 예상치 못한 문제가 발생했을 때 얼마나 빠르게 해결할 수 있는지도 중요하다. 결과적으로, 완전히 새로운 아이디어인 PIM과 PNM 제품이 확실한 효용 증대를 불러오고 큰 불편함이 없다는 것이 증명될수록 고객들은 기꺼이 PIM과 PNM 제품을 도입할 것이다.
고객들은 전성비가 10% 나빠지고, 가격이 10% 비싸져도 새로운 칩을 도입했을 때 기존에 고민했던 문제를 빠르게 해결할 수 있다면 기꺼이 도입할 것이다. 결과적으로 새로운 비즈니스가 아닌 기존 고객과의 신뢰를 기반으로 변화되는 요구사항을 만족시키는 혁신이 중요하다. 이런 면에서 SK하이닉스는 PIM과 PNM 제품을 출시하고 있는 상황이기에 미래가 더욱 기대된다.
※ 본 칼럼은 반도체에 관한 인사이트를 제공하는 외부 전문가 칼럼으로, SK하이닉스의 공식 입장과는 다를 수 있습니다.