PGR21.com
다시봐도 좋은 양질의 글들을 모아놓는 게시판입니다.
Date 2021/10/01 12:28:32
Name cheme
Subject AI가속기 경쟁, 그리고 차세대 반도체 칩 시장
개인 블로그에 올린 글을 다시 쓴 글이라 평서체 양해 부탁드립니다.
==========================================================================

지난 10년 간 전 세계에서 가장 주가가 많이 상승한 IT기업을 꼽으라고 한다면 애플과 엔비디아를 들 수 있을 것이다. 애플은 아이폰의 등장과 함께 고가의 스마트폰 시장을 그야말로 10년 넘게 지배해 오고 있고, 엔비디아는 고성능 게임용 GPU, 그리고 2010년대 중반 이후 딥러닝과 코인 채굴용 가속기 시장이 폭발적으로 증가하면서 주가가 급상승하고 있다.  

엔비디아는 1999년, 진정한 의미의 GPU (브랜드명 GeForce)를 처음 세상에 선 보인 기업이다. 물론 90년대 후반-00년대 후반까지는 엔비디아가 집중하던 사업은 고성능 게임용 GPU였다. 그런데 엔비디아는 AI 시대가 출현하게 될 것을 예견이라도 한 듯, 2007년 GUGPU (or GPGPU)를 세상에 소개한다. 엔비디아가 새롭게 창조하려고 했던 시장은 단순히 게임을 위한 고성능 그래픽카드 시장이 아닌, 범용 (general purpose) 가속기 시장이었던 것이다. 시장의 성장을 위해 전 세계의 칩 설계 개발자들이 자사의 GUGPU를 활용할 수 있는 SDK인 CUDA를 같이 공개한 것이 엔비디아의 노림수였는데, 그것이 제대로 먹혔다. 그와 더불어 openCL이 같이 병행되면서 그야말로 GPU는 GUGPU의 시대로 접어들 수 있었고, 엔비디아는 조금씩 게임용 그래픽 카드의 시장을 벗어나, 본격적으로 가속기 시장으로 접어들게 되었다.

잘 알려져 있다시피, CPU와 GPU의 가장 큰 차이는 serial vs parallel이다. GPU에는 단위 개수로만 따지면 CPU보다 훨씬 많은 core가 집적된다. 그리고 병렬로 처리하고자 하는 곱셈, 덧셈 등의 연산을 각각의 core에 분산하여 '순식간에' 처리한다. 이에 반해 CPU는 그 아키텍처 상, serial로 데이터를 받아서 결과물을 만들어낼 수밖에 없는데, 당연히 계산 속도는 GPU의 병렬 처리에 비할 수 없을 정도로 느리다.  여기서 오해하면 안 되는 것이 있다. '그러면 굳이 왜 CPU를 비싼 돈 내서 또 사는 것인가? 그냥 다 GPU로 하면 안 되는 것인가?'라는 의문을 가질 수 있는데, 사실 이는 비유하자면 장인이 조각을 하는 것과 비슷하다. 장인 한 사람이 한 달 걸려 혼자서 나무 깎고 칠하고 다듬고 하는 과정을 하는 것을 CPU에 비유한다면, 장인이 본인의 제자 10명에게 각각의 일을 분배하여 한 달에 10개의 조각품을 만드는 것을 GPU에 비유할 수 있다. 일종의 가내수공업과 분업의 차이라고 볼 수 있다. 조금 더 정확한 비교를 해 보자. 사실 GPU가 2000년대 중후반 이후 병렬 계산 성능으로 각광을 받은 이유는, GPU에 분산된 각각의 core에서 동시에 비슷한 계산을 하고, 그것을 한꺼번에 모아서 출력할 수 있는 칩의 설계 때문이었다. 예를 들어 B = [5*5] 행렬과 C = [5*1] 행렬을 곱하는 연산을 생각해 보자. 이 연산을 CPU로 하려면  
for ii=1:행의 개수
for jj=1:열의 개수
A = B(ii,jj)*C(jj);
A(ii) = A(ii) + A;
end
end
같이 for loop을 두 번 돌려야 한다. 그렇지만 GPU로 이 연산을 하려면 B행렬의 각 성분과 C행렬의 각 성분의 index를 GPU 코어에 각각 분배해두기만 하면 된다. 예를 들어 B*C 행렬의 곱셈은 각 성분을 5*5 = 25번 곱하는 연산이 필요한데, B(i,j) 성분과 C(k) 성분은 GPU 코어에서는 [행의 개수*(i-1) + j] 번째 코어에 미리 할당해 두면 끝난다. 그러면 각 코어는 분배받은 곱하기 연산만 하고, 그 결과를 메모리에 모아서 더하기 연산만 추가로 하면 된다. 즉, 사전에 어떻게 분배하고 모을 것이냐의 순서만 잘 정해두면 단순한 곱셈/덧셈의 반복 연산은 GPU가 훨씬 빠를 것이다. CPU는 GPU에 비해 이런 병렬 연산이 거의 불가능한 대신, 부동소수점 자리를 더 많이 가져갈 수 있다. 즉, 정밀한 계산을 GPU의 개별 코어보다는 더 잘할 수 있고, 따라서 정확도가 필요한 ALU 계산은 당연히 CPU가 GPU보다 훨씬 잘한다. 다만 반복된 계산은 대부분 그렇게 높은 정밀도를 요구하지 않으므로 GPU의 병렬 계산이 훨씬 유리하다.

이렇게 병렬화에 최적화된 GPGPU가 왜 2010년대 중반 이후, AI, 특히 딥러닝 시대가 본격 개막된 이후에 더 각광을 받게 된 것일까? 애초에 딥러닝이 어떤 방식으로 작용하는지 알면 이해하기 쉽다. 딥러닝을 배울 때 초반에 기초로 배우는 연산 중 하나가 바로 합성곱 (convolution)이다. 합성곱은 주어진 행렬 형태의 input data에 또 다른 행렬인 kernel을 위치를 바꿔가며 연산하는 matrix operation이다. 그런데 가만 보면 이는 각 행렬들의 성분을 곱하고 더하는 연산의 반복일 뿐이다. 물론 kernel을 어떤 것을 쓰느냐에 따라 input matrix의 결과물은 달라진다. 예를 들어 이미지 처리 강의에서도 다뤘지만 라플라시안 kernel을 사용할 경우, 이미지의 경계나 경계의 구배 혹은 패턴 구별을 할 수 있는 기능이 생긴다. 어떤 종류의 kernel이든 일단 이렇게 합성곱을 거치는 과정에서 결국 단순한 곱셈/덧셈을 반복하게 되므로, 당연히 그에 특화된 설계 방식을 가지고 있던 GUGPU가 훨씬 유리한 입장이 되는 것은 사실이다. 또한 딥러닝에서 학습과 추론이 어떻게 이루어지는지를 생각해 보면, 왜 애초에 CPU를 기반으로 하는 딥러닝은 거의 불가능에 가까운 지도 이해할 수 있다. 앞서도 이야기했지만, GPU는 CPU만큼의 정밀도를 요구하지도 않고 그렇게 하도록 설계되지도 않았다. 딥러닝으로 training data를 학습하는 과정은 눈을 가린 사람이 손발만 사용해서 길을 찾아가는 것과 비슷한 과정이다. 운이 좋으면 손을 뻗은 곳에 지표로 삼을 만한 물체가 있을 수도 있지만, 운이 안 좋으면 발을 뻗은 곳에는 함정이 있을 수도 있다. 즉, 매번 trial을 할 때 반드시 error가 나오게 되어 있는데, 애초에 그 error의 정확도 혹은 정밀도는 별로 중요하지 않다. 오히려 그 error의 정밀도에만 신경 쓰다 보면 학습 속도가 느려질 것이다. 1초당 100번의 trial-and-error를 하는 사람이 길을 더 빨리 찾을 것인지, 1초당 1번의 아주 조심스러운 successful trial만 하는 사람이 더 길을 빨리 찾을 것인지를 비교해보면 답이 나올 것이다. 이러한 딥러닝의 학습 방식은 GPU가 설계된 아키텍처와 정확히 맞아떨어졌고, 이 때문에 이제는 GPU는 고성능 게임이 아닌 딥러닝용 가속기 머신으로 인식되기 시작했다.

