오픈TPU, FPGA 카드에서 실제 가중치로 AI 모델 10개 구동

AI가 개발에 참여한 오픈소스 추론 가속기 프로젝트 오픈TPU(openTPU)가 FPGA 카드에서 실제 가중치를 적용한 최신 AI 모델 10개를 구동했다고 공개했다. 프로젝트는 10월 7일 깃허브 저장소에 설계와 측정 결과를 공개했다.

FPGA 카드에서 모델 10개 실행

오픈TPU는 인스퍼(Inspur) YPCB-00338 FPGA 카드에서 모델의 실제 가중치를 사용해 추론을 수행한다. 카드에는 자일링스(Xilinx) 킨텍스-7(Kintex-7) xc7k480t 칩과 DDR3 메모리 채널 2개가 탑재됐다. 프로젝트는 카드의 출력 토큰이 시뮬레이터 결과와 비트 단위까지 일치한다고 설명했다.

공개된 측정 대상에는 LFM2-2.6B, 스몰엘엠3(SmolLM3)-3B, 파이-4-미니(Phi-4-mini), 큐원3.5(Qwen3.5)-2B·4B, 젬마(Gemma) 4 등이 포함됐다. 빌드 B는 앞선 배포 이미지와 비교해 LFM2-2.6B, 스몰엘엠3, 파이-4-미니의 디코딩 속도를 8~9% 높였고, 젬마 4 E2B는 10% 빨라졌다. DRAM 최고 대역폭 대비 사용률도 기존 82~87%에서 91~94%로 올라갔다. 큐원3.5-4B의 int8 이미지는 4GiB를 넘는다.

4비트 양자화로 디코딩 속도 개선

프로젝트는 4비트 가중치에 FP4 값과 두 단계 블록 스케일을 적용해 가중치당 실제 4.25비트를 사용한다. 정확도를 고려해 언어 모델 출력층은 int8로 유지했다. 이 방식은 토큰당 전송 데이터량을 약 3분의 1 줄이고, 큐원3.5의 디코딩 속도를 40%, 큐원3와 LFM2는 45% 높였다는 설명이다. 다만 모델별 퍼플렉시티가 달라지는 비용도 있다고 밝혔으며, 세부 수치는 문서에 제시했다.

카드 메모리 4GiB를 넘는 혼합 전문가 모델은 전문가 가중치를 호스트 저장장치에서 불러와 실행한다. 카드가 각 토큰의 경로를 정하고 모든 전문가를 계산하며, 호스트는 카드 DRAM의 계층별 슬롯에 없는 전문가만 전송한다. LFM2와 큐원3의 디코딩은 카드에서 한 번 컴파일한 프로그램으로 수행되며, 호스트가 토큰당 추가하는 시간은 omarchy 환경에서 0.17~0.30밀리초, opentpu 환경에서 0.45~1.3밀리초라고 프로젝트는 측정했다.

설계·시뮬레이터·호스트 소프트웨어 공개

오픈TPU는 하드웨어 설계(SystemVerilog), 명령어 집합, 비트 단위 시뮬레이터, 커널 언어와 컴파일러, PCIe 카드 구동용 호스트 소프트웨어를 하나의 저장소에 담았다. DMA가 데이터를 옮기고 행렬 연산 장치가 DRAM에서 읽은 int8 가중치를 처리하며, 벡터 장치는 fp32 연산을 맡는다. 캐시나 숨겨진 스케줄링 없이 데이터 이동을 명령어로 처리해 실행 추적에서 각 연산의 대기와 소요 사이클을 확인할 수 있다.

프로젝트는 학습용 자료로도 활용할 수 있도록 설계부터 실제 카드 구동까지 공개했다. 카드 없이도 노트북에서 대부분의 작업을 할 수 있고, FPGA 카드가 있으면 비트스트림을 만들고 JTAG로 올린 뒤 설정 프로그램과 채팅 도구를 실행하는 방식이다. 라이선스는 아파치 2.0이며, 명령어 집합·시뮬레이터·RTL 변경은 `python3 -m pytest -q` 테스트를 통과해야 한다. 상용 출시 일정이나 가격, 고객사 도입 사례는 공개 내용에 포함되지 않았다.

RELATED ARTICLES