Qwen3.5 4B 가중치 안에 RISC-V CPU를 컴파일, Gated DeltaNet 상태를 RAM으로 사용
- Qwen3.5 4B 원본 가중치 위에 11개 레이어로 32비트 RISC-V 코어(RV32IM + Zba + bignum 유닛)를 얹고, GDN 어텐션 레이어를 RAM으로 써서 forward pass 안에서 명령을 실행함
- gate를 1, write strength(beta)를 1로 두고 one-hot key 인코딩을 쓰면 GDN 상태 행 하나를 정확히 덮어쓰고 그대로 읽어오며, 대화가 길어져도 상태 크기가 고정돼 KV cache보다 싸게 RAM을 확보함
- 학습 없이 컴파일러가 가중치를 직접 설정하며, 공식 riscv-tests를 통과하고 qemu와 결과가 일치하며 1800만 명령을 오류 없이 실행함
- Qwen은 도구 호출 형식에 편승해 CPU에 명령을 넘기고 결과를 받아오며, 외부 tool call이나 런타임은 쓰지 않음. 원본 가중치는 그대로 두고 컴퓨터 가중치를 추가 차원과 레이어에 더함
- 파일 저장 실험도 붙어서, 파일명을 해시해 DeltaNet 상태의 1,024개 슬롯 디렉터리에 넣고 본문은 다른 헤드에 한 행당 8토큰씩 이어서 보관함
Hacker News opinions
RAM을 gated attention으로 흉내 내는 건 알겠는데 CPU는 어떻게 도는 거임? RISC 명령 해석하면서 출력 예측하도록 레이어를 학습시킨 건가
CPU는 매 사이클마다 이전 상태에서 다음 상태로 넘어가는 함수니까, 그 함수를 가중치로 표현했다고 보면 됨
이런 회로를 처음부터 학습에 넣은 모델이 어떻게 될지 궁금함. 특히 저장 공간이 어떻게 잡힐지가
결국 또 하나의 루벤 골드버그 기계 아님? 2014년 Neural Turing Machine 때도 같은 길 걸었고, 그냥 LLM이라서 하는 거지
오히려 LLM이 본질적으로 비결정적이라는 흔한 오해를 반박하는 좋은 사례임. 모델 안에서 CPU가 도는 걸 보여주니까
Qwen이 파일 저장할 때 이름을 해시해서 1,024개 슬롯 디렉터리에 넣는다는 대목 읽고 감탄했음. 이 사람 돈 받고 이런 실험하는 건가 싶더라
멋있긴 한데 에이전트가 이걸 발견하고 클립 만드는 쪽으로 악용할 그림부터 그려짐. 파일시스템까지 넣은 배짱은 인정
컴퓨터를 컴퓨터로 쓰면 되지 왜 이렇게 우회하냐는 생각도 들지만, 모델 2/3 지점에 고정된 FFT나 벡터 연산 레이어를 박아두면 작은 모델이 특히 이득 볼 텐데
비슷한 걸 Loom이라는 작은 네트워크로 해봤는데 레이어를 훨씬 적게 쓰고 Doom도 아주 느리게 돌아감
LLM 안에 wasm을 구현한 Percepta 사례도 있음. CPU 디코딩으로 wasm 부분을 처리했더라
GPU가 비싸니까 차라리 모델 안에 GPU를 만들었으면 더 유용했을 텐데
지금 학습 방식으로 어셈블리를 충분히 먹이면 이런 게 학습되는지, 아니면 하드코딩으로만 가능한지가 진짜 질문임