여기서 한 가지 간과하면 안 되는 것은 여전히 GUGPU는 게임 성능 강화에도 최적화되어 있다는 것이다. 애초에 GPU가 행렬 처리에 특화된 성능을 가진 것을 생각하면 이것은 당연한 이야기다. 90년대 초반 이전의 게임에서는 사실 3D 이미지라는 개념이 거의 없었고, 있었어도 특정 방향으로의 2D projection만 계속 보여주는 식이었다. 사실상 2D only라고 봐도 무방하다. 행렬에 관한 선형대수 연산에서 2차원 행렬은 사실 쉬운 계산에 속한다. 그런데 문제는 3차원 행렬 연산이다. 우리가 사는 세상은 3차원이고, 보고 듣고 느끼는 모든 물리적 현상이 3차원 공간 + 1차원 시간 속에서 벌어진다. 매 초마다 3차원 속에서의 이벤트는 시시각각 바뀌는데, 우리 눈은 그 정보를 강제로 2차원에 매핑하여 인식해야 한다. 인간의 두뇌가 시각 정보를 처리하는데 굉장히 많은 리소스를 사용하고 있다는 것은 바로 이 때문이다. 이는 연산에 대해서도 똑같이 적용할 수 있는 이야기다. 3차원의 어떤 물체 이미지를 우리가 인식하는 2차원 공간, 즉 모니터 위에 띄워야 하는 작업을 생각해 보자. 예를 들어 3차원 폴리곤으로 구성된 인형을 특정한 각도에서 바라보는 이미지를 2차원 모니터 상에 띄워야 하는 것이다. 이러려면 행렬 변환 (matrix transformation) 연산이 들어가야 한다. 회전 변환, stretching, 소실점 처리 같은 연산을 해야 한다. 여기에 조금 더 욕심을 부리면 ray tracing도 해야 한다. 즉, 빛과 그림자 효과도 같이 봐야 하는데, 이 계산은 더더욱 많은 연산을 필요로 한다. 기하광학 연산이 같이 모든 폴리곤의 각 질점마다 행해져야 하기 때문이다. 그런데 이렇게 무지막지한 계산을 매초에 한 번도 아니고, 적어도 30번에서 60번 정도는 해야, 사람의 눈은 이 현상이 실시간으로 자연스럽게 일어나고 있다고 인식을 한다. 그야말로 컴퓨터 공학자들에게는 악몽 같은 과업이었을 것이다. 90년대 초반에 CPU로 이러한 작업을 했다고 한다면 아마 1분에 한 장면 정도 겨우 띄울 수 있었을 것이다. 참을성 없는 게이머들에게는 참을 수 없는 랙이 된다. 그런데 GPU는 이러한 반복된 연산을 행렬 기반으로 병렬 처리할 수 있기 때문에, 이제는 CPU가 이러한 작업의 부담을 홀로 질 필요가 없다. 각종 행렬 변환 연산과 ray tracing 기하광학 연산의 대부분은 GPU가 담당하고, CPU에서는 이들의 후속 연산만 담당하면 된다. 즉, 게이머 입장에서는 이제는 이 연산이 '가속'된 것처럼 느껴진다. 이로 인해 가속기라는 이름이 붙기도 했다.

이렇게 행렬 기반으로 표현될 수 있는 데이터라면 그것이 게임용 고해상도 3차원 이미지든, 의료용 3D voxel data든, 딥러닝 학습용 multi-feature tensor data든, GUGPU의 전성시대는 확실히 peak에 도달하고 있다고 해도 과언이 아닐 것이다. 그렇지만 문제는 GUGPU의 장점이 동시에 단점도 된다는 것이다. 병렬 처리의 속도를 개선하는 방법은 코어의 개수를 더 늘리거나, 코어와 코어 사이의 정보 I/O 속도를 더 빠르게 하는 것이다. 이를 위해 메모리를 각 코어와 통합할 수도 있고, 밴드폭 (bandwidth)을 더 늘릴 수도 있다. 그렇지만, 변하지 않는 한 가지 대가는 그만큼 전력 소모량이 늘어난다는 것이다. 코어 자체가 소모하는 전력과 더불어, 코어에서 소모되는 전력이 열로 환원되는 과정에서 이를 식히기 위한 냉각을 위한 전력 소모도 늘어난다. 또한 반복된 발열-냉각 과정은 칩의 수명에도 영향을 준다. GPU 역시 실리콘 기반의 반도체 칩이므로, 결국 집중된 전력의 사용과 연산은 코어를 이루고 있는 재료와 소자의 수명을 단축시킨다. 기계적인 failure, thermal failure, electrical failure가 생길 수 있기 때문이다. 실제로 블록체인 채굴용으로 거의 공장식으로 운영되는 채굴장에서 쓰인 GUGPU의 수명이 6개월도 못 간다는 이야기가 괜히 나오는 것이 아니며, 일반 피시방에서 사용되는 high performance GPU 역시, 수명은 보통 2년, 길게 잡아도 3-4년에 불과하다. 물론 그 수명이 무색하게 다음 세대의 GPU가 나오기 때문에 수명의 문제는 가려져 있지만, 수명 자체는 CPU보다 짧아지는 것은 감내할 수밖에 없는 단점이다.

이럼에도 불구하고 AI 시대는 이제 막 성장하고 꽃 피우려는 상황인데, GPU 같은 가속기를 쓰지 않고는 그 수많은 연산을 감당할 방법은 없다. 그렇지만 GPU에만 의존하자니, 점점 학습을 위해 GPU가 소모하는 전력량은 하늘을 찌를 기세다. 이에 대한 대안이 당연히 필요하며, 2010년대 후반에서 2020년대 넘어오면서 나온 솔루션 중 하나가 FPGA와 NPU다. 지난 2019년, 인텔과 더불어 CPU 제조업체 양강을 이루고 있던 AMD는 세계 제1위의 FPGA 업체인 자일링스를 전격 인수했다. 업계의 시각은 올 것이 왔다는 것이었는데, 그도 그럴 것이 경쟁자 인텔은 이미 FPGA 시장의 2인자 알테라를 2015년에 167억 달러에 인수한 바 있기 때문이다. 전통의 CPU 제조 대기업들이 CPU 와는 결이 다른 FGPA를 경쟁적으로 인수한 이유는 무엇일까? FPGA는 말 그대로 사용자가 그때그때 목적에 맞게 reprogramming 할 수 있는 연산 칩이다. 사용자가 재프로그래밍할 수 있다는 이야기는, 칩이 동작할 수 있는 최소한의 기능만 남겨 두고, 나머지 유닛의 배열이나 설계는 사용자가 바꿀 수 있다는 이야기다. 그렇다면 당연히 CPU나 디램 같은 표준화된 공정에서 찍어내는 반도체 칩에 비해, 비용이 비싸질 수밖에 없다. degree of freedom을 늘려 두어야 하기 때문이다. 딥러닝 시대 이전에는 이런 연유로 FPGA 기반의 칩들은 특수한 목적 (원전용, 우주탐사선용 같은 특정한 용도)로 주요 활용되었을 뿐, 범용으로 쓰이는 일은 거의 없었다.

