Machine learning 관련 Startup을 계획하고 있던 2021년 당시 소위 HW Accerelator라고 부르는 칩들이 시장에 조금씩 나오던 시기였습니다. 이미 NVIDIA AI Model Training 시장을 독점했고, Modeling 시장 대비 열 배의 시장이라는 Inference 시장을 놓고 HW Accelerator의 경쟁이 치열한 상황이었습니다. 당시 대부분의 모델은 CNN 계열이었고 NVIDIA GPU가 CNN Inference에서는 전력이나 가격면에서 효율이 좋지 않았기 때문에, 너도나도 CNN Inference에 특화된 많은 Accelerator들을 개발했습니다. 미국에서는 구글의 TPU 한국에서는 퓨리오사, 리벨리온, 사피온 등이 출사표를 던졌죠. 당시의 HW Accerelator의 목표는 CNN 기반 모델의 추론을 효과적으로 처리하는 것으로 Edge Application이나 Data Center의 Load를 낮추는 용도로 유망할 것으로 보았고 좀 특이하게 한국에서는 PIM (Processor in memory)이 주요 정부 과제로 부상되었습니다. 그리고, Intel/AMD가 FPGA 업체인 Altera, Xilinx를 합병하면서 이 시장의 잠재력을 높게 평가했었습니다.
그런데 2023년 LLM(Large Language Model) Chat-GPT가 등장하면서 이 상황은 완전히 뒤집혔습니다. 처음 대중에게 알려진 ChatGPT3.5의 경우 파라미터 수만 200억 개에 달했으며, 파라미터를 연산해서 LLM 모델을 학습하게 되는데 그 수가 너무 커서 이전의 Computing 방식으로는 도저히 감당이 되지 않았습니다. NVIDIA는 2019년 Mellanox를 인수하게 되는데, 그 당시 NVIDIA CEO 젠슨황이 왜 그 회사를 9조 원 가까이에 사들였는지 의아했는데, 젠슨황은 Data Center에서 NVIDIA GPU의 활용도를 높이기 위해 선 투자한 것이고 이 전략이 LLM 시장과 맞아떨어지며 Data Center에서 NVIDIA GPU 만이 ChatGPT의 파라미터를 학습하고 추론하는 유일한 솔루션이 되었습니다. Open AI, Google, Meta와 같은 Big Tech Company 외 Anthropic, Cohere와 같은 여러 Startup들이 LLM Model 시장에 뛰어들면서 Microsoft, Google, Amazon 등의 Cloud Service 회사들의 Data center에 NVIDIA Solution을 도입하는 전쟁이 일어나고 있습니다. NVIDIA 주가가 하늘을 뚫을 지경이 되었고 NVIDIA GPU는 CUDA라는 Open source SW의 강력한 지원 및 풍부한 개발자를 확보하고 있기 때문에 당분간 NVIDIA의 아성을 무너 뜨리기는 쉽지 않을 것으로 보입니다. 반면 CNN 계열의 Accelerator는 대부분 간단한 Linear 연산으로 추론이 가능했다면, LLM은 Transformer라는 기술 때문에 Softmax, GELU와 같은 Non-linear 연산이 중간중간에 수행되어야 하기 때문에 기존의 CNN 계열 Accelerator를 수정 없이 사용하기는 불가능합니다. 최근에 사피온, 리벨리온의 합병 소식을 포함해서 삼성전자도 마하 칩이라는 AI Accelerator를 만들기 위해 큰 투자를 한다고 하는데, 이 모든 것이 LLM의 등장으로 2023년 이후 완전히 판도가 바뀐 AI 시장 때문으로 볼 수 있습니다. 요즘 Foundry에서 3나노 공정을 사용하는데 천문학적인 개발비가 소요되는데 이런 회사들의 출혈이 아주 심하리라 예상됩니다.
그러면 어떻게 이 공고한 NVIDIA 시장을 뚫을 수 있을까요? 그 첫 회사가 Tenstorrent가 출사표를 던졌죠. 창업자는 짐 켈러로 Computer architecture의 전설적인 인물입니다. 최근 한국 회사와의 협업 및 삼성 포럼에서 강연 등으로 이름을 들어본 분도 있을 것입니다. Tenstorrent가 주목한 Core는 RISC-V입니다. 현재 Tensix라는 RISC-V processor 5개를 묶은 IP를 출시했고, 이 Tensix를 120개 (RISC-V core 600개) 탑재한 Grayskull chip으로 만든 Data center용 PCIe Card를 출시했습니다. 그 외, Ventana가 492개 core를 가진 Data Center Solution을 출시했고, Espenranto는 ET-SOC-1을 출시했는데 1088 개의 Risc-V core를 탑재하여 2023년 9월 Generative AI application이 가능하다고 주장합니다. 그리고, Meta도 Video Transcoding에 사용되는 MSVP라는 ASIC에 처음으로 RISC-V core를 사용하였고, MTIA v1이라는 AI Inference ASIC을 2023년 말 출시하여 반도체 업체들이 긴장하고 있다는 기사가 났었습니다. 중국의 움직임도 심상치 않은데, 미국의 대중 규제가 거세지자 거의 국가 차원에서 RISC-V에 올인하는 분위기입니다. 여전히 NVIDIA의 SW를 포함한 생태계를 무너뜨리기는 많이 역부족이지만 도전이 계속되고 있습니다.
이런 상황에 RISC-V의 열기가 유독 한국에서는 높지 않은 것 같습니다. 시스템 반도체 학과등을 신설하여 향후 한국의 먹거리로 육성한다는 말이 무색하게 각 학교의 커리큘럼에는 RISC-V에 대한 강의가 눈에 띄게 적습니다. 미국에서는 거의 모든 Top school이 이 과정을 개설하고 년간 10000명 이상의 학부생이 이 기술을 습득하고 졸업한다고 합니다. RISC-V IP 및 Solution을 제공하는 SiFive가 한국에 진출했을 때, 전자공학과 교수였던 친구가 SiFive의 존재는 물론이고 RISC-V가 뭔지 아예 모르는 것을 보고 적쟎이 놀란적이 있었습니다. 대기업의 분위기를 물어보니, RISC-V를 직접 설계하려는 노력보다 Proven 된 solution을 도입하는 쪽으로 가닥을 잡아간다고 하니 답답한 심정입니다. 이런 태도들이 최근의 삼성반도체 위기를 불러온 한 단면이 아닐까 생각됩니다.
기초가 튼튼하면 후발이어도 쫒아갈 체력을 갖추게 될 것이기 때문에 그동안 구현한 RISC-V에 대해 많은 사람들과 공유하고 싶습니다. CPU Design이라는 것이 Verilog 같은 낯선 Language를 쓰는 소수 사람만 가능한 것이 아니라 C/C++과 같이 보편적 프로그래밍 언어만 이해하는 사람이라면 누구가 Design 해 볼 수 있게 HLS로 시도해 보았습니다. 특히 Github Copilot 같은 도구를 활용하면 훨씬 더 적은 인원으로 개발이 가능할 것으로 보입니다. 이런 관점에서 AI를 적극 활용하여 Design Flow에 적용하는 방법까지 같이 시도해 보려고 합니다. 기본적인 하드웨어 지식을 갖추고 있다면 코딩에 서투른 사람도 원하는 설계가 가능한 시대가 되었습니다. 망설이지 말고 새로운 세계에 같이 발을 들여 놓으면 좋겠습니다.
첫 파트는 기존의 방식, 즉 AMD가 제공하는 HLS (High Level Synthesis) Tool을 이용하여 C++로 구현한 RISC-V Core를 Hardware로 만드는 방법을 설명해 보도록 하겠습니다. HLS가 분명 편리한 점은 있으나 약간은 아쉬운 면이 있는데, 과연 AI가 이것을 해결해 줄 수 있을 지 두번째 파트에서 다루어 보도록 하겠습니다. 본격적인 두 파트를 시작하기에 앞서서 하드웨어 설계를 위한 아주 최소한의 지식들도 다루도록 하겠습니다. 대부분 ChatGPT를 이용할 것이고 내용의 진위는 제 지시과 경험으로 판단하여 수정할 내용이 있으면 수정해서 올리도록 하겠습니다.
Next: [Background] Why RISC-V?
'RISC-V' 카테고리의 다른 글
| [Background] Design Methods (Why HLS?) (6) | 2024.10.27 |
|---|---|
| [Background] Why RISC-V? (1) | 2024.10.27 |
| [Extension Design] CUSTOM Instruction Design (0) | 2024.07.23 |
| [FPGA] Vitis platform generation and application SW (0) | 2024.07.23 |
| [FPGA] Vivado System integration/Platform file 생성 (0) | 2024.07.23 |