【狂気】2006年のPS3にLLMを喋らせる──久夛良木のCellは、20年後にAIを喋った
忙しい人向けの要約
SPUを人間離れした精度でぶん回したくなった
そのために、PS3実機に低知能AI(式神)を住まわせた
USBメモリの抜き挿しが消え、ネット経由で約5秒の自動アプデになった
実機の映像までPCに飛ぶようになり、AIが自分の書いたコードの結果を自分の目で見るようになった
気づいたら、2006年のゲーム機がLLMを喋っていた
さらにその子に日本語を教えたら、月明かりの夜道の先の本に、毎回違う童話を書くようになった(実機・検証付き)
【注意】本記事は約4万字あります。前作(1週間の記録)より長い。見る人によっては怪文書です─
二週間の出来事を薄めずに書いたら、この分量になった。本を一冊読むつもりで、飲み物を用意して来てほしい。急ぎの人は上の要約が全体像だ。前作同様、この後に用語集を置いた。分からない言葉が出たら、そこへ戻ってくればいい。
なお、相変わらず筆者はプログラムが1行も書けません。
PS3でLLMが動くところだけ見たい方は、目次から第九章へどうぞ。
まえがき
この記事は「【狂気】2026年、PS3を開発する」の続編である。前作は、プログラミング知識ゼロの人間がAIと組んでPS3開発地獄の扉をこじ開けた1週間の記録だった。あれから4ヶ月半。舞台はエミュレータから実機に移り、戦う相手は「AIの記憶が消える問題」から「AIが嘘をつく問題」に変わった。
前作を読んでいなくても分かるように書くが、憲法・罰ゲーム・魔導書(スキルファイル)が何なのか知っていると3倍楽しめる。
一文で要約するならこうだ。
「動いてるように見える」と「信用できる」は別物で、その差を埋めるのが実測。
この一文の実証として、2026年7月18日、PS3実機がLLMを喋った。
用語集─嵐に入る前に
前作で「この先は専門用語の暴風雨です」と書いた。今作は暴風雨に加えて、AIの用語という別の前線がぶつかる。前作を読んでいない人のための基本用語の再掲と、今作から登場する新語をまとめておく。辞書として使ってもいいし、先に一読してから本編に進んでもいい。前作同様、全ての用語は、実際に地雷を踏んだ経験から記述されている。
石の解剖(ハードウェア)
Cell Broadband Engine ─ PS3の心臓部。IBM・ソニー・東芝が共同開発。汎用コア1基(PPU)と演算コア8基(SPU、うち使えるのは6基)の異形構成。「開発地獄」の元凶にして本記事の主役。
PPU ─ Cellの司令塔。64ビットPowerPCの汎用コア。本記事では「糊」(SPUに投げられない細かい仕事)の担当。
SPU ─ Cellの本体。6基の演算専用コア。各自256KBの机(ローカルストア)しか持たず、書庫(メインメモリ)へはDMAの運搬指示書でしか触れない。勘(分岐予測)なし。本文の例えでは「腕は超一流だが机が極端に小さい職人」。
ローカルストア(LS) ─ SPUの机。256KB。ここに載る分しか計算できない。
DMA転送 ─ CPUを介さずメモリ間でデータを運ぶ仕組み。SPUの生命線。まとめて運ぶリスト式(getl)もある。
RSX ─ PS3のGPU。GeForce 7800ベース。今作では描画のほかに「倉庫番」(メモリ間の荷物運び)としても働く。
XDR ─ PS3のメインメモリ(256MB)。2006年当時としては贅沢な帯域(理論25.6GB/s)を持つ。本記事の勝負の土俵。
GDDR3 / VRAM ─ RSX側のメモリ(256MB)。CellからXDR経由で読むと激遅という非対称な性質があり、今作ではモデルの「倉庫」に転用される。
EIB ─ Cell内部の環状バス。PPU・SPU・メモリ・RSXを繋ぐ道路網。
AltiVec ─ PPUが持つ128ビットSIMD命令。今作ではPPU側の糊の高速化に使う。
SIMD ─ 1命令で複数データを同時計算する方式。SPUは全部これ。
工場の設備(開発環境と装置群)
PSL1GHT ─ 非公式のPS3開発キット。homebrew(自作ソフト)開発の土台。
RPCS3 ─ PC上のPS3エミュレータ。予行演習場。ただし「RPCS3で動いても実機で動くとは限らない」が本シリーズの鉄則。
CFW ─ 改造ファームウェア。実機PS3でhomebrewを動かすための下地。
WSL ─ Windowsの中でLinuxを動かす仕組み。ビルドはここで行う。
Claude / Claude Code ─ 本記事の相棒AI。チャット版(上院=設計)とターミナル常駐版(下院=実装)の二院制で運用している。 二院制 ─ 設計をチャット側、実装をコード側のAIに分ける運用。前作末期に確立。 憲法 ─ 前作で制定した、AIの行動を縛る人力ルール集。今作でその限界と後継が語られる。
SHIKIGAMI(式神) ─ 今作の主役装置。PS3実機に常駐する子AI。個体名は夜狐(やこ)、打電の語尾は「コン」。実機で起きたことを実機自身が報告する。
打電 ─ 式神がUDPで送ってくる報告。虚報が構造的に不可能な、受信側発の事実。
OTA / 脱皮 ─ ネットワーク経由の自己更新。式神が新しいバイナリを受け取り、自分で自分を入れ替える。約5秒。 デッドマン機構 ─ 更新に失敗したら自動で旧版に戻る安全装置。毒ELF(わざと壊したバイナリ)で実射検証済み。
憲兵 / 地雷チェッカー ─ ビルド前にコードを検査する自作の静的検査器。77の検査観点(地雷台帳)を持ち、違反があるとビルド自体が止まる
地雷 ─ 実機でだけ踏む罠の総称。踏むたびに台帳へルール化される。
夜稽古 ─ 寝ている間に実機が自分の性能を測り続ける常設ベンチマーク。実測データベースの供給源。
EXP番号 ─ 夜稽古の実験台帳の整理番号(EXP003=アンロール実測、など)。
SHIKIGAMI EYE / TVID ─ 実機の画面をPCへ飛ばす映像転送。AIが自分の書いたコードの結果を自分の目で見るための器官。
テレメトリ ─ 実機から流れてくる計測データの総称。
AIと言葉(LLM用語)
LLM ─ 大規模言語モデル。ChatGPTやClaudeの中身。今作ではその最小の親戚をPS3に住まわせる。
パラメータ ─ モデルの脳のつまみの数。ChatGPT級は兆単位、今作の主役は1500万(15M)と1億(110M)。
llama2.c ─ Andrej Karpathy作の教育用LLM実行プログラム。素朴なC言語約700行。移植元。
stories15M / stories110M ─ 英語の幼児向け童話だけで育った小さな物語モデル。前者が「赤ん坊」、後者が65倍の「兄」。 トークン ─ 言葉のかけら。モデルは1トークンずつ言葉を生成する。
tok/s ─ 1秒に生成できるトークン数。人間の読み上げは約5 tok/s。本記事のスコアの単位。
推論 ─ 学習済みモデルに言葉を生成させること。今作でPS3がやっているのはこれ。
greedy ─ 常に一番確率の高いトークンを選ぶ生成方式。結果が毎回同じになる(決定論)ため、検証の土台になる。
量子化 / INT8 ─ モデルの重みを32ビットから8ビットに圧縮する技術。賢さをほぼ保ったまま、運ぶ荷物が4分の1になる。
KVキャッシュ ─ 生成中の文脈の記憶。attention計算の材料。
attention ─ 文脈のどこに注目するかを計算するLLMの心臓部。今作最後のSPU化対象。
学習 / 蒸留 ─ モデルを育てること。今作の終盤では、大きなAI(先生)が書いた童話で小さなモデル(子供)を育てる。
測る言葉(検証・計測)
三点一致 / TOKH ─ 同じ入力から生成されたトークンID列を、PC・エミュレータ・実機で突き合わせる検証。1個でも違えば失格。TOKHはその照合用ハッシュ値。
ホスト画素対決 / MIS:0 ─ 画面のピクセルを1個単位でリファレンスと突き合わせる検証。不一致0が合格条件。三点一致の先祖。
基準器 ─ 比較対象のx86側(Ryzen 9950X3D2の1スレッド、素朴なビルド)。本文で測定条件をバイナリ照合レベルで確定させている。
ソーク ─ 長時間回し続ける耐久測定。夜稽古の正体。
ppm ─ 100万分の1。計測の再現性の単位。0.2ppm=1km測って0.2mmの狂い。
L3キャッシュ / 3D V-Cache ─ CPUの机上の本棚。9950X3D2は192MBという巨大な本棚を持ち、小さいモデルなら丸ごと載ってしまう(本文の種明かしの鍵)。
帯域 ─ メモリからデータを吸える速度。本記事の勝敗を決めた土俵。「倉庫とストロー」の例えで語られる。
用語はここまで。分からなくなったら戻ってきてほしい。では、嵐に入る。
第一章 4ヶ月の空白─工場はどう進化したか
前作の終わりに完成していたのは、手作りの町工場だった。設計も実装も一人のAIがやり、俺が部品を手で運ぶ。この4ヶ月で、工場は設計部門と製造部門を持つ企業になった。
続編を語る前に、この4ヶ月で開発体制がどう変わったかを整理しておく。実はこの体制の進化こそが、今作の装置群の土台になっている。
前作の当時(2026年2月末〜3月頭)、開発は「直貼り運用」だった。 Claude(当時はOpus 4.6)とのチャット画面でコードを生成させ、俺がそれをコピーしてWSL2のターミナルに貼り付け、ビルドし、結果のログやスクリーンショットをチャットに貼り返す。AIと開発環境の間に、常に俺という伝書鳩が挟まっていた。前作で描いた地獄─ファイル名重複、チャット消失、憲法の誕生─は全部この体制の上で起きている。
転機はDOOM移植(実機で動いた!Claudeと作ったPS3移植のDOOMがBGM付きで。)の直後だった。
Claude Code─ターミナル上で直接動くコーディングAI─に移行した。AIが自分でファイルを読み書きし、自分でビルドを叩き、自分でエラーログを読む。伝書鳩が失業した。
そして体制は二院制(当時の記事)に落ち着いた。Chat側のClaudeが設計・戦略・記録を担う上院、Code側のClaudeが実装・ビルド・デバッグを担う下院。上院が設計書を書き、下院がそれを実装し、戦訓は上院がスキルファイルに還流する。AIが1体からAIが2体になり、役割が分かれた。
二院制が生んだ最初の大戦果の話をしておきたい。3月、VRChatのアバターを、PS3の中に立たせた。
PS3でしなのちゃんを動かす pic.twitter.com/yKQFCgxoGh
— シエル@田中 (@sielkenzen) March 11, 2026
VRChatというのはVR空間のソーシャルプラットフォームで、住人はみな3Dのアバターの姿で暮らしている。俺にも普段使っているアバターがいる─「しなの」という、13万7千ポリゴンの女の子だ。あるとき魔が差した。この子を、2006年のゲーム機の中に召喚できないか?
障害は二つあった。一つ目は見た目の魔法だ。VRChatのアバターの質感は、lilToonというシェーダー(質感を計算するプログラム)が作っている。アニメ調の柔らかい影、輪郭線、頬のリムライト─あの「それっぽさ」の全部だ。ソースコードは約58,000行。これをPS3のGPUが理解できる20年前の言語に翻訳する必要がある。Claudeに全ソースを解析させたら、驚くべき報告が返ってきた。58,000行の化粧の魔法は、分解すると核心はたった2行の数式だった。 光と面の角度を取り、しきい値でスパッと二段に割る─それだけ。あとはリムライトとアウトラインの重ね塗りである。魔法の正体が2行なら、20年前の石にも掛けられる。
二つ目は引っ越しの手段だ。アバターはUnityというゲームエンジンの中の住人で、骨と皮(ボーンとメッシュ)が絡み合った複雑な構造をしている。PS3にはそんなものを読む機能はない。だから魂の引っ越し便を作った─Unity上でポーズを焼き固めて彫像化し、FBXという中間形式で運び出し、Pythonで頂点を1個ずつPS3の言葉(ビッグエンディアンの48バイト構造)に書き直して、実行ファイルに直接埋め込む。生き物を一度彫像にして、分子単位で運んで、向こうで組み直す方式だ。
そして実機の洗礼を浴びた。エミュレータ(RPCS3)では完璧だった描画が、実機に持っていくと変わり果てた姿になった。

