TECH 으로 돌아가기
TECH HACKER NEWS 오늘 7분 읽기 29 READS

AI가 설계한 오픈소스 AI 가속기 'openTPU', 무엇이 다른가

AI가 설계한 오픈소스 AI 가속기 'openTPU', 무엇이 다른가
SOURCE IMAGE · HACKER NEWS

openTPU는 'AI가 만든 AI 가속기'를 표방하는 오픈소스 프로젝트다. 특이한 점은 하드웨어 설계의 상당 부분을 AI 에이전트가 담당했다는 것이고, 프로젝트가 스스로 던지는 질문도 여기에 맞닿아 있다. AI 에이전트가 하드웨어 설계에서 어디까지 갈 수 있는가, 그리고 자기 추론을 돌리는 칩을 스스로 만들어낼 수 있는가. 이 프로젝트는 앞서 진행된 auto-arch-tournament의 접근을 AI 가속기 영역으로 옮겨온 결과물로 소개된다.

실무자 입장에서 더 눈여겨볼 지점은 구조의 투명성이다. 가속기 전체가 하나의 작은 모노레포 안에 담겨 있어 처음부터 끝까지 읽어볼 수 있다. SystemVerilog로 작성된 하드웨어 설계(RTL), 명령어 집합(ISA), 비트 단위까지 동일한 결과를 내는 시뮬레이터, 커널 언어와 그 컴파일러, 그리고 실제 PCIe 카드를 구동하는 호스트 소프트웨어가 한곳에 모여 있다. 파이썬에서 작성한 행렬 곱이 어떻게 회로의 배선까지 내려가는지 추적하고 싶은 사람에게는 학습 교보재로서의 가치가 분명하다.

실제 카드에서 검증된 동작

openTPU는 Inspur YPCB-00338 카드(Xilinx Kintex-7 xc7k480t, DDR3 두 채널) 위에서 열 개의 최신 모델을 실제 가중치로 구동한다. 중요한 것은 카드가 시뮬레이터와 비트 단위로 동일한 토큰을 생성한다는 점인데, 이는 설계의 정확성을 검증하는 강력한 기준이 된다. 모델별로 배포 시점이 기록되어 있다. Qwen3, LFM2.5, Qwen3.5 계열 초기 모델은 2026년 9월 29일 프로덕션 이미지(deploy_champ_e698dcd7)로, LFM2-2.6B·SmolLM3-3B·Phi-4-mini는 9월 30일, Qwen3.5-2B와 4B 및 Gemma 4는 10월 1일에 'Build B'(deploy_fused133c_79c5707a)로 측정됐다.

Build B는 이전 이미지 대비 LFM2-2.6B, SmolLM3, Phi-4-mini의 디코딩을 8~9%(Gemma 4 E2B는 10%) 빠르게 처리하며, DRAM 피크의 82~87% 수준이던 활용률을 91~94%까지 끌어올렸다. 더 앞선 프로덕션 이미지 se-cand3는 Xilinx MIG와 2열 행렬 유닛, 120.755MHz 클럭으로 빌드된 것이었다. 참고로 Qwen3.5-4B의 int8 이미지는 4GiB를 넘는다.

양자화와 전문가 스트리밍

4비트 가중치 방식은 2단계 블록 스케일을 가진 FP4 값을 사용해 가중치당 4.25비트를 쓰고, 정확도를 위해 LM 헤드는 int8로 유지한다. 이 방식은 토큰당 바이트 수를 약 3분의 1 줄이고 디코딩 속도를 Qwen3.5 기준 40%, Qwen3·LFM2 기준 45% 높인다. 다만 모델별로 측정 가능한 수준의 퍼플렉시티 비용이 따르며, 그 수치는 문서(docs/quant.md)에 모델별로 기록돼 있다.

카드의 4GiB를 넘어서는 Mixture-of-Experts 모델은 전문가(expert)를 호스트 저장소에서 스트리밍하는 방식으로 돌린다. 카드가 토큰마다 라우팅을 수행하고 모든 전문가를 계산하되, 전문가는 DRAM 안의 레이어별 슬롯에 보관한다. 호스트는 풀 파일에서 누락된 전문가만 링크 속도로 해당 슬롯에 복사해 넣을 뿐이다. 즉 연산 주도권은 카드에 두고 호스트는 데이터 공급 역할만 맡는 구조다.

단순함이라는 설계 철학

이 가속기의 핵심 성격은 '의도적 단순함'이다. 시퀀서가 사이클당 하나의 명령을 소수의 유닛에 발행한다. DMA가 데이터를 옮기고, 행렬 유닛이 DRAM에서 스트리밍된 int8 가중치를 곱하며, 벡터 유닛이 fp32 연산을 담당하고, 양자화기가 결과를 다시 int8로 되돌린다. 캐시도 없고 숨겨진 스케줄링도 없다. 모든 데이터 이동이 하나의 명령이기 때문에, 실행 트레이스를 보면 사이클이 어디서 소모되는지 그대로 드러난다.

이 투명성을 활용하는 도구가 프로파일러 'Lens'다. RTL, 시뮬레이터, 혹은 실제 카드에서 실행을 기록해 브라우저에서 루프라인, 타임라인, 명령별 표로 보여준다. 각 유닛이 사이클마다 바쁜지, DRAM을 기다리는지, 다른 명령을 기다리는지가 색으로 구분된다. 또한 호스트는 가능한 한 개입을 줄였다. LFM2와 Qwen3는 한 번 컴파일된 디코딩 프로그램이 레지스터에서 위치를 읽어 자체 임베딩과 RoPE 행을 조회하며, 호스트가 토큰당 더하는 부담은 0.17~0.30ms 수준(환경에 따라 0.45~1.3ms)에 그친다. Qwen3.5의 프리필은 여전히 호스트에서 청크별 프로그램을 컴파일한다.

한계와 참여 조건도 분명히 짚을 만하다. 카드를 제외한 모든 것은 노트북에서 돌아가며, 대부분의 작업은 FPGA 없이 파이썬과 Verilator만으로 가능하다. 다만 ISA, 시뮬레이터, RTL을 바꾸는 변경은 테스트(python3 -m pytest -q)를 통과시켜야 하고, 성능 주장은 어떻게 측정했는지 밝히도록 요구된다. 실제 카드 구동에는 비트스트림 빌드와 JTAG 적재, 셋업 과정이 필요하다. 결국 openTPU는 상용 가속기의 대안이라기보다, AI 가속기의 작동 원리를 투명하게 읽고 실험할 수 있는 교육·연구용 레퍼런스로서의 성격이 짙다고 볼 수 있다.

SOURCE · HACKER NEWS
원문 전체 보기 → https://github.com/FeSens/openTPU
SHARE
NEXT · CHOOSE

변화를 읽었다면,
내가 만들 수익 구조를 고릅니다.

정보를 더 모으는 데서 멈추지 않고, 광고·외주·판매·중개·구독 중 내 상황에 맞는 출발점을 정해보세요.

21가지 수익 구조 살펴보기 →
처리 중...