그런데 딥러닝 시대가 본격화되면서, GPU가 마냥 지배할 것 같던 시장이 점점 다변화되기 시작했다. 이 기조는 GPU에게는 결코 좋기만 한 상황이 되지는 않았다. 예를 들어 단순히 딥러닝이 합성곱 계산만 반복하는 연산들의 집합이었다면 문제가 되지 않았을 것이지만, 딥러닝을 적용하고자 하는 분야가 넓어지면서, 딥러닝 엔진이 학습해야 하는 데이터의 규모와 특징도 더욱 다양하게 바뀌었다. 단순히 이미지에서 숫자를 인식하거나 개와 고양이를 구분하는 정도로는 응용 범위가 제한이 되니, 자연어를 처리한다든지, 1,000개가 넘는 feature를 갖는 복잡한 화학 공정 데이터에서 오류를 검출한다든지, IoT 센서들의 네트워크를 설계해야 한다든지, CFD로는 커버할 수 없는 다공성 매질 내부의 복잡한 유체의 흐름을 추론하여 모사한다든지, 실시간으로 자율주행 엔진을 만들어야 한다든지 하는 식으로 용도와 스펙이 다변화된 시장이 열리기 시작한 것이다. 딥러닝을 산업에 응용하고자 하는 측에서는 이렇게 시장이 다변화되는 것이 환영할만한 일이지만, 범용 GPU로 이것을 커버하려던 측에서는 이것은 고민거리가 된다. 각 응용처에서는 구별이 중요한지, 추론이 중요한지, 예측이 중요한지, 검출이 중요한지 가중치는 다 다른데, 이에 대해 천편일률적인 뉴럴넷 알고리듬에 최적화된 연산 구조를 계속 이끌고 가기 어려워졌기 때문이다.  딥러닝이 등장한 초반에는, 가용한 하드웨어가 거의 GUGPU 밖에 없으므로, 딥러닝 알고리듬 개발자들은 주어진 GUGPU 스펙을 기반으로 알고리듬을 구축할 수밖에 없었다. 그런데 딥러닝이 다루는 데이터의 종류와 양이 기하급수적으로 늘어나면서, 이제는 오히려 딥러닝 알고리듬이 GPU의 아키텍처 설계에 영향을 미치는 빈도가 늘어가고 있다. GPU 개별 코어의 정밀도 (부동소수점 자리)를 FP16에 고정시킨다는지, 정밀도의 변동 허용 (다중 정밀도) 코어를 설계하는 것이 바로 이런 사례에 해당한다. 그렇지만 이러한 딥러닝-driven GPU 설계에도 한계는 명확하다. GPU 역시 한 번 찍어내면 그 구조를 바꾸기 거의 불가능하고, reprogramming 할 여지가 없기 때문이다. 도끼로 면도를 한다면야 할 수는 있겠지만, 손에 잘 익은 면도기가 아쉬워지는 것은 인지상정이다.

대조적으로 FPGA가 이러한 목적에 더 적합할 수 있음이 점점 시장에서 받아들여지고 있다. FPGA는 앞서 언급한 것처럼, 로직 설계를 채 다 마치지 않은 상황에서 고객에게 납품된다. 다만 그 위에 고객들이 자신들의 목적에 맞게 프로그래밍할 수 있는 일종의 SDK를 제공한다. 고객들이 자신의 목적에 맞게 예를 들어 유체역학 시뮬레이션 전용 딥러닝 칩을 만들 수도 있다는 이야기인데, 설사 초반에 설계에 착오가 있어서 제대로 동작하지 않는다고 해도, reprogramming이 가능하므로 얼마든지 소정이 가능하고, 따라서 초기 테스트 과정에서 비용 손실을 줄일 수 있다. GPU에서 이루어졌던 하드웨어 단계에서의 병렬 처리 성능에 비할 수는 없겠지만, FGPA 역시 병렬 처리를 할 수 있는데, 이 역시 FPGA의 특징에 기인한다. FPGA에서는 소프트웨어 레벨에서 병렬 처리를 구현할 수 있는데, 단일 코어에서 복수의 명령어 (multiple instruction)를 받아 복수의 아웃풋을 만들어내는 알고리듬 설계가 가능하다. 이러한 방식을 Multiple instruction multiple data (MIMD)라고 한다. 그런데 GPU의 개별 코어에서는 반복된 작업을 통한 병렬 처리에 최적인 조건을 맞추기 위해 애초에 데이터 흐름이 single instruction multiple data (SIMD)로 구성된다. 명령어 셋이 잘 구축되어 있고 데이터 규격이 잘 정돈되어 있다면 그야말로 GPU는 하드웨어 레벨에서는 거의 신계에 가까운 병렬 처리가 가능하지만, 데이터 규격이 달라지거나 주어진 명령어 셋으로 커버하기 어려운 연산이 나오면 버벅댈 수밖에 없다. 그에 반해 FPGA는 하드웨어 레벨에서의 병렬 처리는 어려우나, flexible 하다는 것이 제일 좋은 장점이다. 데이터 규격 (width)가 달라져도 미리 define 된 명령어 셋에 구애받을 필요가 없으니, multiple instruction set을 활용할 수 있으니 오케이이기 때문이다. 이렇게 flexible 하다는 특징이 있다는 것은 다변화된 데이터셋과 말단 application이 각광받고 있는 지금의 딥러닝 시대에는 FPGA의 시장성이 높아질 것임을 의미한다.