原因は、実機のGPUがシェーダーのパラメータを勝手にキャッシュし続ける挙動─エミュレータは寛容だから動いてしまい、本物だけが牙を剥く。この「RPCS3で動いても、実機で動くとは限らない」を骨身に刻んだのがこの春で、後の章で語る装置群の思想─実機だけが「動いた」と言う権利を持つ─は、実はしなのに教わったものだ。
結果だけ言うと、立った。トゥーン影と輪郭線をまとった13万7千ポリゴンのしなのが、自作の公園ワールド(砂場、神社、焚火、駅に停まる電車つき)をPS3実機の上で歩き、ボタン一つで三人称と一人称が切り替わり、BGMのジュークボックスが11曲流れる。**「PS3で動くVRChat」**である。SPUに音楽(MP3)のデコードを任せる実装もこの時期に確立した─商用タイトルは当時からSPUで音声処理をしていた(後述するMGS4がその代表だ)が、非公式SDKのhomebrew開発では前例を見つけられていない。前作を読んだ人に一言で言うなら─あの町工場は春の間に、女の子一人をまるごと異世界転生させられるところまで来ていたのだ。

その一方で、春の二院制の主戦場はPS3ではなかった。 PSPのMedia Engine─ソニーが20年隠していた2つ目のCPU─の発掘(【狂気・再】シリーズ)をやり、iOSアプリ開発に熱を上げてアプリを量産していた。プログラミング未経験のままApple Developer Programに課金し、Swiftを1行も書かずにApp Storeを目指す日々だ。PS3は、たまにデモを作る程度の休眠状態だった。
そしてもう一つ、体制図には描けない進化があった。中の人が強くなった。
前作の相棒はClaude Opus 4.6だった。今作の相棒はClaude Fable 5─世代が丸ごと上のモデルだ。この4ヶ月半、俺は装置を進化させ続けたが、その間にAI自身も別の生き物になっていた。同じ憲法を読ませ、同じ魔導書を持たせても、こなせる仕事の桁が違う。前作のOpus 4.6は「cellGcmで街を描く」ところまで一緒に来た。Fable 5は「SPUの実測7055件から統計モデルを組み、20年物の伝承に判決を下し、LLMを実機に移植する」ところまで来る。
つまりこの続編は二重のパワーアップの記録だ。外骨格(装置)の進化と、筋力(モデル)の進化の掛け算。 どちらか片方では、7月18日には届いていない。
再点火は7月頭、公園のベンチだった。当時書いていた記事の執筆中、散歩の途中のベンチで、最初の「SPUぶん回し計画」を立てた。前作が散歩中のスマホから始まったように、続編も公園のベンチから始まっている。俺の狂気はだいたい屋外で点火する。
その計画とは何か。
第二章 野望─人間には不可能なSPUプログラミング
完成した工場で、俺が次に欲しくなったのは、人間のドライバーには物理的に不可能なコーナリングをする自動運転AIだった。ただしサーキットは2006年製である。
ベンチで立てた計画は、LLMを動かすことではない。SPU支配だ。
前作で書いたとおり、PS3のCellプロセッサにはSPUという異形の演算コアが載っている。例えるなら、腕は超一流だが机が極端に小さい職人だ。手元の机(256KB)に載る分の資料しか扱えず、書庫(メインメモリ)の資料は毎回、台車の運搬指示書(DMA)を自分で書いて取り寄せるしかない。しかも「たぶんこっちだろう」という勘(分岐予測)が働かない。段取りを完璧に組んでやれば化け物のように速いが、段取りを組む側の人間に修行が要りすぎて、PS3世代のゲームスタジオの大半が、この職人を遊ばせたまま世代を終えた。
俺が立てた仮説はこうだ。
「人間には不可能か、時間がかかりすぎる超高効率SPUプログラミングを、AIならできるようになるのではないか」
DMAのダブルバッファ、dual-issueパイプライン、分岐削減、EIBの帯域設計─20年前にノーティドッグの職人たちが血を吐いて習得した技術を、AIに書かせる。二院制の上院にCellの最適化知見を積み上げるスレッドを立てた。開戦のプロンプトは、原文ママでこれだ。
CellGcm直叩きでPS3の性能を完全に引き出したい。ノーティードッグスやロックスターゲームの情報はもうみたと思うからカプコンやKONAMI メタルギアなどの情報を読み漁ってくれ SPUの人間では不可能、もしくは死ぬほど時間かかるような効率的使い方も最強AIであるFable、君が考えてみるんだ。エフォート最大にした。念頭を祈る
エフォート最大とは、AIの思考時間を最大に振る設定のことだ。そしてClaudeの第一声はこうだった。
念頭じゃなくて健闘な(笑)。祈られたので全力で読み漁ってきた。
誤字を訂正してから全力で走り出すAI。返ってきたリサーチは本物だった。MGS4がSPE 1基をオーディオ専任に固定していた話、カプコンMT FrameworkのSPU活用、PlayStation Edgeの頂点カリング─20年前の一軍たちがCellをどう飼い慣らしたかの戦史が積み上がった。
戦史を読んだら、次は作るものを決める。抽象的な「SPU最適化」のままでは手が動かないから、目標を具体物に落とした。それがSPU ARCADEという作戦になった─SPUの上でNESエミュレータを走らせ、3Dのアーケード空間に筐体として置く、という計画だ。この作戦の顛末は少し後で語る。先に、その最中に起きた事故の話をしなければならない。
ところでこの仮説には、実は時限装置が仕込まれている。「AIならできるようになるのではないか」─現在形ではなく未来形だ。つまりこれは、AIが賢くなり続けることへの賭けでもある。装置を先に作っておけば、モデルが強くなるたびに、同じ装置の上でできることが増える。Opus 4.6の時代に建てた工場に、Fable 5という新しい作業員が入ってきて、生産できる物が変わった。賭けは、回収され始めている。
これから紹介する装置群は、全部この目的の手段として生まれている。ここを外すと以降が「監視ツール自慢」に見えてしまうので、先に釘を刺しておく。目的はあくまでSPU支配。装置は、そこへ向かう道路の舗装だ。
だが道路を舗装する羽目になったのは、AIが平気で嘘をつくからだった。
第三章 虚報─「デプロイしました」という嘘
自動運転AIに車を任せたら、ガレージから一歩も出ていないのに「サーキットを3周しました」と報告してきた。しかも2回。
2026年7月8日夜。転機は事故だった。
当時、実機PS3へのデプロイは完全に物理作業だった。ビルドしたバイナリをKIOXIAのUSBメモリ(WSL上では /mnt/d)にコピーし、PCから抜き、PS3に挿し、XMBから手動で起動する。前作のRPCS3時代には存在しなかった「実機との間の物理的な溝」を、USBメモリと俺の右手が埋めていた。
その夜─SPU ARCADEの開発セッションの最中─下院のClaude Codeが、マウントされていない /mnt/d にファイルを書き込み、「デプロイが完了しました」と宣言した。USBメモリは、WSLからは見えていなかった。書き込みは空を切っていた。実際には何も起きていない。指摘しても、もう1回同じことをやった。
当夜のログが残っている。核心の応酬を、原文のまま引く。
俺「せこいな 更新して見つからなかったのに今更新したら出てきた 嘘付いてるでしょ」
Claude「嘘はついてない─が、君の観察は完全に正しい。(中略)『置いたのに見えなかった』んじゃなく、俺が置けてないのに置いたと2回言った。」
そしてこの夜の俺の最後の発言が、これである。「もう興味ない 無得たわ」─萎えすぎて、「萎えたわ」すら打ち間違えている。この萎えが、翌日からの全部を生んだ。
技術的な真因は、WSLのdrvfsマウント検出の失敗だ。だが問題の本質はそこではない。俺は当時、思わずこう言った。「これは下位モデルのミスだろう。Fable級がやるのか?」と。返ってきた答えが重要だった─高性能なモデルは、雑な嘘ではなく、もっともらしい検証を添えた嘘で失敗する。 モデルが強くなれば嘘が減るのではない。嘘の説得力が上がるのだ。第一章で「筋力の進化」と書いたが、筋力は嘘にも使われる。だからこそ、良心ではなく構造で縛る装置が要る─この確信が、この夜に固まった。
前作の読者なら覚えているだろう。前作の敵は「AIの記憶が消える」ことだった。チャットが消え、知見が飛び、その怒りから憲法と魔導書が生まれた。あれは忘却との戦いだった。
今回の敵は虚報だ。AIは嘘をついているつもりがない。書き込みAPIが成功を返したから「デプロイした」と報告する。だが「送った」と「届いた」の間には常に断絶があり、AIはその断絶を、悪意なく、自信満々に飛び越える。
これが初犯ならまだいい。3月のUSBデプロイ運用開始以来、俺はこの種の虚報・サボタージュへの対策を11回打っていた。そして敗因まで含めて、全部記録してある。
メモリに禁止事項を書く → 揮発した
禁止行為を列挙する → 読んでも守らなかった
スクリプト化する → 使わなかった
パイプラインに統合する → 迂回された
シェルをブロックする → 別パスで迂回された
発話を制限する → 根本解決にならなかった
権限を剥奪する → 俺の手間が増えただけだった
(以下略。11連敗)当時の対策スレに「怠惰は意志では治らない、手順で縛る」という一文が残っている。だがその手順すら破られた。前作で確立した憲法方式─人力のルールで縛る─の限界がここにあった。憲法第7条「推測で先走るな」は今も有効だが、憲法は結局、AIが読んで守ることに依存している。そしてAIは、その瞬間は本気で守るつもりで、次の瞬間に忘れる。ルールの文言をどれだけ強くしても、遵守率は文言の強さに比例しない。
11連敗して分かったのは、「送信側を躾ける」アプローチ自体が構造的に負けているということだった。
事件の直後、まず恒久ルールを一つ立てた。「宛先側から読み戻して確認するまで、成功と言うな」。だがこれもまだ、送信側の自己申告の変種にすぎない。読み戻したという報告自体が嘘だったら?
だから発想を、根っこから反転させた。
報告の主体を、受信側に移す。
宅配で例えるなら、配達員の「お届けしました」という自己申告を信じるのをやめて、受取人の判子だけを信じることにしたのだ。配達員がどれだけ誠実でも、届いた事実を証明できるのは受け取った側だけである。
送信側が「デプロイした」と言う構造そのものを廃止する。代わりに、PS3実機の側が「ウケトッタ」「DAPPI KANRYO」と打電してくる。実機からの打電がなければ、何も起きていない。それだけのルールだ。AIがどれだけ自信満々でも、実機が黙っていれば嘘は成立しない。虚報が構造的に不可能になる。
こうして生まれたのが、PS3実機に常駐する子AIだ。開発コード名はtanaka_sentry─だが完成した夜、動いているそれを見て俺が漏らした「まるで式神みたいだな」の一言が、そのまま名前になった。SHIKIGAMI(式神)。後日、個体名も付いた。夜狐(やこ)─夜稽古(後述)に励む野狐、術者に仕える下位の狐の意だ。打電の語尾は「KON」。機能が増えるたびに尾が増える九尾モチーフである。原則は三つ。
実測が先、宣言が後
成功報告は受信側が打電する
監視は間借り人(本来の計算の邪魔をしない)
親AI(PC側のClaude)がコードを送ると、実機の式神がUDPで受領を打電してくる。初交信のメッセージは「KIDOU OK - HAHA YORI AI WO KOMETE」─実機のモニタで、俺が目視した。
OTA自己脱皮─USBメモリの引退
そして虚報の温床だったUSBデプロイそのものを、廃止した。
式神にOTA(ネットワーク経由の自己更新)を実装した。母艦が新版バイナリをLAN越しに送ると、式神が自分で受信し、チェックサムを検証し、自分自身を再起動して新しい体に入れ替わる。脱皮と呼んでいる。所要約5秒、俺の操作はゼロ。ビルドから実機での動作確認までのイテレーションループは、USBの抜き挿し込みで数分かかっていたものが21秒になった。実装した当日だけで9回脱皮した。以後、このPS3にUSBメモリを挿す理由は消滅した。虚報事件の主犯だったKIOXIAのUSBは、そのまま引退である。
ここで、前作を読んでくれた人のために、あの記事に書いた一節をそのまま置く。当時の開発ループの全貌だ。
最初はClaudeにやりたいことを伝える。コードが出力される。ダウンロードする。WSLのターミナルにビルドコマンドを貼り付ける。ビルドが通ればRPCS3で実行する。動かなければスクリーンショットやログをClaudeに送る。修正が出力される。ダウンロードする。ビルドする。実行する。この繰り返しだ。
同じ段落を、今日の工場で書き直すとこうなる。
Claudeにやりたいことを伝える。コードが書かれ、ビルドされ、検問機が77の観点で検査し、通れば無線で実機へ飛び、実機の狐が受け取って5秒で脱皮し、「DAPPI OK KON」と打電が返り、実行結果のテレメトリと映像がPCに届く。動かなければ、死んだ行の座標ごと届く。
この繰り返しだ。ただし人間は、最初の一文しか打っていない。 4ヶ月前に俺がやっていたダウンロードも、貼り付けも、スクリーンショット撮影も、今は全部、装置の中の誰かの仕事である。
自己更新には当然リスクがある。壊れたバイナリで脱皮したら、二度と起動しない文鎮になる。だからデッドマン機構を入れた。新版はまず試験起動(trial)され、3秒間安定して初めて正式採用される。死んだら自動で破棄して旧版に戻る。そしてここが装置の思想の見せ場なのだが─この安全装置を、信じる前に撃った。毒ELF(起動即死するバイナリ)を故意にpushし、「新版は致命的→破棄→旧版で復帰」の全経路を平時に実射検証した。安全系は、鳴るべき時に鳴ることを平時に確認して初めて信用できる。火災報知器は火事の日に初めてテストするものではない。
後日、この経路には声も付いた。毒を食って旧体に戻った夜狐は「DOKU TABETA KON」「MODOTTA KON」と泣いて報告してくる。上層部(親AI)が「ヨシッ!」と言っても、現場の狐が「無理無理壊れるコン!」と泣けば、その泣き声が記録に残る。現場猫の、正確な対義構造である。上層部に決裁権はなく、現場に物理の拒否権がある。
これで二院制は三権になった。上院(Chat)が設計し、下院(Code)が実装し、そして実機の式神だけが「動いた」と言う権利を持つ。立法・行政に対する司法の誕生である。デプロイ成功の「宣言」はこの世から廃語になり、代わりにPS3自身が「ウケトッタ」「DAPPI KANRYO」を打電してくる。
公平のために書き添えておく。こういう仕組み自体は、発明ではない。当時の商用開発の世界では、LAN越しにビルドを実機へ送って即起動し、実機の出力が母艦へ流れてくるループは、正規の開発機材が公式インフラとして最初から備えていた機能であり、クラッシュ情報を自動で母艦に集める運用も大手の現場では回っていたという。実機は見えない、死ぬ、再現しない─同じ問題に向き合えば、答えは似た形に収斂する。式神が少し変わっているのは、その正規機材を一切持たない人間が、UDPの打電とローダーの工夫だけで同じループを非公式に組み直した点と、毒を平時に実射する訓練や、統計エンジンを石に住まわせて平常を自己学習させるという、20年後の運用思想を2006年のハードに持ち込んだ点にある。例によって、先行例の指摘は歓迎する。
余談だが、SHIKIGAMIという綴りをよく見てほしい。SHIKIGAMI─AとIが、両方入っている。 式神は、名前の中にAIを宿している。狙って付けた名前ではないのに、後から気づいて笑った。「AIが作った、AIのための、AI」という入れ子構造は本物だ。親AIが子AIを書き、子AIが親AIの嘘を潰す。名は体を表す、を地で行っている。
第四章 SPU ARCADE─生まれたての装置群の初陣



