11月2日、Mark Tysonが「AI model gets a 32-bit RISC-V CPU compiled directly into its weights, then runs DOOM on it」と題した記事を公開した。この記事では、LLMの重みに32ビットRISC-V CPUを直接コンパイルして組み込み、その上でDOOMを動作させた実験的プロジェクト「Qwenputer」について詳しく紹介されている。
LLMの重みにCPUをコンパイルする——そして当然DOOMを動かす
AIエンジニアのDivyansh Agrawal氏が公開した「Qwenputer」は、Alibaba製のオープンソースLLM「Qwen 3.5 4B」に、32ビットRISC-V CPUを重み(weights)として直接コンパイルして埋め込むという実験的なプロジェクトだ。
外部ランタイムやツール呼び出しを一切使わず、LLM自身がCPU命令を発行・読み戻しする仕組みになっている。C言語やMicroPythonのコードをLLM内蔵CPUで実行することも可能で、そのCPUは公式のriscv-testsをパスし、QEMUとの命令結果一致も確認済み。さらに1800万命令をエラーなしで連続実行した実績も持つ。
そして当然のように、DOOMが動く。非常に遅いが。
「訓練なし」でCPUを追加する仕組み
通常のLLMカスタマイズといえばファインチューニング(追加訓練)だが、このRISC-V CPUの実装は訓練を一切行っていない点が特徴的だ。
「Qwenの既存レイヤーの前に11層のトランスフォーマー層を追加しており、それらの重みは学習によって得たものではなく、コンパイラがすべてを計算している」
——とAgrawal氏は説明する。重みをコンパイラで決定論的に計算するアプローチは、LLMの「訓練」という概念とは根本的に異なる。
RAMの実装にも工夫がある。Qwen 3.5が持つ「Gated DeltaNet(GDN)」の状態をRAMとして流用している。GDNはリニアアテンションの一種で、隠れ状態として「高速重み(fast weights)」を保持する仕組みだ。重要なのは、Qwen 3.5が通常のQwen 3とは異なるハイブリッドアーキテクチャを採用しており、標準的なAttention層にGDN層を混在させている点だ。このGDN層が推論中に更新可能な状態(fast weights)を持つため、外部メモリを追加せずともRAMとして転用できる構造的な素地があった。Agrawal氏自身も「fast weightsをRAMとして使う発想は新しくないが、Qwen 3.5に対してこの方法で改造したのはおそらく初」と認めている。
モデルサイズが約2倍に膨張した理由
この拡張の代償として、Qwenputer全体のサイズは元のQwen 3.5 4B(約4GB相当)から約19GBまで膨張している。現時点でAgrawal氏が推奨する動作環境はVRAMが24GB以上のワークステーションだ。
サイズが急増した主な原因は2つある。第一に、CPU実装のために11層ものトランスフォーマー層を既存レイヤーの前段に追加したこと。各層はそれ自体が大きなパラメータ行列を持つため、層数の増加はモデル全体のサイズに直結する。第二に、GDN状態をRAMとして使うために必要な状態テンソルのサイズが加算されること。これらが合わさり、元の4GB程度のモデルが19GB規模に達している。コードの効率化と高速化は現在進行中とのことで、今後のサイズ削減が期待される。
プロジェクトの実用的な意義はひとつ明確にある。LLMは算術演算が苦手なことで知られるが、内蔵CPUを介することで正確な計算結果を得られる。ハルシネーションによる計算ミスを、外部ツールを呼ばずに回避できる。
ファイルシステムまで内蔵
CPUだけでは物足りなかったのか、Agrawal氏はさらにファイルシステムも実装した。RAMがすでにDeltaNet状態として存在しているため、ファイルシステムの追加は「比較的自明な拡張」だったという。
- 1,024スロット、最大512ファイルを格納可能
- 会話終了時にDeltaNet状態を保存すれば、ストレージの内容は永続化される
試す方法
- コードはGitHubのQwenputerリポジトリでMITライセンスとして公開済み
- モデル本体はHugging FaceのQwenputerモデルページから入手可能
このプロジェクトは特定の問題を解くために作られたというよりも、「LLMの重みに何を埋め込めるか」を探る実験として位置づけられている。
詳細はAI model gets a 32-bit RISC-V CPU compiled directly into its weights, then runs DOOM on itを参照していただきたい。




