요약
OpenTPU는 AI 에이전트가 설계한 오픈소스 AI 가속기로, FPGA 카드에서 Qwen3 같은 소형 언어 모델을 돌립니다.
GitHub 이용자 FeSens가 공개한 저장소입니다. AI 에이전트가 하드웨어 설계를 어디까지 해낼 수 있는지, 자기 추론을 돌릴 칩까지 만들 수 있는지 시험하려는 프로젝트입니다. 앞선 실험인 auto-arch-tournament의 교훈을 AI 가속기에 적용했다고 밝혔습니다.
왜 중요한가
- 회로 설계(RTL)부터 명령어 집합(ISA), 시뮬레이터, 컴파일러, 프로파일러까지 가속기 전체를 AI가 만든 사례입니다.
- Apache 2.0 라이선스로 공개돼, 누구나 하드웨어부터 소프트웨어까지 뜯어보고 고쳐 쓸 수 있습니다.
- 다만 README는 어떤 AI 모델이 설계했는지, 사람이 얼마나 관여했는지는 밝히지 않습니다.
핵심 내용
- 인스퍼 YPCB-00338 카드의 Kintex-7 FPGA(회로를 다시 짤 수 있는 칩)에서 133.33MHz로 동작합니다.
- 생성 속도는 LFM2.5-230M이 초당 약 82~86토큰, Qwen3-0.6B가 약 31토큰, Qwen3.5-0.8B가 약 24토큰입니다.
- 토큰 생성은 메모리 대역폭에 묶여 있고, DDR3 두 채널 최대 대역폭의 82~94%까지 끌어냈다고 합니다.
- 시뮬레이터는 실제 카드와 비트 단위까지 같은 결과를 내도록 만들었습니다.
- 4비트 양자화로 생성 속도를 40~45% 높였고, MoE 모델 LFM2.5-8B도 호스트에서 가중치를 나눠 보내 초당 10.6토큰을 냅니다.
HN 반응
- 연구소들이 최신 모델을 칩에 새기지 않는 이유를 두고, 모델 발전이 칩 개발보다 빠르다는 답과 마스크 제작은 반년이면 된다는 반론이 오갔습니다.
- FPGA가 GPU보다 빠르냐는 물음에는 칩 자원 상당 부분이 놀게 되고, FPGA의 강점은 속도보다 일정한 타이밍이라는 설명이 이어졌습니다.
소프트웨어 하는 사람이 던지는 정말 멍청한 질문인데요. 왜 연구소들은 최첨단 모델을 아직 칩에 구워 넣지 않는 걸까요? 성능도 좋아지고 요청당 비용도 줄 테니 해볼 만해 보이거든요. 다만 저는 경제성도, 물리적인 난관도 전혀 모릅니다.
모델의 SOTA는 칩을 설계하고 생산하는 속도보다 빠르게 바뀝니다. 수익을 내려면 특정 모델 하나에 몇 년씩 매달려야 하는데, 그러는 동안에도 경쟁에 뒤처지지 않으려고 새 SOTA 모델을 만드는 데 막대한 돈을 계속 쏟아부어야 합니다.
그래서 다들 이걸 GPU로 돌리는 겁니다. 새 모델이 이전 모델을 대체해도 메모리만 충분하면 칩이 쓸모없어지지 않으니까요.
저는 누군가 "이 정도면 충분히 쓸 만하다"는 모델(예를 들어 qwen 4.0 같은 것)을 골라서 주변기기 형태로 파는 날을 기대하고 있습니다.
지금 시점에서 LLM은 온갖 작업에 "충분히 쓸 만한" 수준이에요. 이제는 더 똑똑하게 만드는 쪽보다 더 작고 싸게 만드는 쪽으로 노력이 옮겨 가고 있죠.
모두 승선하세요! 이제 바닥을 향한 경주가 시작됐습니다.
제 생각엔 이게 꿈같은 시나리오예요! 지금 수준의 능력을 더 싸고 빠르게 쓸 수 있으면, 사람들이 가장 우려하는 위험은 피하면서 엄청나게 유용한 도구를 얻는 거잖아요. (물론 지금 수준에서도 이미 큰 위험이 있기는 하지만요.)
바닥을 향한 경주는 말 그대로 제가 가장 두려워하는 결말이에요.
저는 바닥에서 살고 싶지 않아요.
좀 더 말씀해 주세요. 추론 비용이 싸지면 왜 나쁜 건가요?
저한테는 끔찍하죠. AI와 일자리를 놓고 경쟁해야 하니까요.
대부분의 기술이 그렇듯 AI도 시간이 지나면 싸지게 되어 있습니다. 아직 초기라서 하드웨어 부족을 겪고 있을 뿐이고, 이건 결국 해소될 겁니다.
AI에게는 노동자의 권리가 없고, 번아웃도 없고, 아프지도 않고, 즉시 투입할 수 있습니다. AI로 우리를 완전히 대체할 수 있게 되는 순간 우리는 대체될 겁니다. 그에 맞춰 계획을 세우세요. 저는 FIRE를 추구하고 있고, 기술직으로 옮기는 것도 고려하고 있습니다.
AI가 그렇게 싸고 똑똑해진다면, 직접 회사를 차려서 그걸 활용하면 되지 않나요?
기술직도 영향을 받을 것 같아요. 로봇이 그 일의 상당 부분을 더 싸고 빠르게 못 할 이유가 없잖아요. 벌써 집도 3D 프린터로 짓고 있고요.
아, 이해가 되네요. 저는 AI가 혼자 일하는 쪽이 AI를 활용하는 사람보다 경쟁력이 높을지는 회의적이에요. 물론 확신이 아주 강한 건 아니고, 반대로 생각하는 것도 합리적이라고 봅니다. 그래도 저는 아주 좋고 빠르고 싼 추론의 도움을 받아 해낼 수 있는 일들을 생각하게 되네요.
슬픈 건, 성능이 좋든 나쁘든 AI가 더 싸다는 이유만으로, 지금 수준에서도 엄청난 수의 일자리를 없애기에 충분할 거라는 점입니다. 지금 사람들이 일자리를 유지하고 있는 건 책임 소재에 관한 법적 문제가 아직 충분히 정리되지 않아서, 경영진이 대숙청을 시작하지 못하는 탓이 크다고 봅니다. 저는 제가 계속 고용되어 있는 것도 어느 정도는 그래서라고 생각해요. 일이 틀어지기 시작할 때 책임을 물을 사람이 없으면, 윗자리에 있는 사람들로서는 상당히 어리석은 일이니까요. 당분간 사람은 값비싼 보험이나 마찬가지입니다. 경영진이 자기 책임을 면할 법적 틀이 생기거나 개인적 책임에서 스스로를 보호할 좋은 방법을 찾아내는 순간, 진짜 "재미"가 시작될 겁니다.
문제는 사람들이 거리에서 폭동과 혁명을 일으키지 않을 만큼 충분히 먹고살 수 있게 하려면, 쓸데없는 일자리를 얼마나 많이 만들어야 하느냐입니다.
회사는 이윤을 쫓는 존재이고 사회의 안녕에는 적극적으로 적대적이니, 우리 돈을 전부 기계가 돈 버는 순환 고리에 기꺼이 집어넣고 몇 사람만 빼고는 다 내버려 둘 겁니다.
정치인들한테서 UBI를 받아내서, 더 보람 있는 일을 할 수 있게 된다면 어떨까요?
제가 그쪽 분야에서 일하던 때를 떠올려 보면 가장 어려운 부분은 설계에 쓸 마스크를 구하는 일입니다. 마스크는 반년 정도에 걸쳐 개발했습니다. 마스크는 재사용도 되고 섞어서 조합할 수도 있어서, 팹리스 회사들이 팹과 협력해 자기들만을 위한 특수 마스크를 만드는 겁니다. 고객 입장에서는 일부 매크로블록용 마스크를 미리 만들어 둔 걸 쓰면 시간이 절약되거든요.
비교적 큰 LM을 실리콘에 새기는 방법에 대한 제 분석은 여기 있습니다: https://news.ycombinator.com/item?id=47109252
주 생산 파이프라인을 구축하기 전에 팹과 어느 정도 작업을 해 두면(1년쯤 걸리는 과정이라고 봅니다), 그다음에는 6개월 이내에 LM 온 칩을 찍어낼 수 있고, 파이프라인에 여러 LM을 동시에 올릴 수 있으니 연 2개보다 훨씬 많이 만들 수 있습니다.
말씀하신 내용 대부분에는 동의하는데, 딱 한 가지만 빼고요. 저는 멍청한 개를 얻었나 봐요. 살짝 부럽네요…
우리 집 개는 지금은 장작 나르는 걸 도와주는 정도인데, 다음 주부터는 선형대수를 시작시킬 생각이에요. 어떻게 되는지 지켜봐야죠.
그 회사들에는 수조 달러가 있잖아요.
1년 전에 GPT-4o 정도면 충분하다고 여겼을 사람이 많은 용도에서, 그걸 그냥 썼어도 후회할 일은 없었을 겁니다.
수조 달러어치의 의무가 있는 거죠. 컴퓨팅 구매 계약과 지분 형태로 파트너들에게 진 의무요. 모델을 칩에 굽는 데 재미 삼아 돈을 날릴 수는 없고, 정당화할 수 있어야 합니다. 위의 댓글들은 그들이 아직 그러지 않은 이유에 대한 가설이고요.
FPGA가 GPU보다 비싸다는 건 아는데, 추가 비용을 정당화할 만큼 충분히 빠른가요?
FPGA가 FPGA인 이유는 소프트웨어로 제어할 수 있는 어마어마한 배선 배열을 칩 위에 얹었기 때문입니다. 어떤 용도로 쓰든 칩 자원의 상당 부분은 안 쓰고 남게 됩니다. 아주 정형화된 용도라면 FPGA에서도 "아주 정형화된" 구성 요소들이 놀게 되는데, 그 공간을 실제 연산에 쓰는 편이 낫습니다. 많은 사람이 FPGA의 "장점"만 보고, 동작 방식에 본질적으로 따라붙는 꽤 큰 "단점"은 깨닫지 못합니다.
그래서 신디사이저처럼 특정 틈새 분야에서 쓰이는 것 같아요. 최대 8음이고, 모든 음이 똑같은 파이프라인(오실레이터 / 필터 / 엔벨로프 / 앰프)을 거치고, 모든 게 항상 돌아가야 하는 곳이요. 그런 면에서는 어떤 아날로그 회로든 모델링하기에 아주 좋겠죠?
그런데도 훌륭한 FPGA 기반 신디사이저가 있기는 하지만, 코르그 같은 회사는 그냥 Raspberry Pi에 코드를 얹고 끝내 버려요. 에뮬레이터도 마찬가지고요(SNES Mini 같은 것도 제 기억으론 속은 그냥 Raspberry Pi예요).
FPGA를 쓰는 건 성능 때문이 아닙니다. 성능은 CPU가 훨씬 낫고, 범용이라서 코드를 조금만 더 쓰면 뭐든 거의 같은 효율로 할 수 있죠.
FPGA를 쓰는 건 타이밍 때문입니다. 성능은 떨어지지만, (흔한 설계 구조의 상당수에서는) 클럭마다 매번 제때 결과를 내놓습니다. 100MHz쯤의 패브릭 클럭을 맞출 수 있다면, 그 안에 욱여넣은 온갖 이상한 로직을 전부 그 클럭으로 돌려서 초당 1억 개의 출력을 내놓고, (완전히 고장 나지 않는 한) 어떤 이유로도 단 하나도 빼먹지 않습니다. 대신 원하는 "프로그램"을 조금만 바꾸려 해도 비용이 아주 클 수 있고, 현실적으로 아예 불가능한 일도 많습니다. 아니면 적어도 여러분이 살 수 있는 부품에는 들어가지 않거나요. 하지만 오디오, 비디오, 고빈도 매매 같은 분야는 타이밍을 보장할 수 있다는 점을 아주 좋아합니다.
(물론 FPGA HDL을 쓰는 다른 방법도 있지만, 이게 더 흔한 방식 중 하나입니다. DDR 방식 클러킹 같은 것도 가끔 보이긴 하고요.)
경우에 따라 다릅니다. 어떤 작업에서는 CPU가 근처에도 못 따라가요. XCVU13P FPGA는 풀 듀플렉스 이더넷 1.2Tbps를 초당 10억 패킷으로 처리할 수 있습니다. 게다가 이 부품은 적당한 수량이면 1000달러도 안 하고, 이 속도로 데이터플레인을 돌릴 만한 CPU보다 전력 소모도 훨씬 적습니다.
제가 좀 엉성하게 말했네요, 죄송합니다.
제가 말하려던 요점은 CPU는 범용 생물이라서 뭘 시키든 별로 개의치 않는다는 겁니다. 1.2Tbps 이더넷 패킷을 초당 10억 개씩 처리할 수 있는 CPU가 있다면, 누군가 소프트웨어만 짜 준다면 1.2Tbps 규모의 데이터 흐름이 얽힌 다른 일도 아주 쉽게 많이 해낼 수 있을 겁니다. 그 이상도요. (다만 뭘 해도 2.4Tbps까지는 못 뽑아낼 겁니다.)
FPGA는 그렇게 못 합니다. 그 XCVU13P가 아예 못 하는 일도 많고, 1달러짜리 마이크로컨트롤러보다 못하는 일도 많습니다. (FPGA 안에 CPU를 구현하는 건 잠시 접어 두고요... 이건 사실 웬만큼 큰 FPGA 설계에는 거의 다 들어가는 일이라 그것대로 따로 얘기할 거리지만요.)
그건 FPAA(field programmable analog array)가 더 적합합니다. FPGA는 보통 클럭에 맞춰 동작하는 디지털 신호만 다룰 수 있어요.
속도만의 문제가 아니라 모델 품질의 문제이기도 합니다. Fable을 칩에 굽는 데 6개월이 걸리고, 설계, 맞춤 제조, 에너지 절감 등을 따져서 손익분기점까지 2년이 걸린다고 해 보죠. 그 시점에는 GPU에서 돌아가는 새 모델이 10배 더 좋은 결과를 내놓고 있을 텐데, 그래도 그 칩을 돌릴 가치가 있을까요?
물론 2년 반 된 모델이 더 빨리 돌아가겠지만, 가격을 내리면 손익분기점이 더 멀어지니 내릴 수도 없습니다.
비용 차이가 아주 크지 않다면, 사람들이 2년 반 된 모델에 돈을 내려고 할까요? 아니면 돈을 더 내고 새 모델에서 더 좋은 결과를 얻는 쪽이 이득이라고 생각할까요?
그런 대규모 자본 투입이 가치 있는 투자인지 말하려면 내부 사정을 알아야 하는데, 저는 그만한 정보가 없는 열린 질문이 많습니다.
제 추측으로는 최첨단 모델은 계속 GPU에 남고, 칩에 구운 모델은 사람들이 아직 탐색 중인 "이 정도면 충분한" 용도에 쓰일 것 같습니다. 아마 자동화된 센서 장치 같은 곳에 들어가는 고도로 특화된 모델이 되겠죠.
FPGA는 마법의 속도 향상제가 아닙니다. ML 학습이나 추론에서 최신 GPU보다 빠른 마이크로아키텍처는 제가 알기로는 없어요.
모델 가중치를 정적 마스크 ROM에 넣으면 추론의 전력 효율이 크게 좋아질 겁니다(탈라스가 하고 있는 걸 보세요).
하지만 그건 애초에 FPGA가 제공하는 효율이 아니죠.
게다가 큰 마스크 ROM이 얼마나 잘 확장되는지도 분명치 않습니다. 예를 들어 닌텐도 스위치 카트리지는 마스크 ROM일 거라고 예상됐지만, 실제로는 매크로닉스의 XtraRom 기술을 씁니다. 본질적으로는 지우기 기능을 없애서 밀도를 높인 플래시 셀 어레이입니다. 즉 다이를 만들 때는 모든 비트가 같은 상태이고, 제조 후반 단계에서 다르게 만들고 싶은 비트의 플로팅 게이트를 비우거나 채운 다음에는 마스크 ROM에 상당히 가깝게 취급합니다. 베어 다이, 플로팅 프로브 어레이, 전용 하드웨어 없이는 비트를 바꿀 수 있는지조차 분명하지 않습니다. 다만 플래시처럼 플로팅 게이트의 전자가 결국 터널링해서 데이터가 비트 로트(bitrot)를 일으킬 수 있습니다.
이걸로 볼 때, 어떤 크기의 마스크 롬이든 수천만 개 물량이면 수지가 맞을 텐데도, 메모리 제조사들은 마스크 ROM 칩을 128메가비트에서 한계로 두고 플래시 비슷한 쪽으로 유도하는 것으로 보입니다.
결국 지우기 기능이 없는 플래시는 마스크 ROM과 거의 같고, 메탈 1 레이어 부근 같은 공정 초반이 아니라 제조 막바지에 기록할 수 있게 해 줍니다.