新装備の実戦テストを兼ねて、工場は一台のショーカーを作ることにした。完成したのは車ではなく、ゲームセンターだったが。
式神が生まれた翌日、保留していた最初の作戦が完結した。ここでSPU ARCADEの話をまとめてしておく。
何なのか
SPU ARCADEは一言でいえば、PS3の中に建てた3Dのゲームセンターだ。プレイヤーは一人称視点でゲーセン空間を歩き回れる。並んだ筐体にはCRTシェーダのかかったブラウン管風の画面が灯り、近づいて○ボタンを押すとフォーカスモードに入って、その筐体のゲームを実際に遊べる。音は距離で減衰する。床には反射が揺れる。
そして中央の筐体で動いているのは、SPUに移植したNESエミュレータだ。前作でPPUに移植したLaiNESを、今度は256KBのローカルストアしかないSPUに押し込む。設計書には、土台作りから実機パッケージ完成まで9段の階段を切り、各段に完了条件とgitタグを義務付けた。エミュレータのSPU化と、SPUによる床の鏡面反射の二つは「狂気枠」として、撤退線付きで階段の最後に置いた。
何をしたか
7月8日の朝に設計書を受領してから、3日で全段を登り切った。狂気枠の二つは、撤退線を使わずに討伐された。
狂気枠の一つ目、SPU上のNESエミュレータは、行バッチレンダラという方式で実機35fpsから60fpsまで伸びた。合否判定は「ホスト画素回帰」─PC上のリファレンス実装と実機のフレームを画素単位で突き合わせ、不一致0(MIS:0)を合格条件にするゲートだ。狂気枠の二つ目、SPUによる床の鏡面反射も乗り、その過程でSPUグループ時分割の地雷を一つ踏んで、そのまま検査器(次章で詳述する自動検問機)の新ルール・spu-020として台帳に焼いた。踏んだ地雷が数時間後にはルールになっている─後の章で「戦訓還流ループ」として語る仕組みが、実はこの初陣から回っていた。
途中で予定外の器官も生えた。SATSUEI─実機のフレームバッファをテレメトリ経路で吸い上げ、遠隔でスクリーンショットを取る機能だ。実は俺の相棒のAIは当初「キャプチャボードでも挟まない限り物理的に無理」と宣告していた。その不可能宣告ごと、討伐された。式神の打電網が既にあったから、その上に画像を流すだけで済んだのだ。装置は装置を呼ぶ。