그에 더해 애초에 수천 개의 코어를 동시에 돌릴 필요가 없는 (물론 성능은 다소 떨어지더라도) FPGA는 GPU와 비교해 보면 전력 소모는 낮아진다. 추가적으로 FPGA는 시장의 딥러닝 알고리듬이 개선됨에 따라, 전력 소모 방식도 수정이 가능하므로, 언제든 에너지 효율을 최적화할 수 있다. 필요 없는 스위치는 끄고, 필요한 스위치만 올리면 되는 방식이기 때문이다. 이러한 연유로 딥러닝 시대가 본격화되기 전, GPU에서 딱히 재미를 못 봤던 인텔과 AMD는 부랴부랴 업계 1, 2위 FPGA 업체를 거액으로 인수한 것으로 해석할 수 있다. 물론 기존의 GPU 강자였던 엔디비아 역시 가만있는 것은 아니다.  FPGA가 아무리 장점이 많다고 해도, 여전히 GPU에 비해 딥러닝에서 취약한 치명적 단점이 있다. 그것은 GPU에 비해 training 속도가 느리다는 것이다. 이는 어쩔 수 없는 단점이다. 애초에 가용한 코어를 하드웨어 레벨에서 무작정 늘려서 built-in 한 구조가 아니기 때문이다. 인텔과 AMD는 FPGA를 통해 GPU가 지배하고 있던 AI용 가속기 시장의 포션을 가져가려는 복안을 세웠다. 인텔은 Agilex와 PAC (programmable acceleration card)를 출시했고, AMD (자일링스) 역시 가속기 카드 Alveo를 출시하면서 승부수를 던진 바 있다. 특히 자일링스는 HMB (high-bandwidth memory)를 아예 FPGA에 결합한 제품인 버설 (versal) 같은 제품으로 선회하기도 했는데, 이는 10 나노 이하급 반도체 초미세 패터닝 기술이 성숙 단계에 이르면서 구현이 가능해진 기술이기도 했다 (versal의 경우 7 나노 공정으로 제조). 인텔이 알테라를 인수한 이후, 인텔의 FPGA 기반 가속기 매출은 큰 성장세를 보이지 않은 반면, 자일링스의 매출은 지속적으로 큰 성장세를 보이고 있고, 이는 자일링스 방식의 FPGA + HBM 구조가 딥러닝 가속기 성능의 격차를 조금씩 메꿔가고 있음을 보여 주는 것이기도 하다. 자일링스는 이에 더해, 딥뉴럴넷에 최적화된 xDNN 프로세서로 개발을 확대하면서 flexible 딥러닝 가속기 시장을 노리고 있다.

사실 딥러닝 학습 과정에서 행렬 연산만큼 중요한 것이, 대용량 데이터의 학습 결과를 integration 하는 과정인데, 이를 위해서는 데이터가 쭉 줄지어 있을 때, 대기 시간을 단축하는 과정이 필요하다. 즉, 데이터의 지연성을 줄이는 것이 에너지 소모 면에서나 학습 속도 면에서나 점점 중요해지고 있다. 엔비디아가 FPGA 진영에 대해 꺼내 든 카드 역시, 바로 이 데이터 지연성을 줄이는 기술인 인피니밴드다. 이를 위해 엔비디아는 인텔과 AMD의 인수 경쟁에서 승리하면서 2019년, 네트워크-인터페이스 카드 (NIC)와 인피니밴드 분야 글로벌 강자인 멜라녹스를 69억 달러에 인수했고, 자사의 NPU 최적화 기술을 확보할 수 있었다. 엔비디아가 GPU에 더해 딥러닝, 나아가 AI 가속기 시장 전체를 노리고 있는 기술은 범용 딥러닝 가속기인 Xavier인 SoC며, 이는 특히 AI 가속기 수요가 폭증하고 있는 자율주행차 시장의 주력 제품으로 포지셔닝되고 있다. 엔디비아의 CUDA 역시 딥러닝에 특화된 cuDNN을 제공하는데, 데이터셋이나 규모에 상관없이, 거의 모든 딥뉴럴넷이 필요로 하는 유닛들을 미리 구현해 놓았기 때문에, 향후 NPU (Neural processing unit)으로의 시장 교두보도 확보해 놓은 상태라고 볼 수 있다. 특히 NPU는 특정 데이터셋에 대해 미리 하드웨어 레벨에서 DNN을 구현해 놓은 칩 (말 그대로 딥러닝 네트워크를 구성하는 각 층을 실리콘 칩 기반의 로직 유닛으로 1:1 대응시켜 구현한 칩이다. 즉, 뉴런을 하드웨어 레벨에서 그대로 구현한 것으로 보면 된다.)이기 때문에, 그 특성상 모바일 AP에 집적되기 좋다는 것을 고려한다면, 앞으로도 크게 성장할 AP 시장에서의 지배력도 계속 유지할 가능성이 높을 것이다. NPU는 '추론'을 GPU에서 하는 것이 아닌, 말단 장비 (예를 들어 스마트폰)에서 할 수 있는 수준으로 기능을 고정시켜 놓은 칩이라고 볼 수 있다. 웬만한 두꺼운 책 수준으로 덩치가 커진 GPU를 스마트폰에 넣을 수는 없으니, 최대한 학습된 기존 구조가 built-in 된 방식으로 NPU를 만드는 것이다. 모델 학습 자체는 GPU 서버에서 담당하되, 학습된 모델을 기반으로 입력된 데이터로부터 특성을 추론하는 기능만 담당하게끔 NPU가 역할 분담을 한다면, 이제는 전력을 많이 소모하지 않아도 되고, 덩치가 커질 필요도 없으므로, 스마트폰이나 차량용 반도체 칩 등에 맞춤형으로 같이 집적될 수 있다. 이는 FPGA가 추구해 오던 flexibility를 우회하는 전략으로도 볼 수 있다. 엔비디아는 바로 이러한 NPU 시장을 타깃으로 Xavier 이후 기술인 Jetson 시리즈를 발표했고, 가격도 더 인하했다.

NPU 시장의 경쟁 상대는 아마도 구글이 될 것인데, 구글은 자체 설계한 칩인 TPU (tensor processing unit) 시리즈 Coral을 발표했으며, 가격은 엔비디아의 Jetson의 1/5 이하로 책정하면서 원가 경쟁을 시도하고 있다. 물론 성능과 가격은 비례하는데, Coral의 성능은 Xavier나 Jetson의 1/5-1/3 수준으로 알려져 있다. 다만, 구글이 이후 출시할 TPU들은 시장에서의 피드백을 바탕으로 조금 더 광범위한 분야에서 활용될 것으로 전망되는데, 이는 구글이 구상하고 있는 GPU 클라우드 서버를 통한 학습 모델 업데이트 속도에서의 경쟁력에 기반을 둔 것이라 추정할 수 있다. 삼성이나 퀄컴 같은 전통의 모바일 AP 업체들 역시, 초미세 패터닝의 한계로 인해 AP 칩의 성능 자체가 개선될 여지가 점점 없어지다 보니, NPU를 욱여넣는 전략을 취하고 있다. 퀄컴은 자사의 스냅드래곤 시리즈 845 이후부터 NPU를 탑재하기 시작했으며, 삼성은 자사의 엑시노스 시리즈 9 이후부터 NPU를 탑재하기 시작했다. NPU를 통합하거나 병행하려는 업체들은 당연히 모바일 칩에서의 데이터를 확보하여 점점 그 적용 범위를 넓혀갈 것인데, 다음 시장은 아마도 차량용 반도체 (자율주행차칩이나 전장반도체칩), IoT 신호처리용 칩, 군사용 복합 레이더칩 등으로 점점 범위가 넓어질 것이다.

