Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
NANDでも描画したい!
Search
nichica
August 22, 2026
Technology
1.1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
NANDでも描画したい!
Kernel/VM探検隊@東京Part19 の発表スライドです。
nichica
August 22, 2026
Other Decks in Technology
See All in Technology
ファミコンでPHPを動かす / PHP on the Famicom side b
tomzoh
0
140
AI時代のPRレビューにどう向き合うか?
kairim0
1
170
DGX Spark でどこまでハッキングができるのか?
kash1064
0
560
LocalStack を使ったサーバーレスアプリケーション開発 / Serverless Development with LocalStack
kakakakakku
1
400
脆弱性診断って、何をしているの? 〜弱点を見つけて、会社の改善につなげるまで〜
keeg
0
870
freeeらしさをAIとともに作る / Creating the freee Experience with AI
ymrl
0
220
AgentCoreで実践するハーネスエンジニアリング
yakumo
1
300
全PRの83%が AIレビューだけでマージできるようになった開発組織は その後どうなったか @2026/10
athug
0
140
遠藤な_めぐろLT #38 「社内のAI活用推進」@麻布台_20261009
endonanana
0
110
ハードウェアコンペでもAI駆動開発が進んでいる話
iotengineer22
1
690
WasmをRustにする
sansantech
PRO
0
160
予測不能な実行エージェントを安全にサクッと試せるサンドボックス環境の話
sansantech
PRO
1
150
Featured
See All Featured
How to Talk to Developers About Accessibility
jct
2
570
KATA
mclloyd
PRO
35
16k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
710
New Earth Scene 8
popppiees
4
2.7k
Optimizing for Happiness
mojombo
378
71k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
74
42k
What the history of the web can teach us about the future of AI
inesmontani
PRO
2
730
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.4k
Paper Plane (Part 1)
katiecoart
PRO
2
11k
Designing for Timeless Needs
cassininazir
1
520
Transcript
NANDでも描画したい! 2026/08/22(土) Kernel/VM探検隊@東京 No19 にちか (@lxacas)
Demo NAND型フラッシュメモリでGPUシミュレータを作って レンダリングがしたい! コンピュータは至るところにある(もちろん、補助記憶にも) レンダリングの Demo をしたいが8分かかる
発表枠は10分 →時間が無いので今のうちに実行
背景(1/2):NAND型フラッシュメモリで計算機を3年間作っている 8 bit全加算器(4 Hz)を作る 23/7 世界初のフラッシュメモリを貰う 24/1 命令セットを考えたらFPGAっぽくなった フラッシュメモリコンピュータで オセロAIをお披露目@北陸
24/12 25/12 24/9 nand2tetris(1.9 Hz)を作る 25/10 NANDでチューリング完全を達成 &24 bit 減算器(30.8 Hz)
背景(2/2):フラッシュメモリは計算器の材料に適してない 読み書き消去操作が遅い(μs、msオーダー) 限界まで書き換えると寿命に到達 計算するための素子ではない さらに、 NAND型フラッシュメモリの価格高騰
相次ぐ低容量品のEOL →計算のために書き潰すだなんてとんでもない! フラッシュメモリ
では何故やってしまったのか 動機 (GPUでも、HBMでもない) 「NANDメーカーは負け組」 というネット記事が掲載 →悔しい →GPUを作ってやる(決意 機会 出来る 環境
機会 Kernel/VM探検隊:低レイヤの祭典 正当化 CPUを作った時、多くの人たちに 「頭おかしい」とお褒め頂く →方向性は合っていそう フラッシュメモリで レンダリングする 動機 正当化 やりたい 気持ち もっともな 言い訳
フラッシュメモリで計算する原理 1回目の書込 2回目の書込 読出し値 消去 -20V 書込み 20V 0 0
0 0 1 0 1 0 0 1 1 1 初期状態が1。制御ゲートへ高電圧をかけ、電荷を溜めて0を書き込む 消去するときはシリコン基板に高電圧をかけて、電荷を抜く 電荷蓄積膜に電荷が溜まっているかどうかで閾値電圧が変わり、溜まっているほど電流が流れにくくなる(0と読める) 同じセルに連続で書くとBit ANDが取れる →ソフト反転でNANDになる→完全系になる
命名:Nandvia NAND(型フラッシュメモリ)をVIA(介して)計算するプロセッサだから NAND flash Vector/Image Accelerator という説もある Nandviaの特長
RISC-V GPGPU 3Dグラフィックスが可能 OpenCL、OpenGLをサポート Vulkanに対応 全部 Nandviaの材料 フラッシュメモリ製CPU …1個 Vortex …1個 OSSのRISC-V GPGPU 3Dグラフィックスが可能 OpenCL、OpenGLをサポート Vulkanに対応 のおかげ じゃないか
Nandviaの構造 加算器しか持ってねえ! simxというソフトウェアエミュレータがある →そのALUクラスをフラッシュメモリ加算器に接続 加減算を 100 % フラッシュメモリでやる
https://github.com/vortexgpgpu/vortex_tutorials/blob/main/Slides_MICRO58/2.vortex_microarchitecture.pptx
実験結果 Raspberry Pi 5 + 2 Gbit NAND フラッシュを
SPI クロック 48M Hzで動作 29分45秒でレンダリング バグのせいで一部崩れているのが逆に良い感じ 同じくらい感動 ≒ https://www.isas.jaxa.jp/j/topics/topics/2010/0618_3.shtml
ところで シングルコア、シングルスレッドのプロセッサで“GPU”はおこがましい Vector/Image Accelerator 要素はどこ???
フラッシュメモリ製CPUはSIMDっぽいことができる 32 bit 加算1回につき 435 Byte 書き込む NANDのPage
Sizeは2048 Byte 1回の書き込みに4回路分を “載せる”
調子に乗ってマルチコア化 NANDを8コア搭載!! 8 x 4 = 32 スレッド???
HW SPIが2個しかないので、 厳密には2コア。 2コア x 4段パイプラインは出来そう (Programのレイテンシを隠蔽) Program command Program NAND#0 NAND#1 NAND#2 NAND#3
まとめ フラッシュメモリ製のGPGPUシミュレータを作った レンダリング実験に成功した→ SIMD(?)化したら速くなった
まとめ フラッシュメモリ製のGPGPUシミュレータを作った レンダリング実験に成功した→ SIMD(?)化したら速くなった 9/5, 6のMaker Faire
Tokyo2026に 遊びに来てね@有明GYM-EX