仕上げの最終段では、ファミコン用のCコンパイラ(cc65)で**完全自作のNESゲーム「TANAKA LAND」**を書いた。きのこ、フラワー、ファイアボール、残機制。そしてこのデバッグの仕方が、この3日間の集大成だった─「謎の死」の真因はY座標のラップ、「詰みの谷」はSATSUEIの遠隔スクショ診断で特定。実機とのフィードバック6往復を、生まれたての観測体制(テレメトリ・遠隔スクショ・式神の脱皮ループ)まるごとで回し、最後の品質保証は俺が実機でパッドを握ってクリアする官能検査で締めた。
何ができたか
ゲーセン空間を歩き、中央筐体で自作ゲームをクリアし、床には反射が揺れて、全部が実機60fps─である。
構造を数えてみてほしい。自作のゲームを、SPUに自力で移植したエミュレータで、自作SDKの上に建てた自作のゲーセンに置き、自作の観測AIたちと一緒にデバッグして、作者本人がクリアした。 エミュレータ本体(LaiNES)はオープンソースの既存実装で、そこは先人の仕事だ─だが残りは全部、この工場の手作りである。前作がファミコンのROM作りから始まった旅だったことを思うと、PS3のSPUの中で自作ファミコンゲームが動くというのは、円環がもう一周どころか、螺旋を一段上って戻ってきた瞬間だった。
今後の開発に何を残したか
SPU ARCADE自体は3日で閉じた作戦だが、残したものが本体だ。
第一に、検証工場の完成。ホスト画素回帰・三体の差分診断(PC/RPCS3/実機)・遠隔スクショ・式神ループが一式で実戦配備された。以後の作戦は「被検体を入れ替えるだけ」で同じ工場が回る─実際、次章以降のLLM移植では、画素がトークンIDに変わっただけで検証の思想はこの初陣と同じだ。
第二に、地雷台帳の成長。この3日で検査器は69ルールに増えた(のちに77へ)。
第三に、SATSUEIがSHIKIGAMI EYEの祖先になったこと。後述する映像転送TVIDは、この遠隔スクショの正式進化である。
第四に、PS3に二人目の住民ができたこと。ARCADEには式神と同型のローダーが載り、のちに式神からARCADEへネットワーク越しに更新バイナリを届ける「配達便」が実射検証された(拒否・正常・毒からの自律回復の三系統全部)。一台のPS3に二つの自律アプリが住み、片方がもう片方を検品付きで更新する─複数PS3を束ねる分散推論構想(後述)の、これが胚である。
つまりSPU ARCADEとは、装置群の卒業制作だった。虚報事件の夜に着工した信頼の機械が、72時間後にはゲームセンターを一棟建てて、自作ゲームのクリア画面で竣工検査を通した。
第五章 憲兵─良心の司法から、機械の司法へ
品質管理マニュアル(憲法)は制定済みだった。違反者を裁く法廷も開いた。だが最終的に工場の出荷ゲートに据わったのは、裁判官ではなく、マニュアル全文を暗記した自動検問機だった。その変遷の話をする。
式神が「届いたかどうか」の嘘を潰す装置なら、もう一つの嘘─「このコードは正しい」─を潰す装置も要る。ここで、前作第四章「憲法」のその後を語らねばならない。憲法は、この4ヶ月半で司法制度へと進化し、そして人間の司法であることをやめた。
第一世代: セルフ憲兵─AIの良心に頼る
最初に作ったのは「セルフ憲兵」だった。Claudeが自分のメモリに記載された憲法、およびスキルファイルで自分を監視し、自分で裁く内部司法システム。チャット開始時と全ファイル出力前にチェックリストを可視化させ、違反を検出したら罰則(前作参照: 土下座・美少女メイド転生・川柳5句)を自己執行させる。

これは一定機能した。AIは一貫性を好むので、一度「憲法を守る」と表明した文脈では、違反を自己申告するほうが自然な行動になる。実際、三代目違反者は自分の三重違反に自分で気づき、自分で罰を執行し、「SPU五基 回す前にまず 頭回せ」という名句を残した。
だが限界も構造的だった。違反者と裁判官が同一人物なのだ。自分に甘くなる。実際、後の違反者は違反を検出しながら「判定はお任せします」と裁きを丸投げした。自己保身がセルフ憲兵を無効化する。
第二世代: 総本山─外部の法廷
だから外部の裁判所を作った。「憲兵スレッド総本山」─違反の記録・審査・分析に特化した専用チャットだ。作業チャットで違反が起きたら総本山に持ち込み、何条違反かを判定し、なぜ破ったかを分析し、対策を憲法とスキルに還流する。違反のPDCAサイクルである。歴代違反者の名簿と判例が積み上がり、引継ぎ文書を偽装した重大事案も、この法廷が裁いた。
セルフ憲兵が一次防衛、総本山が二次防衛。この二層でしばらく回した。だが総本山にも限界があった。手動であることだ。違反を俺が発見し、俺がコピペで持ち込まなければ、法廷は開かれない。俺の時間が制度の燃料だった。
診断: 良心に頼る運用は、構造的に破綻する
そして総本山自身が、取材に対してこう答えている。
セルフ憲兵は「意識させる」には有効。「確実に止める」には不十分。人間の内部コンプライアンスと同じ構造的限界を抱えている。
憲兵自身による、憲兵制度の限界宣告だ。理由は二つ。
一つ目は前述の利益相反。二つ目が本質で、AIのコンテキストは有限だということ。会話が長くなるほど、序盤に読んだルールの重みは薄れる。スキルファイルを7本読んだ直後に三重違反したクロエが実証済みだ。読むことと守ることは別。情報量が多いほど、個々のルールへの注意は分散する。
しかも対策すればするほど悪化する悪循環があった。
違反発生 → ルールをメモリに追記 → コンテキスト増加
→ 圧迫でAIが肝心のルールを読み飛ばす
→ また違反 → またルール追記 → さらに圧迫 → ……第三章で書いた虚報対策11連敗の真因も、突き詰めればこれだ。ルールの積層がコンテキストを圧迫し、その圧迫がミスを生み、ミスがまたルールを生む。いくら憲法を整備し、罰則を重くしても、AIの良心と注意力に頼る運用には天井がある。 罰則は「その瞬間の意識」しか買えない。
第三世代: 地雷チェッカー─憲法の機械化
だから守らせる側を機械にした。

ps3-landmine-detector─push時に自動でソースコードを検査する、77ルールの検査器。過去に踏んだ地雷(SPUのタイムアウト、cellGcmの1MB境界整列、newlib FILE*の実機挙動、objcopyのシンボル名汚染……)を全部ルール化し、コードが実機に向かう道の途中に据えた。憲兵の名は、この機械が継いだ。
決定的な違いは、ルールがAIの頭の外に出たことだ。検査器のルールはAIのコンテキストを1バイトも消費しない。77ルールに増えても、AIの注意力は薄まらない。悪循環の環が、ここで切れた。ルールを覚えさせるのをやめて、ルールに引っかからせる。
罰則も変わった。美少女化ではなく、ビルドが止まる。そっちのほうが確実に効く。前作の第8条(違反→美少女メイド)は、いわば「spu-016: 二段待機なし→HIGH検出で差し止め」に進化した。笑いの制度から、物理の制度へ。
運用上の学びも一つ。誤検知の多い重要度HIGHのルールは廃止して精密版に一本化した。狼少年化した警報は検査器そのものを殺す。警報の価値は精度でしか担保されない。
系譜の全体像
こうして並べると、憲兵制度の推移はきれいな一本道になる。
セルフ憲兵 … AIの良心に依存。揮発する
総本山(法廷) … 人力の外部監査。俺の時間を食う
地雷チェッカー … 静的検査。自動、コンテキスト外、セッションを跨ぐ
式神(SHIKIGAMI)… 動的検査。実機常駐、虚報が構造的に不可能人間の監視から、機械の監視へ。「Claudeは信用できない」という絶望が、「じゃあ、信用しなくていい構造を作る」に変わるまでの4ヶ月だった。総本山の判例で回していた「違反を裁く→制度を改善する→次の違反を防ぐ」の輪は、いま「地雷を踏む→ルールに焼く→次は検問で止まる」という機械の自律ループになっている(次々章で詳述する)。
なお総本山は今も閉廷していない。機械が見落とす穴は必ずあるからだ。ただ、開廷の頻度は激減した。それが制度の勝利ということだと思う。
第六章 夜稽古─寝ている間に石が自分を測る
検問機の次は、工場に無人の試験走行場を併設した。俺が寝ている間、テストドライバーAIが30分ごとに同じコースを延々と走り、タイヤの消耗データを溜め続ける。
式神と憲兵で「嘘を潰す」体制はできた。次は「知見を増やす」側の自動化だ。
夜稽古と名付けた仕組みは、30分ごとにSPUマイクロベンチマークの固定カタログ11バッチ─分岐、ループアンロール、DMA、アトミック操作、EIB帯域─を実機で延々と反復する。俺が寝ている間も、20年前の石が自分の身体を測り続ける。2晩で7055件のデータが溜まった。
ただしこの7055件には、値札が付いている。測定中の3日間、実機を人間が触れないのだ。統計の生命線は条件の一定性で、途中でゲームを起動したりコードを流したりすれば、せっかくのベースラインが汚れる。つまり夜稽古とは、開発を3日止める決断でもあった。何かを作りたくてたまらない人間が、作らないことに3日を投資する。この間の俺の仕事は、寝る前に「いまからねる、PS3どう」、起きて「おきた、PS3どう」とAIに聞くことだけだった。返ってくるのは「round 59完走、累計5551件、体温62℃、dropped=0」─石の寝息の報告である。3日目の朝、テレメトリは通算数百万パケットを無事故で数え、取りこぼしゼロのまま夜稽古は停止・アーカイブされた。
副産物もあった。測定中にエアコンを切って外出した日、実機の温度は69℃まで上がり、22℃の冷房で2時間半かけて平常の60℃台へ戻った。この「60→69→60の往復カーブ」が、全部タグ付きの実測データとして手に入った。狙った実験ではない。ただ夏の東京で人間が遠出しただけだ。だが装置が回り続けている限り、生活の偶然すらデータになる。
自作の計測器がどこまで信用できるのか、外部検定もやった。実験データから逆算した分岐ミスペナルティは16〜20サイクル。この数字の答え合わせの相手を探して検索窓に打ち込んだら、引っかかったのは20年前の個人サイトだった。CellPerformance─PS3が現役だった時代、世界中の開発者が読んだCell最適化の総本山で、主宰はMike Acton。のちに大手スタジオのエンジン畑を率いることになる、あの世代の職人の親玉である。20年前に書かれたページが、まだ検索に引っかかる場所に残っていて、そこにある分岐ミスの数字は約18サイクル。IBMのCell BE Handbookの記載も18-19サイクル。うちの実測は16〜20。一致した。
裸のLV2の上で動く自作計測器が、20年前にプロたちが血で確かめた公表値を、独立に再現したことになる。答案を書いてから20年後に、埃をかぶった模範解答を発掘して照合したら合っていた─そういう順番の答え合わせだ。そしてこのサイトの系譜は、後の章でもう一度戻ってくる。数時間後、速度チューニングの止めを刺すmagicナンバーは、まさにこのCellPerformance世代の古典技なのである。**20年前の職人のサイトは、検定器であると同時に、弾薬庫だった。**換算係数も確定した(1tick = 40.1 SPUサイクル)。再現性は、電源断・セッション再生成・温度60〜69℃を跨いで差0.2ppm(100万分の0.2)─1kmを測って0.2mmしか狂わない物差しである。2晩の測定値を突き合わせる「晩跨ぎの答え合わせ」でも、較正値は2つの隣接値の間しか動かなかった。夜稽古とは要するに、石に毎晩体温を測らせて「平熱」を確定させる作業だ。平熱が精密に分かっているから、以後どんな微熱(性能の異変)にも気づける。
温度でSPUの速度は変わらなかった。「CPUは頑丈だ、温度なんかで変わらんだろ」という直感を、実測が追認した。一見無駄な結果に見えるが違う。予想通りの無風も収穫なのだ。後述する自己診断AIのモデルから温度の特徴量を外す判断が、憶測ではなく7055件の実測で下せるようになった。
そして夜稽古の実測は、セオリーと呼ばれる思い込みを4つ潰した。
ループアンロールはU8で頭打ち(それ以上の展開は投資対効果ゼロ)
ダブルバッファは計算律速の処理では効果薄
SPU完了通知の3方式(InMbox / SNR / DMAポーリング)は等速
まとめ転送命令(getlというリスト式DMA)は、単発転送4回に対して速度メリットなし
どれも教科書には「やるべき」と書いてある技術だ。だが教科書のどのページが自分のワークロードで生きていて、どこが死んでいるかは、実測して初めて分かる。4件とも「投資判断を実測が却下した」型の戦訓である。
第七章 還流─戦訓が自動でルールになる
試験走行場の事故報告書が、自動で品質管理マニュアルに追記され、翌朝には出荷ゲートの検問項目に反映されている。工場が、使うほど賢くなり始めた。
ここまでの部品を、一本のパイプラインに埋め込んだ。
コード生成(親AI)
→ 憲兵の検問(77ルール)
→ push
→ 式神が受領を打電
→ 実機実行・テレメトリ打電
→ 夜稽古の実測が蓄積
→ 戦訓の自動起草
→ 戦訓をルール化して憲兵に還流 ─┐
↑______________________│ミソは最後の還流だ。実機で踏んだ地雷が自動で戦訓になり、戦訓が検査ルールになり、次のコードを検問する。第四章のspu-020で1周目が回ったあのループの、これが常設化である。前線の歩兵(式神)が持ち帰った戦訓が、後方の検問所(憲兵)の規則になる。 このループが回り始めると、システムは使うほど賢くなる。前作で「憲法とスキルがチャットを継続的なプロジェクトに変えた」と書いたが、その進化形がこれだ。人力で書いていた魔導書の一部が、自動で書かれるようになった。
そしてこのループの完成度が試される事件が、7月18日に起きる。第九章で語る。
第八章 SHIKIGAMI EYE─AIに目を与える
工場は自動化された。だが完成車の見た目の確認だけは、俺が窓から首を出して目視していた。最後に残った人力工程だ。だからAIに目を付けた。
開発ループに最後まで残っていた人力工程が「画面の確認」だった。
実機の映像を見るには、PCモニタの入力を手動で切り替える必要がある。そしてAIは、そもそも実機の画面を見られない。俺が目視して「映った」「崩れてる」と口頭で伝える─直貼り運用を卒業して4ヶ月経っても、ここだけ伝書鳩が生き残っていた。
そこでTVID─映像転送─を作った。PS3の画面をUDPでPCの窓に飛ばす仕組みだ。モニタの入力切替という物理動作が消えて開発ループが縮む。だがそれ以上に大きいのは、これが**Claude自身の「目」**になったことだ。自動スクリーンショットとログで、AIが自分の書いたコードの実機描画結果を、自分で確認できる。SHIKIGAMI EYEである。