그런데 아이러니컬하게도 FPGA와 NPU/TPU/cuDNN 시장의 경쟁은 하드웨어가 아닌 소프트웨어, 특히 딥러닝 알고리듬의 변화 추세가 어떻게 될 것이냐에 달려 있다. 지금도 딥러닝 알고리듬 분야는 하루가 다르게 새로운 방법론, 새로운 이론, 새로운 모델이 쏟아져 나오고 있고, 매년 4대 인공지능 학회에 논문을 억셉시키는 것은 점점 어려워지고 있다. 그러나 다른 분야의 기술이 그렇듯, 딥러닝 역시 이제 점점 성숙기에 접어들면서 알고리듬의 혁신 속도가 느려지기 시작하면, FPGA 고유의 flexiblity의 장점도 점점 희석될 것이다. 더 빠르고 더 효율적인 알고리듬이 나오면 그에 맞춰 reprogramming 할 수 있었던 장점이, 만약 알고리듬 교체 주기가 점점 느려진다면 딱히 장점이 되지는 않을 것이기 때문이다. 일례로 이제는 이미지 인식 정도의 기능에 대해서는 더 이상 개선될 여지가 거의 없을 정도로 (사람의 인식률은 이미 넘은 지 오래고, 웬만한 알고리듬들은 이제 이미지 인식률이 95%를 넘는다.) 알고리듬은 saturated state에 도달한 것으로 볼 수 있다. 오히려 범용 DNN를 계속 개질 하여 하드웨어와 최신 알고리듬 사이의 격차를 줄여 나가는 방식이 나중에는 더 유리해질 수 있다.