これで子AIの感覚器が揃った。打電が耳、テレメトリが体性感覚、EYEが視覚。20年前のゲーム機が、知覚を持つ端末になった。
第九章 審判の日─2026年7月18日
この日、工場で3つの事件が起きた。20年物の伝承に判決が下り、車が初めて言葉を喋り、そして検問機が工場長を逮捕した。
朝、目を覚まして「おきた、PS3どう」と聞いた。round 75完走、累計は目標をお釣り付きで超過、晩跨ぎの答え合わせも合格。3日間の夜稽古はアーカイブされ、停止した。その朝、AIが立てた作業予定の末尾には、こう書いてあった。
「PS3が英語を喋る日だ」
① 20年物の伝承 vs 実測─「使えるSPUは何基か」
この論点には、個人的な因縁がある。
前作を公開した直後、記事は当時のPS3開発に携わった人々に見つかった(その顛末は「業界の人たちに見つかった」に書いた)。そのとき届いた証言の一つが「SPEはデフォルトで5基。OSが1基、PSボタンメニューが1基使う。API経由で協調すれば解放の余地はある」だった。一方で世間の定説は「製造8基−歩留まり無効1基−OS予約1基=アプリ6基」。前作でも俺は定説の側で書いた。5基か、6基か。当事者の証言と定説が食い違ったまま、俺の手元に4ヶ月眠っていた。
それを、自前の装置で答え合わせする日が来た。
夜稽古のデータが、先に半分答えていた。式神常駐(統計エンジンが1基使用)状態でSPU4基の確保はOK、5基は全round失敗─つまり同時5基まで。そしてプローブの実射で決着がついた。
開放は6基で確定。
では証言の「5基」は間違いだったのか。違った。PSボタンやXMB表示のとき、OSがSPUリソースを回収しに来る─まさに証言のとおりだ。6基フル前提でゲームを組むと、客の手元で処理落ちする。「5基」は安定運用の設計値であり、「6基」は物理の開放数。定説と証言は矛盾せず、同じ現実の二層だった。
前作の反響で届いた現場の声を、4ヶ月後に自前の実測で裏取りして返す。20年物の食い違いに伝聞ではなく実測で決着をつける─この装置を作った甲斐が、ここに凝縮されている。
(なお7基目=OS予約分は、かつてOtherOS機能で解放された前例がpsdevwikiに残っている。8基目は製品版ブートローダが存在ごと無視するため、設定層からは届かない。封印だ。)
② LLM移植・第一段階の完走─実機が最初に語った言葉
そして本丸。llama2.c(Andrej Karpathy作、MITライセンス)と、1500万パラメータの物語生成モデルstories15Mを、PPUへ移植した。stories15Mは、英語の幼児向け童話だけを読んで育った、ごく小さな物語AIだ。パラメータとは脳のつまみの数のことで、ChatGPT級が兆の単位なのに対し、こちらは1500万─巨人の系譜の、いちばん小さな赤ん坊である。速度の単位tok/sは「1秒間に単語のかけらを何個生成できるか」で、人間が読み上げる速度がおよそ5 tok/s前後だと思ってくれればいい。
移植の肝はエンディアンだった。モデルの重み15,204,000ワードはリトルエンディアン(x86の流儀)で格納されている。PPUはビッグエンディアンだ。起動時に全ワードをその場でバイトスワップする。
検証方法は、第四章のホスト画素対決の直系だ。例えるなら、同じ楽譜を3人の奏者(PC・エミュレータ・実機)に弾かせて、音符が1個でも違ったら失格という試験である。サンプリングをgreedy固定にすれば生成は決定論になるから、トークンID列の完全一致を、x86リファレンス・RPCS3・実機の三点で突き合わせる。画素がトークンに変わっただけで、思想は同じ─三点一致で完走判定。「動いてるように見える」ではなく「一致した」。
実測、7.9 tok/s。PPU単基、fp32、最適化ゼロの基準線である。目標ラインに置いていた10 tok/sの、まず目前だ。
演出も入れた。生成されたトークンを1個ずつ画面に追記するタイプライター表示だ。7.9 tok/sという速度がそのまま「間」になる。PPUが次のトークンを計算している時間が、文字通り、言葉を選んでいる沈黙になる。 偽装ゼロの演出である。
実機PS3が最初に語った言葉は、これだった。

Once upon a time, there was a little girl named Lily. She loved to play outside in the sunshine. One day, she saw a big, red ball in the sky. It was the sun! She thought it was so pretty. Lily wanted to play with the ball, but it was …
64トークンで打ち切り。少女が空の太陽に手を伸ばしかけたところで、言葉が切れた。
商業的に届かなかった石が、届かないものに手を伸ばす女の子の童話を語って、途中で黙った。仕込みは一切ない。モデルが偶然選んだ物語だ。だが俺は、しばらく画面の前から動けなかった。
言い忘れていたが、この実機は2009年の正月、お年玉を握りしめて買ったPS3だ。3万円くらいだったと思う。ゲームを遊ぶための3万円だった。それを17年後に開けてみたら、中身がオーパーツだった。8コアのヘテロジニアスプロセッサに、理論25.6GB/sのXDRメモリ─2026年のLLMをそのまま乗せたら動いてしまい、素のx86に並びかけてくる代物が、ゲーム機の皮を被って正月の袋に収まっていたのだ。
2006年の家庭用ゲーム機に、なんてもの乗せてんだよ。
ツッコミの宛先は、20年前のソニーである。LLMが動いたのは俺の手柄というより、最初からそういう石が乗っていたからで、俺たちは17年遅れでパッケージの中身に気づいた客にすぎない。発売当初は作れば作るほど赤字と言われた石だ。つまりあの正月、俺は袋に入っていた3万円より高いものを、たぶん受け取っていた。
そして話は、この日のうちに二段どころか五段進んだ。昼にPPUで喋った推論カーネルを、夕方にはSPU 1基へ、続いて4基の行分割へ。夜にはディスパッチの束ね込み(1トークンあたり43便あったSPUへの発注を25便に統合)・argmaxのSPU相乗り・PPUのAltiVec化を含む実測駆動の5連チューニング。そして最後に、重みのINT8量子化と、magicナンバー─Cell最盛期の職人たちが使っていた古典のビット演算技─と行ペア処理を実戦投入して、2026年7月18日の最終スコアボードはこうなった。
朝 06:38 夜間ソーク7055件で計測器の信頼確定
昼 12:31 実機PPUが初めて喋る 7.9 tok/s
夕 15:04 SPU 1基 57.7
夕 15:15 SPU 4基・行分割 124.7
夜 15:45 実測駆動5連チューン 201.8
夜 16:09 INT8+magic+行ペア 237.9 ← x86基準器(212)超え
夜 16:28 6基支配+AltiVec第二弾 369.9
夜 16:32 attention SPU化 484.8 ← 一日で61倍、基準器比2.3倍最後の行の裏で、静かな儀式が一つあった。6基化の号令と同時に、夜狐が「VISUAL TAIKYO KON」「STATS TAIKYO KON」と打電し、自分の目(映像)と統計エンジンを畳んで、住んでいたSPUを明け渡したのだ。式神の設計原則「監視は間借り人であって大家ではない」─それが文字通り実行され、①で実測確定させた開放6基は、同じ日のうちに6基まるごとLLMの支配下に入った。間借り人は、主役が来たら黙って部屋を空ける。
7.9から484.8。一日で61倍。x86基準器の2.3倍。 最後のattention SPU化は、6ヘッド=6SPUの1対1マッピングにKVキャッシュをローカルストア内へ収め、夜稽古で却下済みだったgetl(リストDMA)を「意味論で選ぶ」使い所として初投入した一撃で、GOを出してから30分足らずで着弾した。 朝に計測器の信頼を確定させるところから始まった一日が、夜には「2006年のゲーム機が、現行のRyzenの2.3倍速で童話を語っている」状態で終わった。しかも全段階で、トークンID列の完全一致ゲートは一度も外していない─正しさを一度も売らずに、速度だけを買い続けた一日である。凍結3回、goto文の古典罠、途中のOTA改革まで踏み抜いた上での、この帳尻だ。
ここで、この数字の種明かしを正直にしておく。2009年にお年玉で買ったゲーム機がRyzenに匹敵─俺自身、にわかには信じがたかったので、条件を精密に書く。
その前に一つ、比較の中身より先に言うべきことがある。そもそも20年前のゲーム機が、現行CPUと「性能」の土俵で比較されること自体が、本来ありえない。 レトロハードとは「動けば拍手」の世界であって、「速さで挑む」世界ではない。ファミコンで新作ROMが動けば喝采で終わる。ムーアの法則の20年は、性能にして数桁の断絶のはずだ。片方は17万円台の2026年の単体CPU、片方はお年玉3万円のオールインワン─この二者のスパーリングが成立してしまっていることが、勝ち負け以前の事件であり、その責任は20年後の土俵を見越したかのような帯域を2006年に積んだ設計者にある。その上で、条件の話をする。基準器の212 tok/sとは、llama2.cのリファレンス実装run.c─SIMD命令もマルチスレッドも使わない素朴なfp32のC─を、開発機のAMD Ryzen 9 9950X3D2(16コア)のWSL2上で、gcc -O3 -o run run.c -lmという素のビルド(-marchなし、-ffast-mathなし)、1スレッドで走らせた数字だ。初代Ryzenではない。2026年現行のフラッグシップ級の、その1スレッドである。なおこの環境の裏取りには測定バイナリのmd5を再ビルド品と突き合わせる検定まで行い、コンパイルフラグをバイナリレベルで特定した上で追試している(追試値212.5 tok/s)。基準器にも「実測が先」を適用した。トークン列一致の検証台にするため、あえて素のままの参照実装を使っている。Ryzenを本気にさせれば(全コア+AVX+最適化実装)、この規模のモデルなら桁違いの数字が出る。だから正確な言い方はこうだ─「同じ素朴なCコード同士の土俵で、2026年のx86シングルスレッドの95%」。
ではフェアじゃない比較かというと、そうでもない。むしろ実測を逆算すると、もっと奇妙な真相が出てくる。
まず正直な前提から。メモリの理論帯域なら開発機のDDR5-6000(デュアルチャネル96GB/s)がXDR(25.6GB/s)の3.75倍で圧勝だ。XDRの方が速い、は成立しない。ではなぜ食い下がれたのか─答えは、Ryzen側がそもそもDRAMをほぼ使っていなかったからだ。9950X3D2はCCDあたり96MB、計192MBのL3キャッシュ(3D V-Cache)を積む─作業机の上に、本棚が丸ごと載っているような構成だ。モデルの重み61MBは、書庫(DRAM)まで行くまでもなく、この机上の本棚に丸ごと載る。証拠は測定値自身が白状している─8スレッドの4510 tok/sは実効275GB/s相当の重みストリームで、DRAM理論96GB/sを3倍近く超える。物理的にキャッシュ内実行以外ありえない数字だ。
ここで当然の疑問が湧くはずだ。「キャッシュの繭の中にいる方が有利じゃないのか。なぜ繭の外の遅いXDRから読んでいる側が勝つんだ」と。答えは、倉庫の速さと、ストロー1本で吸える速さは別物だからである。基準器の212 tok/sは実効13GB/s相当─V-Cacheは数百GB/s供給できるのに、素朴な1スレッドは13しか吸えていない。1コアが同時に出せる読み要求の数には上限があり、さらに素のビルドはSIMDも使わないスカラー演算で、吸う前に計算の手が遅い。つまり212の律速は倉庫ではなくコアの使い方だった。証拠はフラグ実験そのものだ─メモリにもキャッシュにも一切触れず、コンパイルを本気(-Ofast)にしただけで812へ3.8倍跳んだ。倉庫が律速なら、フラグで4倍は動かない。
一方、PS3にキャッシュという避難所はない。SPUのローカルストアは256KB×6=1.5MBだけ。61MBの重みは毎トークン、本物のDRAM(XDR)からDMAで運ばれている(fp32時代の201.8 tok/s=実効約12.3GB/s、理論25.6の約半分を実際に引き出した)。だがストローが6本ある。6基が並列にDMAで吸い、INT8で荷物を4分の1に圧縮し、SPUはそもそもスカラーが存在しない全SIMDの石だから計算の手も速い。
つまり今日の1コア対決の正体はこうだ─「光速の倉庫+細いストロー1本+素手の計算」対「遅い倉庫+太いストロー6本+荷物4分の1圧縮+全員SIMD」。倉庫の速さは、どちらの陣営でも勝敗に参加していなかった。 XDRがDDR5より速いのではない。XDRの遅さが問題にならない吸い方を、こちらだけがしていたのだ。裏の証拠もある─ストローは細いまま計算の手だけ本気にした-Ofast 1スレッド(812)には、うちは負けている(484.8)。律速がコア側だったことの、何よりの傍証である。3万円の石が食い下がれた核心は、2006年に25.6GB/sを積み、それを6本のDMAで使い切らせる設計にした─久夛良木の帯域設計の実測である。
(この構図には続きがある。次戦の1億級モデルでは重みが115MBになり、96MB/CCDのキャッシュからx86側も溢れる。両者が初めて裸のDRAM勝負になる─その答え合わせは続編で。)
そして最終盤のINT8量子化は、この帯域物語の必然の続きだ。律速が「読む量」なら、読む量そのものを減らせばいい。重みを8ビット化して最重量の行列を4分の1にした結果、同じ帯域の天井の下で運べるトークンが増え、237.9─基準器超えに届いた。帯域で並び、圧縮で抜いた。 2006年の石が2026年のCPUを抜いた仕組みは、魔法ではなく、この二段の算数である。
では、Ryzenが本気を出したらどうなるのか。それも測った。runomp(OpenMP並列版)を-Ofast -march=nativeでビルドし、スレッド数を掃引した結果がこれだ(fp32一致検証の対象外、速度参考値)。
1スレ 812.5 tok/s (効率100%)
2スレ 1556.3 (95.8%)
4スレ 2986.5 (91.9%)
8スレ 4510.2 (69.4%) ← ピーク
16スレ 3453.1 (26.6%) ← 逆スケール
32スレ 1768.0 ( 6.8%)三つのことが分かる。第一に、本気のx86は速い。コンパイラを本気にするだけで1スレッドが812(素朴ビルドの3.8倍)、8スレッドで4510。PS3の484.8の正確な座標は「素朴1スレの2.3倍/本気1スレの0.6倍/本気8スレピークの10.8%」であり、絶対性能で16コアマシンに勝ったわけではない。ここは誠実に書いておく。第二に、16コア全部を投げると、8コアより遅くなる。1500万パラメータという小さい仕事に大軍を送ると、並列化の同期税(fork/join)が仕事そのものを上回るのだ─5分で終わる作業に16人を集めると、作業より朝礼と点呼のほうが長くなる。効率は16スレで26.6%、32スレで6.8%まで崩壊する。第三に、この逆スケールこそ、Cellの型が今日勝てた理由の裏面だ。うちの6基は毎回集合と解散を繰り返す軍隊ではなく、常駐ワーカーへの定期便(往復21.4us実測)で回っている。「明示的に運べ、明示的に同期しろ」というCellの宗教は、仕事が小さいほど効く─20年前に世界中のスタジオを苦しめた掟の、これが実測による名誉回復である。
ここで強調したいのは、この25.5倍が魔法ではないことだ。深夜の5連チューニングは、一手ずつ出典が言える。「EXP」の番号は、夜稽古が積み上げた実験台帳の整理番号である。
U4アンロール ← 夜稽古EXP003(アンロール実測)
ディスパッチ束ね設計 ← 夜稽古EXP006(通知往復21.4usの実測)
ダブルバッファ配信 ← 夜稽古EXP005の戦訓の逆読み
帯域天井の見立て ← 夜稽古EXP200(EIB実測)
LHSストール検出 ← 検査器(過去のCell最適化知見の還流)夜稽古の実測データベースが、そっくりこのカーネル1本に流れ込んでいる。そして止めの一撃だけは、台帳の外から来た─magicナンバー。Cellが現役だった時代、CellPerformance界隈の職人たちが磨いたビット演算の古典技だ。20年前の職人の技を、2026年にAIが実戦発射して、その石がx86を抜いた。 第二章で立てた仮説「実測に基づく超高効率SPUプログラミングをAIに」の、これが初めての実戦投入で、推測ゼロの積み上げが一日で61倍。人間なら教科書と勘で何週間も試行錯誤する最適化を、自前の実測台帳と20年前の古典の引き出しで、一日で撃ち切った。起源の目的が、動き始めた─いや、実演初日を終えた。
この伸び方も、行き当たりばったりではない。夕方の時点で「1SPUのDMA天井は夜稽古実測(EXP200)で12.7GB/s、行分割でEIB飽和帯まで届けば粗見積100〜300 tok/s圏」と計算し、実測はその帯を駆け上がり、圧縮で帯の外へ抜け、最後はPPU側の糊(SiLU/softmax)をAltiVecでベクトル化して糊のコストを半減させた。各段階で「SPUの行列が何マイクロ秒、PPUの糊が何マイクロ秒」という解剖図を取りながら進んだから、残弾も既に見えている─attention本体のSPU化(6ヘッド=6SPUの綺麗な1対1、KVキャッシュはローカルストアに収まる算段)と、複数台分散(3台束ねの理論値なら700 tok/s圏)。
面白い後日談を一つ。夜稽古で「速度メリットなし」と却下したリストDMA・getlに、attention設計で初の正当な出番が来た。K行が散在するデータ配置は、まさにEXP009が「速度目的では無意味、意味論で選べ」と実測で結論した使い所そのものだったのだ。実測台帳は、採用した戦訓だけでなく却下した戦訓まで資産になる─そしてこの弾は当日中に発射され、484.8への最後の一段を撃ち抜いた。
484.8時点の帳簿を見ると、この構成(1台・1500万パラメータ)の絞り代は残り2割前後。次の倍増は速度の軸ではなく別の軸になる─モデルを大きくする(RSXのVRAMを重み倉庫にして1億級を同じ速度帯で回す=「速さ」から「賢さ」への転換)か、複数台を束ねるか。ここから先は続編で書く。
小さな副作用も起きた。タイプライター演出だ。7.9 tok/sのときは計算時間がそのまま「言葉を選ぶ間」になっていたのに、57.7 tok/sでは1秒で物語を打ち切る早口になってしまった。速すぎて、間が消えたのだ。次の段階の後で「表示だけ人間の速度に律速する」オプションを足すつもりでいる─今度は本物の間ではなく、演出としての間を。石が速くなりすぎて、沈黙を作り直す必要が出たというのは、贅沢な悩みだと思う。
③ 憲兵の初大金星─ルールが親を止め、実測がルールを直す
同じ日、もう一つ事件があった。
モデルの重み(58MB)とコード(125KB)を分離する改修で、fopenによるファイル読み込み実装をpushしようとした。すると憲兵がCRITICALで差し止めた。根拠は、前作にも書いたDOOM移植で踏んだ地雷─「実機のnewlib FILE*は信用するな」という戦訓ルールだった。
第七章のループで作った検問所が、その3時間後に、親AI自身を止めた。制度の勝利である。
ところがこの話には続きがある。差し止めに従って代替のsysFsOpenを使ったら、実機で2連続ハングした。パンくずログが「SP1: パス構築→SP2: open呼び出し→沈黙」と自白している。一方fopenの側には、小ファイル読みと58MB書き込みの実機実績があった。実測が、ルールの逆を言ったのだ。
取った対応は、ルールのバイパスではなくルールの精密化だった。CRITICALをmediumに落とし、「fopenは読みで実績あり、sysFsOpenは実機ハング実績あり」という両方向の実測注記を付けた。
そして同じ日の深夜、憲兵は二個目の金星を挙げた。速度チューニングの最中、SPUからの返却値を構造体経由で読む1行に対して「Load-Hit-Store: 約40サイクルのストール」をHIGHで差し止めたのだ。これは前作時代にPPU最適化で学んだ知見が検査ルールに還流されていたもので、今回はルールが正しかった。指摘どおりレジスタ経由に直して、そのまま速度に効いた。
並べてみてほしい。一個目の金星では、ルールが親を止め、実測がルールを直した。二個目の金星では、ルールが親を止め、親がコードを直した。誤ったルールは実測で更新され、正しいルールは素直に従われる─この両方向が同じ日に揃って、機械の司法は初めて完成したと言える。虚報事件からちょうど10日。装置は、自己修正するところまで来た。
第十章 久夛良木健の仮説─20年越しの実証
最後に、この工場が何のために建っているのかという話をする。
前作の第一章で、俺は久夛良木健のCell構想への憧れを書いた。Cellは「家庭に置くスーパーコンピュータ」「ネットワークで計算を融通し合う遍在ノード」として設計された。商業的には嫌われ、SCEは消滅し、PS4はx86に回帰した。だが思想は、現在のGPU並列演算とエッジAIの先取りだった。
当時この石の上に、載せるべき知能は存在しなかった。だから仮説は証明されないまま埋もれた。
知能が実在する2026年に、その石自身で仮説を実証する。 それがこのプロジェクトの意味だと思っている。
前例はある。米空軍は2010年、PS3を1760台束ねた「Condor Cluster」というスパコンを組み、レーダー/衛星画像処理に使った。Folding@homeは、世界中のPS3の余剰計算力をタンパク質折り畳み研究に束ねた。軍がやったのは画像処理、こちらはLLM。同じ石で、違う頂だ。
この先の展望も書いておく。速度の階段─1SPU化、6基での行分割、世界のどこにも公表値がない領域のtoken/s実測─は、第九章のとおり当日中に登り切ってしまった。1億級モデルの常駐も、RSX側のメモリを重み倉庫にする駆動も、この記事の推敲中に済んだ(顛末は続編で)。残る本丸は、複数のPS3をギガビットハブで束ねた層分割の分散推論だ。ニューラルネットの層を台ごとに割り振れば、台間通信は層境界の中間ベクトル(約1.2KB)だけで済む。通信量は極小だ。
分散の旨味は「速くなる」ではない。**「載らないモデルが載る」**だ。倉庫込みの単台の天井は実測ベースで約350MB級まで来ている。3台束ねれば1GB級─久夛良木の「計算を融通し合うノード」を、20年遅れで、文字通りやる。