딥러닝 가속기 시장은 앞으로도 계속 성장할 것이고, 아마 2030년 이후에도 수요는 증가 추세일 것이지만, 시장을 지배하는 방식이 무엇이 될지는 더 두고 보아야 한다. 딥러닝 알고리듬의 성숙기가 언제 찾아올 것인지는 아무도 예측할 수 없으나, 결국 성숙기는 올 것이고, 그 시점에서 어떤 기술이 더 최적화된 상황일지는 예측하기 어렵다. FPGA 역시 얼마든지 혁신할 여지는 있다. 올해 6월에 Nature에 공개된 구글의 강화학습 기반 칩 디자인 연구* (*https://www.nature.com/articles/s41586-021-03544-w)는 이러한 혁신의 가능성을 보여주는 좋은 사례다. 좁은 칩 다이 면적 위에 수백만수천만 개의 유닛을 배치하고, 각 유닛 사이의 데이터 인풋과 아웃풋을 지연 시간을 최소로 하면서 에너지 사용량을 줄이는 설계는 반도체 칩 설계의 가장 어려운 부분 중 하나였다. 팹리스 업체들은 그간의 노하우를 활용하여 이러한 최적화를 진행해 왔는데, 구글에서 공개한 결과는 자뭇 충격적일 정도로 그간의 노하우를 무색게 할 정도의 개선을 이뤄냈다. 이는 마치 복잡한 아파트 평면에 온갖 가구와 가전제품을 배치하되 몸의 움직임을 최소화하면서도 힘을 최소로 쓸 수 있는 최적의 동선을 배치하는 것과 비슷하다. 구글은 바둑의 상태 공간 (~10^360) 보다 훨씬 큰 공간인 유닛 배치 상태 공간 (~10^2500)에 대해 알파고의 방법을 훨씬 더 발전적으로 계승시킨 방식으로 최적화 설계를 이뤄낸 것이다. 이러한 설계 방법은 당연히 FPGA의 최적화에도 바로 적용할 수 있는데, 주어진 instruction set의 degree of freedom을 고려하여 주어진 성능을 최적화하는 것은 같은 맥락에서 달성 가능한 작업이기 때문이다.

엔비디아나 구글, 인텔, AMD, 퀄컴 등이 사용하는 기존의 방식과 아예 궤를 달리 하는 기술도 나올 수 있을까? 당연히 그럴 가능성이 있다. 뉴럴넷이라는 이름 그대로, 이제는 인간의 대뇌 신경망을 단순히 흉내 낸 것이 아니라, 아예 copy & phaste 하는 방식으로 반도체 칩과 연계하는 방식의 기술을 생각할 수 있다. 최근에 삼성과 하버드대 한국이 과학자들이 공개한 perspective가 바로 그런 예다** (**https://www.nature.com/articles/s41928-021-00646-1...). 이 논문에서 전망한 대체 기술은 바로 뉴로모픽 반도체 (neuromorphic chip)인데, 이미 잘 알려진 개념인 뉴로모픽 칩이 새삼 다시 주목받은 이유는, 아예 인간의 뇌 신경망에서 주고받는 전기신호를 나노 전극과 연결하여 그대로 복사 (copy)하고 그것을 하부에 연결된 메모리에 복사 (phaste)하는 개념이 가능하다는 것을 실존 기술 레벨에서 보였기 때문이다. 이는 뇌라는 소프트 조직을 다 걷어낸 나머지 모든 기능을 그대로 반도체 칩으로 옮겨갈 수 있다는 것을 의미한다. 뉴로모픽 칩을 구현하기 위한 메모리 반도체 기술은 이미 SRAM, RRAM, MRAM, memristor 등으로 구현되어 있거나 이미 실제로 활용되고 있기 때문에, 수천조 개의 뉴런에서 발생하는 신호를 어떻게 실시간으로 지연성을 최소화한 채 메모리로 옮기느냐가 관건이 될 뿐, copy & phaste 방식의 연결은 이제는 기술적으로 불가능한 상태는 아닌 것으로 보인다.  

앞으로도 딥러닝 가속기가 이끄는 반도체 시장은 다양하게 그리고 더 강력하게 성장할 것이다. 딥러닝 기반의 데이터 처리가 얼마나 더 다변화된 시장을 뚫을 수 있을 것이고, 얼마나 더 큰 비정형 데이터들을 처리할 수 있느냐에 따라 그 시장 규모, 그리고 지배 기술이 정해질 것이며, 여기서 주목해야 하는 것은 현재의 키 플레이어 기술들의 발전과 더불어, 그것을 아예 다른 방향에서 대체할 수 있을만한 신개념 기술 들일 것이다. 뉴로모픽 외에도, photonics 기반의 neural network이 가능하며, 이는 지연시간 자체가 빛의 속도로 줄어들 것임을 의미하므로, 더 강력한 NPU의 등장을 예고할 수 있다. 스핀트로닉스의 경우 병렬 처리 성능을 더 끌어올릴 수 있을 것이며, 구글이 공개한 TFQ 같은 앙자컴퓨터 전용 딥러닝 알고리듬은 지금까지의 방식과 전혀 다른 양상으로 '추론'을 재정의하게 될 가능성도 있다. 앞으로의 반도체 시장 역시, 결국 딥러닝이 주도하는 AI 가속기와 그에 걸맞은 알고리듬의 혁신에서 주요 모멘텀이 창출될 것이고, 다양한 아키텍처를 가져오는 더 많은 팹리스 업체들이 우후죽순 등장하는 와중에, 이들의 옥석을 가려내고 기술의 구현 한계를 결정할 수 있는 공정 기술의 확보가 결국 앞으로 창출될 시장의 지배력을 결정하게 될 것으로 예상된다.

* 손금불산입님에 의해서 자유 게시판으로부터 게시물 복사되었습니다 (2023-09-19 00:38)
* 관리사유 : 추천게시판 게시글로 선정되셨습니다. 좋은 글 감사합니다.

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
김홍기
21/10/01 12:33
수정 아이콘
선플 후 정독!
재미있게 읽겠습니다
21/10/01 12:59
수정 아이콘
감사합니다!
월급루팡의꿈
21/10/01 12:35
수정 아이콘
어라... 오늘 아침에 페친이 공유한 글로 본글이 딱 올라오네요. 흐흐..
저도 비슷한 분야에 종사하고 있는데..
Training은 몰라도.. Inference에서 GPU를 대체하는 시스템을 경량최적화된 알고리즘과 함께 잘 만드는 기업(들)이 승자가 될거라고 생각하고 있습니다..
21/10/01 12:59
수정 아이콘
그렇겠죠. 결국 B2C로 가려면 소비자들이 GPU를 들고 다닐 수는 없을테니까요. NPU에서 전력 사용 최적화된 방식으로 진화할 것이라 생각합니다.
불대가리
21/10/01 14:43
수정 아이콘
인퍼런싱쪽 시장동향 좀 간략하게 여쭤봐도 될까요?(문송합니다)

어떤 것들이 이슈인지?
시장은 어떤기업들이 선도하고있는지?

궁금합니다
설사왕
21/10/01 13:07
수정 아이콘
너무 재밌게 잘 봤습니다.
나중에 완성된 형태의 ai가 인간과 다를 바 없는 사고를 하게 되어 인간의 존엄성, 영성이라는게 허망하기 짝이 없는 자기 위로였음이 증명된다면 그 사회는 과연 어떤 모습을 띄게 될 지 궁금해 지네요.
제가 그때까지 살아 있을지 모르겠지만 말입니다.

제가 더 이상 관련 분야에서 일을 하지 않아서 그런데 몇 가지 질문을 좀 드리겠습니다.
Altera와 다르게 Xilinx의 홈페이지는 살아 있던데 그 이유는 뭐죠?
인수가 완전히 끝나지 않아서 인가요?
그리고 Lattice도 나름 인기가 많을 것 같은데 인수를 노리는 회사는 없습니까?
21/10/01 13:14
수정 아이콘
AMD의 자일링스 인수가 거의 끝나가긴 한데 완전히 끝난 것은 아니라서요...
lattice는 FPGA의 중소업체이지만 기술력이 있어서, 이 분야로 진출할 대형 업체들이 항상 노리고 있는 업체입니다. 조만간 인수합병 소식 들려올 것으로 생각합니다.
덴드로븀
21/10/01 13:13
수정 아이콘
교수님 감사합니다! 일단 추천 박고 읽고 다시 오겠습니다!
21/10/01 13:16
수정 아이콘
감사합니다 고갱님!
jjohny=쿠마
21/10/01 13:14
수정 아이콘
전에 올려주신 글들로 보아서 교수님이신 것으로 알고 있는데,
언제나 산업계 전반의 최신 동향에 대한 통찰을 가지고 자세하지만 알기 쉽게 글을 써주셔서
늘 감사한 마음으로 읽고 있습니다. 감사드립니다~
21/10/01 13:15
수정 아이콘
감사합니다. 반도체의 모든 분야에 대한 전문지식을 가진 것은 아니고 일부 분야에만 일부 전문성을 가지고 있을 뿐이지만, 한 분야에만 파뭍히다가 숲을 놓치는 우를 범할까 싶어 산업 동향과 최신 기술 업데이트를 주기적으로 하려 노력하고 있습니다.
21/10/01 13:27
수정 아이콘
이런 통찰 담긴 글을 번역문도 아니고 한국어 원문으로 볼 수 있다니... 은혜롭네요 감사합니다!
21/10/01 13:33
수정 아이콘
감사합니다!
리자몽
21/10/01 13:40
수정 아이콘
오늘 적어주신 내용은 쉬운 내용이 아니다보니 100% 이해는 못했지만 큰 흐름이 어떻게 흘러가는지는 잘 알게 되었습니다

좋은 글 적어주셔서 감사합니다!
21/10/01 13:55
수정 아이콘
읽어주셔서 감사합니다!
21/10/01 13:45
수정 아이콘
후쿠시마 쿠니히코(福島 邦彦)의 업적임을 기억하는 이들이 적음이 아쉽습니다.
21/10/01 13:54
수정 아이콘
CNN의 아버님...뉴럴넷의 겨울을 직격으로 맞으신..ㅠ.ㅠ
AaronJudge99
21/10/01 13:47
수정 아이콘
아...21수능 비문학이 생각나네요...ptsd..
글 잘 읽었습니다
그리고 글읽다보니 생각나는건데, ai같은거에서는 행렬은 정말 필수적이네요
근데 왜 학교에선 안가르치는거지...크크
행렬파트는 이해가 안되어서 빼고 읽었네요 결국
21/10/01 13:53
수정 아이콘
정말 AI가 아니더라도 행렬은 아주 좋은 수학적 도구인데, 참 안타까운 부분입니다.
AaronJudge99
21/10/01 14:00
수정 아이콘
근데 저는 딥러닝 등에 대해 아무래도 문외한이다 보니까...알파고나 테슬라의 자율주행 정도? 의 아주 피상적인 인식만 가지고 있었는데...정말 성장세가 빠른 분야네요...컴공 관련분야 종사하시는 분들이 트렌드를 쫒아가기 어렵다고 하시는 말씀들이 조금 이해가 되는거같아요 크크
21/10/01 14:08
수정 아이콘
자고 일어나면 오늘 개발하던 알고리듬이 쓰레기가 되어 있습니다?
-안군-
21/10/01 20:07
수정 아이콘
행렬은 진짜 많은 분야에 쓰이죠. 3D, VR, AR, 딥러닝, 영상분석/인식, 자연어처리 등등등등...
근데, 고등학교때 배우는 행렬은 사실 저런 분야에서 본격 쓰이는 선형대수학하고는 거리가 있어서;;
21/10/01 13:51
수정 아이콘
제목 보고 글쓴이 보고 추천부터 눌렀습니다!
이제 천천히 읽어볼게요 흐흐
21/10/01 13:53
수정 아이콘
감사합니다 고갱님!
빈즈파덜
21/10/01 13:57
수정 아이콘
흐흐 저도 같은생각을 가지고 있어서 그래프코어라는 회사의 주식을 장외에서 매수할 방법이 없는지 찾고 있습니다.
21/10/01 13:58
수정 아이콘
IPU시장이 커질 것이라는 의견과, 과장이라는 의견이 갈리죠.크크크 그래도 투자는 제법 많이 받고 있는 것 같더군요.
북극곰탱이
21/10/01 14:12
수정 아이콘
좋은 글 적어주셔서 감사합니다. 뭐든간에 이런 쪽에서는 고속 푸리에 변환이 연산 시간을 결정하는데 가장 큰 비중을 차지하는거 같습니다. 그래서 이전 CPU 연산에서는 인텔 MKL과 IFC가 강력한 위력을 가졌던게, 이제 보다 간단한 종류의 반복 연산에 대해서는 GPGPU로 바뀌었다고 생각하고 있습니다.

AI가 뜨면서 GPU가 FP32나 16 위주로 성능을 가져가는 흐름이 이해는 되지만 FP64가 필요한 HPC 유저들은 선택의 폭이 줄어들어 좀 아쉬워하는것 같아요, Hartree Fock 근사가 들어가는 hybrid functional 계산들의 경우 벤치를 보니까 GPGPU에서 성능 향상 폭이 정말 크더라고요. 예전에 KISTI에서 Titan V를 엄청나게 긁어갔었다 주워들었은데, 이제는 A100 말고는 선택의 여지가 없죠.
21/10/01 14:59
수정 아이콘
잘 읽어주셔서 감사합니다. 말씀처럼 FFT 연산은 대부분의 딥러닝에서는 물론, 요즘 유행하는 physics-based deep learning에서도 매우 중요합니다. 물리현상을 지배하는 방정식 대부분이 PDE, ODE이고, 특히 PDE의 경우 basis function expansion의 기본 중에 기본이니까요. 문제는 FFT로 다뤄야 할 행렬 크기가 너무 커진다는 점에 있어서, 말씀처럼 CPU 기반으로 하는 것이 맞지 않느냐라는 것이 한 때 지배적이었는데, 이제는 GPU로도 충분히 가능한 알고리듬들이 많이 나왔고, 점점 빨라지고 있죠. 그래서 양자화학계산에서도 GPU기반으로 돌릴 수 있는 구조로 다시 알고리듬들 갈아엎었습니다.

HPC를 원하는 유저들에게 있어 GPU에서 FP16, 32fh 타협하는 것은 별로 좋아하지는 않겠죠. 그런데 어쩔 수 없습니다. 애초에 코어를 분산하여 처리하는 과정에서 시간이 많이 걸리면 병렬처리의 장점이 사라지니까요. 물론 올리려면 올릴수는 있는데, 굳이? 라는 이야기를 할 것 같습니다. HF 계산하시는 것 보니 ab initio, DFT 계산도 하시나 보군요. CUDA 기반으로들 2010년대 이후 많이 하기 시작했죠.
21/10/01 14:14
수정 아이콘
전혀 모르는데 관심은 있는 분야라 재미있게 읽었습니다.
한가지 궁금한게 FPGA의 계산은 SW처리라고 하시고,
GPU는 HW레벨의 계산이라고 쓰여있는 부분입니다.
제 생각에는 FPGA야 말로 synthesis하는 순간 전용의 계산기 하드웨어가 만들어져버리니 순수한 하드웨어 처리이고,
GPU는 지가 아무리 잘나봐야 SW가 목적에 맞게 할 계산을 '던져줘야'하는, SW 의존성이 더 높은 체계인거 같거든요...

업계에 따라 HW/SW를 저랑 다르게 생각하는 걸수도 있겠다 싶기도 하고요... 참고로 저는 임베디드 펌웨어쪽에서 일하고 있습니다.
21/10/01 14:56
수정 아이콘
잘 아시겠지만 GPU는 코어를 하드웨어 레벨에서 칩 설계 단계부터 세분화하여 연산을 분배시켜서 HW레벨이라고 하는 것이고, FPGA는 프로그래밍 단계에서 연산을 분배하고 모으는 코드를 짜넣으므로 SW레벨이라고 합니다. 물론 하드웨어 레벨에서 비교하면 FPGA는 GPU의 연산속도를 따라올수는 없습니다.
불대가리
21/10/01 14:33
수정 아이콘
잘 읽었습니다. 두 가지만 여쭤보겠습니다. (우선 문송합니다)

1. [재비어가 자율주행차 시장의 주력 제품으로 포지셔닝되고 있다] 이부분은 재비어가 자율주행차 시장에서 이미 마켓쉐어 1위를 하고 있는건지, 아니면 자사에서 '주력제품'이라고 마케팅 포지셔닝을 하는중인지 좀 혼동됩니다.

2. [엔비디아가 앞으로도 크게 성장할 AP 시장에서의 지배력도 계속 유지할 가능성이 높을 것이다.] 이부분은 엔비디아의 모바일 AP가 현재도 시장을 지배하고 있고 앞으로도 그럴 가능성이 높을것이다로 읽힙니다. 모바일 AP 시장은 3파전인걸로 아는데 경쟁중인 3사가 엔비디아의 AP기술(혹은 부품)을 사용하기 때문에 현재 지배력을 가지고 있다는 말씀이신가요?
21/10/01 15:01
수정 아이콘
1. 둘다입니다. 다만 테슬라는 자사의 도조를 사용하고 있어서, 앞으로는 판도가 바뀝니다.
2. 엔비디아의 ARM 인수가 무사히 성공한다면 엔비디아의 cuDNN, Jetson 등이 edge 유저들에게 더 먹힐 가능성이 높아서 그렇습니다. AP를 모바일에도 쓸 수 있지만 사용처는 더 다양해질 수 있기 때문입니다.
21/10/01 14:34
수정 아이콘
애플이 아이폰에 들어가는 칩에 inference에 최적화된 칩을 점점 세분화시키면서 넣고있죠.
그러면서 안드로이드와 격차는 넘사벽으로 벌어지고 있고요.
불대가리
21/10/01 14:45
수정 아이콘
안드로이드 쪽은 어떤 기업에서 인퍼런싱에 관여한는 칩을 생산하나요?
21/10/01 14:55
수정 아이콘
삼성과 퀄컴이 AP에 욱여넣고 있습니다.
21/10/02 08:25
수정 아이콘
애플은 애플 실리콘으로 거의 끝판왕까지 왔고 구글의 tpu 정도겠네요.
레이미드
21/10/01 15:37
수정 아이콘
좋은 글 작성해주셔서 감사합니다.
실례가 되지 않는다면 혹시 cheme 님의 블로그 주소를 알려주실 수 있나요?
이 게시판에 들어와서 보아도 되지만, 반도체 글만 따로 읽고 싶을 때에
cheme 님의 블로그에 방문해서 글을 읽고 싶어서요.
이번 글은 스크랩 해두고 생각날 때마다 다시 읽고 싶어지는 그런 글이네요.
늘 감사드립니다 !
21/10/02 10:35
수정 아이콘
쪽지 보내드렸습니다. 감사합니다.
레이미드
21/10/02 16:45
수정 아이콘
엇.. 받은 쪽지함에 cheme님이 보낸 쪽지가 없는데요. 혹시 다시 한번 보내주실 수 있나요?
티모대위
21/10/01 15:52
수정 아이콘
저도 이쪽 분야인데, 재밌게 잘 읽었습니다.
인공지능 분야에 있어서 대중에게 '하드웨어 가속기'는 상대적으로 덜 주목받는 필드였는데, 잘 정리된 글이 그 흥미를 돋우기에 충분해 보이네요!
NPU는 저도 설계하고 있지만, 참 신기합니다. 뉴럴넷 알고리즘과 이론은 복잡하더라도, 가속을 해야 할 연산의 구조는 참 단순한 편인데, 그 연산량과 데이터량의 제약이 너무나도 커서 아무리 최적화를 거듭해도 할일이 남아있다는 것이...
저는 이쪽 설계를 하면서도 올해 초쯤이면 각종 네트워크 모델/알고리즘에 모두 대응가능한 완전체 NPU가 등장해 자리를 잡을 것이라고 봤는데, 아직도 할일들이 더 남았더군요. 덕분에 저도 하던거 계속 할수 있어서 다행이지만요. 크크
21/10/02 10:37
수정 아이콘
감사합니다. 뉴럴넷의 모든 노드를 실리콘 레이어에서 물리적으로 구현하는 것 자체가 참 단순해 보이면서도 대단해 보이기도 합니다. 물론 요즘엔 설계 요소들이 많이 알려져 있고, 라이브러리도 많이 개방된 상태라 스타트업들이 뛰어들기 좋은 분야인 것 같기도 하고요. 완전체 NPU가 당장 올해 나올 것 같지는 않지만, 적어도 AP전용이라면 이미 완전체에 가깝지 않을까 합니다. 오히려 제조업체 측에서는 워낙 이쪽 분야 기술이 금방 바뀌니까 만들어 놓고 나서 발표하지 않는 경우도 허다하죠.
나리미
21/10/01 15:52
수정 아이콘
최근 딥러닝에서 하드웨어와 소프트웨어를 분리해서 생각할수 있을까요?
같은 하드웨어에서 같은 컨볼루션을 돌려도 어떻게 양자화를 해서 어떻게 쪼개서 어떻게 스케줄링해서
어떻게 오프로딩을 하냐에 따라서 퍼포먼스가 천지차이이고, 요새는 하드웨어 아키텍처도 그에 맞게 맞춤형으로 개발되어 나옵니다

엣지컴퓨팅쪽에서의 ML 페이퍼들 찾아보시면 관련된 정보 많이 얻으실 수 있을것 같네요
21/10/02 10:39
수정 아이콘
동감합니다. 제가 모든 페이퍼를 팔로업하고 있지 않아서 자세한 내용을 업데이트하긴 해야겠습니다만, 말씀처럼 컨볼루션을 비롯해서 FFT, inverse FFT, det, perm 계산 모두 알고리듬 레벨에서 여전히 할 일이 많고, 그에 맞춰 하드웨어 구현도 같이 병행되므로 분리해서 생각하던 시절은 이미 지나간 것 같습니다.
Dr. ShuRA
21/10/01 20:41
수정 아이콘
전직이자 현직으로서 정말 재미있게 읽고 갑니다 크크
21/10/02 10:33
수정 아이콘
앗. 공자님 앞에서 문자 쓴 기분입니다. 읽어주셔서 감사합니다!
라쿤맨
21/10/02 02:22
수정 아이콘
유전자분석도 FPGA를 쓰는데 정말 빠릅니다. 어짜피 유전자도 AGCT 4개로 된 무지하게 큰 매트릭스라서 FPGA사용하니 몇시간 걸리던게 몇십분으로 줄더라구요
21/10/02 10:34
수정 아이콘
그렇군요. GWAS 전용 FPGA가 있다고 하던데 사실이었나 보네요.
Jean Coq de Raltigue
21/10/02 10:36
수정 아이콘
(수정됨) 요즘은 Cerebras 같은 Wafer Level Size의 칩이 크게 promising한 것 같더라고요. 정말 흥미진진합니다. 하루하루다르게 새로운 기술들이 나오거든요. Nviida의 GRACE Solution도 멋지더라고요!
21/10/02 10:38
수정 아이콘
매일매일 즐거우시겠습니다.^^
라쿤맨
21/10/02 12:34
수정 아이콘
지금 cerebras랑 면접중인데 재미있는 회사더라구요. 이미 오퍼 몇개 잡혀있긴한데 여기 되면 아마 갈거 같습니다.
Jean Coq de Raltigue
21/10/02 16:28
수정 아이콘
와우!!! 대박이네요... 진짜 멋지십니다. 새로운 응용분야가 많이 열릴 것으로 보여요. 능려자시군요
차칸치킨
21/10/10 12:28
수정 아이콘
안녕하세요 제가 관심을 가지고 있는 분야인데 또 글을 잘 써주셨네요!

현재 NPU 스타트업이 우리나라에서 야심차게 준비하고 있는 팀들이 있는데 퓨리오사AI와 리벨리온이라는 팀이 아주 야무지게 잘 준비하고 있는 것으로 알고있습니다. 그리고 NPU는 소프트웨어부터 칩까지 한 번에 풀스택으로 만드는게 미친 효율성을 보여주기 때문에 스타트업이나 작은 조직들이 훨씬 유리할 것으로 판단 됩니다

아래 링크는 리벨리온 박성현 대표의 인터뷰입니다. 각 영상별로 1탄만 올립니다. 관심 있는 분들은 2탄도 보시길 바랍니다.

https://www.youtube.com/watch?v=knpoWwr3jjg
https://www.youtube.com/watch?v=J4KmmklB5sI&t=1s
마술사
23/09/19 10:40
수정 아이콘
좋은글 잘 읽었습니다
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
3397 위스키 도대체 너 몇 살이냐 [부제] Whiskey Odd-It-Say. 3rd Try [40] singularian3155 21/12/11 3155
3396 수컷 공작새 깃털의 진화 전략 [19] cheme4007 21/12/10 4007
3395 가볍게 쓰려다가 살짝 길어진 MCU 타임라인 풀어쓰기 [44] 은하관제4399 21/12/07 4399
3394 고인물들이 봉인구를 해제하면 무슨일이 벌어지는가? [66] 캬라10286 21/12/06 10286
3393 [역사] 북촌한옥마을은 100년도 안되었다?! / 한옥의 역사 [9] Fig.14285 21/12/06 4285
3392 굳건함. [9] 가브라멜렉3587 21/12/02 3587
3391 로마군의 아프가니스탄: 게르마니아 원정 [57] Farce4399 21/12/01 4399
3390 올해 국립공원 스탬프 마무리 [20] 영혼의공원4071 21/11/29 4071
3389 꽤 행복한 일요일 오후였다. [15] Red Key3971 21/11/23 3971
3388 [도시이야기] 경기도 수원시 - (3) [12] 라울리스타3735 21/11/16 3735
3387 신파영화로 보는 기성세대의 '한'과 젊은세대의 '자괴감' [23] 알콜프리4992 21/11/15 4992
3386 <1984 최동원> 감상 후기 [23] 일신5265 21/11/14 5265
3385 김밥 먹고 싶다는데 고구마 사온 남편 [69] 담담11322 21/11/11 11322
3384 [스포] "남부군" (1990), 당황스럽고 처절한 영화 [55] Farce4967 21/11/10 4967
3383 나의 면심(麵心) - 막국수 이야기 [24] singularian3356 21/11/05 3356
3382 신해철, '해'에게서 '소년'에게 (1) [26] 글곰3979 21/11/03 3979
3381 일본 중의원 선거에 관련된 몇 가지 이야기들 [78] 이그나티우스6785 21/11/03 6785
3380 [NBA] 영광의 시대는? 난 지금입니다 [28] 라울리스타6561 21/10/22 6561
3379 [도로 여행기] 대한민국에서 가장 높이 올라가는 도로, 만항재와 두문동재 [19] giants4766 21/10/30 4766
3378 [역사] 이게 티셔츠의 역사야? 속옷의 역사야? / 티셔츠의 역사 [15] Fig.13761 21/10/27 3761
3377 우리가 이곳에 있는 이유는 우리가 이곳에 있는 이유는 우리가 [12] Farce3575 21/10/24 3575
3376 누리호 1차 발사에서 확인 된 기술적 성취 [29] 가라한7490 21/10/21 7490
3375 [도시이야기] 인천광역시 서구 [41] 라울리스타5899 21/10/19 5899
목록 이전 다음
댓글

+ : 최근 6시간내에 달린 댓글
+ : 최근 12시간내에 달린 댓글
맨 위로