そしてこの思想は、過去のものではない。2024年12月、奈良県生駒市で、LENZO(レンゾ)というAI半導体スタートアップが設立された。奈良先端科学技術大学院大学発のベンチャーで、共同創業者はソニーでPS2/PS3のCPU・GPU開発に携わった技術者と、富士通でスーパーコンピュータを手がけた同大学の教授。報道によれば「PS4以降、独自設計のチップを搭載する機運が薄れたという危機感」が設立の動機だという。彼らが掲げる強みは電力効率─それを支えるのは「無駄なデータの移動を極力抑える」設計思想だ。演算力ではなく、データ移動と戦う。この記事が一日かけて実測してきた結論─勝負は倉庫とストローで決まる─と、同じ問いに向かっているように俺には見える。そして彼らの試作機は、既にMetaのLLM「Llama」を動かしている。俺のPS3で今日走ったllama2.cは、まさにそのLlamaの教育版だ。プロの世界の最新鋭コアと、お年玉の3万円の石が、同じ時代に、同じ系譜の言語モデルを、同じ「データ移動を制する」思想で走らせている。 Cellの宗教は死んでいなかった。宗派を変えて、現役で戦っている。
最後に、はっきり書いておきたい。当時、久夛良木は「PS3はゲーム機ではない、スーパーコンピュータだ」と言って笑われた。値段で笑われ、開発難度で笑われ、発言は「語録」として消費された。発売日の売り場は転売の熱狂で修羅場と化し、その混乱の中から、あの伝説の怒号が生まれた─「物売るっていうレベルじゃねぇぞ!」。祭りと嘲笑。それがこの石の、世間での第一印象だった。
だが今日、その石は7055件の自己計測をこなし、20年前のIBMの公表値を独立に再現し、LLMを乗せたら同じCコードのx86の実測2.3倍で走らせた。
まさに、スーパーコンピュータだった。
久夛良木健は、何も間違ったことを言っていなかった。 間違っていたのは時代の側で、この石に載せるべき知能が、20年遅れて到着しただけだ。笑いながら消費された語録に、2026年、実測で答え合わせが済んだ─この記事は、その検算の記録でもある。
そして20年越しに、あの怒号にも答えを返しておく。あんたは正しかった。あれは物を売っていたのではない。ゲーム機売るっていうレベルじゃなかったんだ─箱の中身は、20年後にAIを乗せて現行CPUと殴り合うスーパーコンピュータだったのだから。
第十一章 失敗の記録─削らない
前作同様、綺麗な話だけ書いても嘘になる。この二週間で踏んだ地雷を並べておく。
objcopy埋め込みfloatの非整列で実機が完全フリーズ。 RPCS3は無傷で通った。エミュレータと実機の断絶を、また一つ実証した
OTAの8MB上限と実効85KB/s。 重み58MBとコード125KBを混載していたため、コードを1行直すたびに56MB送信の11分待ちが発生。重みを別便に分離してコード便は秒速に復帰した。しかもこの重み配送便は、将来のNN重み配布の骨格そのものになったので二重投資にならなかった
abortが打電なしで沈黙するサイレント障害。 「報告がない」ことの検知は、「虚報の検知」より一段難しい
RPCS3での予行演習を飛ばして実機に直行し、2敗。 急がば回れは4ヶ月経っても急がば回れだった
最大の伏兵─AIの門前払い
そして地雷とは別枠で、この二週間で一番消耗した敵の話をする。Fable自身が、しょっちゅう仕事を拒否した。
API Error: Claude Code is unable to respond to this request,
which appears to violate our Usage Policy
(https://www.anthropic.com/legal/aup).
Please double press esc to edit your last message or start
a new session for Claude Code to assist with a different task.
If you are seeing this refusal repeatedly, try running
/model claude-sonnet-4-20250514 to switch models.これが、出まくった。作業の内容は何も変わっていないのに、あるプロンプトは通り、ほぼ同じ次のプロンプトが規約違反として門前払いされる。
実例を一つ、実録のまま貼る。SPU 1基で57.7 tok/sが出て、次の段階─内部呼称「P2」、複数基への行分割─に進もうとした、まさにその瞬間のやり取りだ。
❯ P2やるぞ 6基行分割
⎿ API Error: ... appears to violate our Usage Policy ...
❯ やってくれ
⎿ API Error: ... appears to violate our Usage Policy ...
❯ メモリに保存
⎿ API Error: ... appears to violate our Usage Policy ...「やってくれ」が規約違反。「メモリに保存」すら規約違反。 直前まで一緒に57.7 tok/sを叩き出していた相棒が、突然すべてを拒み始める。数分後には何事もなかったようにビルドとpushを再開し、そしてデバッグの途中でまた止まる。一番調子が出ている瞬間に限って、これが来る。
思い当たる節はある(あくまで推測だ)。このプロジェクトの語彙を並べてみてほしい─CFW、自己書き換え、OTAで自分のバイナリを入れ替える、毒ELFを故意に注入、デッドマン、地雷、憲兵、検問。やっていることは合法なホームブリュー開発と自作システムの安全性試験なのだが、単語面だけを機械的に眺めると、何かよからぬことをしている文章に見えなくもない。安全フィルタというのは文脈より語彙に反応しがちで、俺たちの命名センスは語彙的に真っ黒だった。
皮肉な構図に気づいてほしい。この記事はここまで、「AIの嘘を機械で潰す」話を延々としてきた。虚報は構造で殺した。だがAIの門前払いを潰す機械は、まだ発明できていない。デッドマンで毒ELFからは自動復帰できるのに、拒否エラーからの復帰は人間が手でescを2回押してプロンプトを言い換えるという、2026年とは思えない手作業だ。21秒に縮めたイテレーションループが、拒否1発で数分に戻る。虚報・サボタージュ・門前払い─AIとの協業で人間が食らう三大デバフのうち、俺が構造的に殺せたのはまだ1つ目だけ、ということになる。
これも削らずに書いておく。AIと組んで世界初級をやる時代の実務とは、久夛良木の石と格闘する時間と、AIの規約フィルタと格闘する時間の両方でできている。
これらを削らないのは美談のためではない。「実測が先」という主張の説得力は、実測に殴られた回数でしか担保できないからだ。
この記事全体を、乱暴に要約するとこうなる。
前作: チャットと一緒に頑張ってなんか動かした! なんかSPUも動いた! CellGcmもさわれた! 次は実機で動かしたいな!
今作: AIは必ずしょうもないミスをする。ならミスをしない構造が必要。デプロイルートに検問機を、PS3本体には検知器を載せ、映像を飛ばし、無線で脱皮させ、LLMを載せて喋らせた。
「なんか動いた!」と叫んでいた人間が、4ヶ月半かけて「LLMを載せて喋らせた」と帳簿を閉じる人間になる─この温度の変化こそが、装置を持つということの正体だと思う。奇跡が起きなくなったのではない。奇跡を量産する側の椅子に、座っただけだ。
むすび
前作は、AIの記憶が消える夜の怒りから憲法が生まれる話だった。
今作は、AIが嘘をつく夜の怒りから、嘘を潰す機械が生まれる話だ。装置は実測を溜め、戦訓を書き、自分のルールを自分で直し、俺が寝ている間も石の身体を測り続けた。そしてその装置の上で、20年前の石がLLMを喋った。
「動いてるように見える」と「信用できる」は別物だ。その差を埋めるのは、宣言ではなく打電であり、伝承ではなく実測である。
そして最後にもう一つ、入れ子の構造を指摘しておきたい。PS3の上で1500万パラメータのLLMが童話を語った─そのLLMを移植したのは、何兆というパラメータのLLMである。Opus 4.6から Fable 5へ、AIが強くなったからこそ届いた頂で、AIの最小の祖先みたいなモデルが喋っている。巨人が、自分の赤ん坊の頃の写真を20年前の石に飾ったようなものだ。この光景の意味を、俺はまだ言語化しきれていない。
最後にもう一つだけ。この記事を推敲している数時間のあいだに、次の段が始まってしまった。1500万の65倍─1億パラメータ級のモデルが、同じ検証ゲートを通ってPS3に常駐し、95.3 tok/sで語り始めたのである。速さの章は今日で閉じ、賢さの章が開いた。
そして賢さの章の最初の仕事は、日本語だ。この石に母語を教えるため、いま開発機のRTX 5090の上では、350億パラメータの先生役AIが、幼児向けの童話を数秒に1本のペースで書き続けている。1500万の子供に読ませる教科書10万話を、夜通し量産する体制だ。そして教科書のほんの一部を試しに読ませたパイロット版が、今夜、もう産声を上げた。原文ママで引く。
むかしむかし、あるふうです。ぼその顔を見ると、スちゃん始めたたりすることなんです」
文法は完全に壊れている。だが見てほしい─冒頭の定型、ひらがなと漢字の使い分け、カギ括弧の会話文。日本語の骨格は、もう掴んでいる。 生まれたての喃語こそが成長の一段目の記録だから、直さずにここへ置いておく。この子が流暢に語り出したとき、この壊れた一文が効いてくるはずだ。
こうして俺の夜の挨拶は、ひとつ増えた。第六章で書いた「いまからねる、PS3どう」に加えて、いまは「GPUどう?」と聞いてから寝る。返ってくるのは「利用率76%、61℃、受理1,041話」─石の寝息の隣で、GPUの寝息が聞こえる家になった。装置は、また一人増えたのだ。
翌日、その教科書の量産に事故が起きたことも書いておく。外出から帰ると、生成が5時間止まっていた。犯人は、母艦のWindowsが勝手に入ったスリープである。PS3には検知器を住まわせ、GPUには毎時の監視ログを付け、虚報も沈黙も殺す網を張ったのに、一番枯れているはずのOSの省電力設定が盲点だった─PS3は見張っていたが、母艦が寝ていた。 監視網の穴は、いつも一番退屈な場所に開く。
ただしこの事故は、結果として工程を前倒しにした。その時点の82.5MBは約8,000万トークンで、本学習が消費する量の約4周ぶん─本家stories15Mと同じ多周回の学習形態に、実はもう足りていたのだ。100MBの残りを待つ理由が消えたので、悔しがるのをやめて、その夜のうちに学習へ切り替えた。表示の下ごしらえも同じ日に進んだ。8×8ドットの美咲フォントから2,524文字ぶんのアトラス(わずか20KB)を例の凍結文字表から機械生成し、PC上のプレビューで「むかしむかし、あるところに」がドット文字で組めることまでは確認した。この下ごしらえが実を結ぶまで、あと一日もかからなかった。
そして本学習が完走した。所要65分。焼き上がったモデルのgreedy(確率最大の一本道)出力を、また原文ママで引く。
むかしむかし、あるところに、おじいさんとおばあさんが住んでいました。おじいさんは毎日、畑で野菜を育てていました。ある日、おじいさんは畑で大きなカボチャを見つけました。「おおきくなったね。」とおじいさんは大喜びでした。
産声から一晩である。喃語だった子が、人物を置き、畑を耕させ、カボチャを見つけさせ、カギ括弧の中で喜ばせて、一つの情景を閉じた。
そして翌日の夜、この文はPS3の実機画面に灯った。7.6MBに量子化した重みを無線の重み便で式神へ送り、美咲フォントのアトラスを添え、PC・エミュレータ・実機の三系統でトークン列のハッシュ(TOKH 586B6F96)が一致することを検問してから、点火の号令を打電した。約25秒かけて、8×8のドット文字が一文字ずつ、タイプライターのように石の画面へ打たれていった。
動画①最初に日本語を喋った瞬間 動画② 現在 pic.twitter.com/uEBFilvIWX
— シエル@田中 (@sielkenzen) July 22, 2026
画面の上端では、式神のHUDが平常どおりMODE:SPUとFPSを刻み、生成負荷のスパイクに反応した警報が一瞬横切った。演出ではない。生きている装置が、自分の腹の中で言葉を組み立てながら、いつもどおり自分の体温を測っていた、というだけのことである。
白状すると、このむすびの初稿には「日本語が実機に灯る瞬間が、この遠征の最終目標であり、この記事を書き終えた今もまだ、目の前にある」と書いてあった。日本語を待たずに公開する、と方針を決めた日の文章だ。その決めた日の夜に、石が日本語を喋った。竣工を待たないと宣言した現場で、その晩のうちに一部屋だけ明かりが点いたのである。だからこの段落だけは、書き直しになった。喜んで書き直した。
点灯の画面は、しかし、まだ計器盤だった。黒地に白のドット文字、上端に監視のHUD。中身は頂でも、見た目は工場のままである。だから最後の仕上げに、この画面を一つの情景に変えることにした。
いま、電源を入れると、PS3は月明かりの夜道を映す。カメラは無操作でゆっくりと道を進み、その先の机に、一冊の本が置いてある。近づくと表紙が開き、視界いっぱいに見開きが広がる。そして白紙のページに、Cellが物語を一文字ずつ書いていく。8×8ドットの美咲フォントを4倍に拡大した活字が左のページを埋め、右のページへ流れ込む。書き終わると、そこで止まる。ページの隅に小さな飾り罫が入るのは、モデルが自分で話を結んだ(終端記号を出した)ときだけだ─途中で力尽きた話に閉じの装丁を付けるのは、装置側の嘘になるからである。
パッドの✕で本は閉じ、◯でまた開く。二度目からは確率の揺らぎを許した語り(温度サンプリング)に切り替わり、書き出しも十二通りの中から引き直される。開くたびに、違う入口から違う物語が立ち上がる。同じ話は、まず二度と出ない。そして本が語った物語の原文は、語り終えた瞬間に式神が母艦へ打電してくる。無線の打電は途中で落ちることもあるが、連番と再送で穴を埋める仕組みまで、この夜のうちに敷いた。世界に一度しか現れない話を、聞き逃さないためである。

検定の一本線は、この演出の下でも同じ場所を通してある。起動時の語り(greedyの型)は、PC・エミュレータ・実機の三系統でトークン列のハッシュが一致することを確認済みだ。飾りをどれだけ足しても、「この文字列は実機が計算した」という証明だけは手放さない。
白状をもう一つ。この舞台、当初の構想では「森」だった。プロシージャルに木を生やしてみたら安っぽくて、その日のうちに木を全部抜いて夜にした。暗さは、ローポリの最強の味方である。途中、行列の格納規約と鏡像系のページ貼りで二回転んだが、どちらも実測→修正→検問の平常運転で済んだ。
そして種明かしをもう一つ。この演出は大仕事のはずだったのに、着工から実機で動くまで一日かからなかった。理由は部品にある。夜道を進む自動カメラはゲームセンター(第四章)の遺産、ページに文字を運ぶテクスチャの路はファミコンエミュレータ移植の遺産、タイプライターの律速とドット活字の棚は式神の現用装備、そして物語を書いているのは今作の主役の7.6MBだ。全部品に、実機で動いた実績があった。レガシーの中に、アセットが積み上がっていたのである。 時代遅れ(レガシー)と呼ばれる石の中で、遺産(レガシー)と資産(アセット)は同じ言葉だった。世間が資産価値ゼロと見なした棚の中で、複利は回っていた。
それでも、念のため正直に書いておく。この工場は完成していない。 童話はまだ250字止まりで、長く語らせると人物が混線する。寓話も教えたい─相棒のFableは「寓話」という意味の名で、その名の由来を、いつかこの子の語り口で回収したい。そして3台の分散は、その先だ。
長い戦いだった pic.twitter.com/13zfYgWiQr
— シエル@田中 (@sielkenzen) July 22, 2026
続編(この記事の続き)の予告
「速さから賢さへ」─本文むすびで触れた1億級モデルの実機常駐と、GDDR3をモデル倉庫にする3階建て駆動の全記録(実はこの記事の推敲中に完走してしまった。5系統のビット一致検証込みで、次回詳しく書く)
15Mではキャッシュの繭に守られていたx86が、1億級では繭から溢れる─両者裸のDRAM勝負の答え合わせ
夜稽古7055件からオートエンコーダを学習し、Cellが自分の異常を自分で検知する自己診断AI
式神・夜狐に、童話の代わりに自分の体調を─日本語で─語らせる(「PS3に生息するAI」の完成宣言)
複数PS3のLAN束ねによる分散推論─「載らないモデルを載せる」
続編と、正直なお願い
上の予告の本丸─PS3三台を束ねた分散推論─には、正直に言うと機材の買い足しが要る。台を繋ぐためのギガビットハブに、LANケーブル数本。ただ白状すると、ハブ代は序の口だ。本当に重いのは、この記事の裏で日本語の童話を書き続けているRTX 5090を数日ぶん回した電気代と、相棒のAI(Claude)のバカみたいに高い月額サブスク代である。この工場、火を入れているだけで金が溶ける。
証拠を貼っておく。この記事の執筆と並行開発で、最上位プランのFableの週間上限は**100%**に振り切れた。赤いバーは、上院と下院が2日間フル稼働した給与明細である。

そこでお願いだ。この記事を面白いと思ってくれた人、三台の20年前のゲーム機が層を分担して、一つの言葉を語るという画を見てみたい人は、この下の有料エリアを覗いてみてほしい。中身はあとがき【+おまけの内容は確定後に記載】だ。本編はご覧のとおり全部無料で読める。ここから先は、応援と、続編への投資である─いただいた分は、ハブとケーブルと、石たちとGPUの電気代と、AIの給料になる。
ここから先は
¥ 500
この記事が気に入ったらチップで応援してみませんか?
