Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
さぁV100、メモリをお食べ・・・
Search
nilpe
May 30, 2026
Programming
170
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
さぁV100、メモリをお食べ・・・
Persistent MemoryをGPUから使う方法
nilpe
May 30, 2026
Other Decks in Programming
See All in Programming
Creating Composable Callables in Contemporary C++
rollbear
0
210
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
2
850
【やさしく解説 設計編 #1】「ドメイン駆動」と「実装駆動」ってなに? 〜設計の考え方を、たとえ話で学ぼう〜
panda728
PRO
1
120
The Bowling Game- From Imperative to Functional Programming - Part 1
philipschwarz
PRO
0
320
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
890
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
200
SREの積み重ねがAI駆動開発のガードレールになった ― 7つの実践/SRE Guardrails The 7
tomoyakitaura
8
4.2k
継続モナドとリアクティブプログラミング
yukikurage
3
590
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
150
act1-costs.pdf
sumedhbala
0
230
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
140
PHP Application における Kubernetes 内 gRPC 通信
ganchiku
0
380
Featured
See All Featured
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Technical Leadership for Architectural Decision Making
baasie
3
440
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
63
55k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
220
Into the Great Unknown - MozCon
thekraken
41
2.6k
How to make the Groovebox
asonas
2
2.3k
Un-Boring Meetings
codingconduct
0
340
Amusing Abliteration
ianozsvald
1
230
The browser strikes back
jonoalderson
0
1.4k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
3
950
Navigating Team Friction
lara
192
16k
Transcript
さぁV100、メモリをお食べ・・・ KERNEL/VM探検隊@関西 12回目 NILPE(@NILPE_LV01)
自己紹介 nilpeと申します! バイクとカーネルと黒魔術が好きな 筑波大学 情報理工学位プログラム M1 初発表です ↑インターネットコミュ障のアカウント アイコンは実家の犬です
メモリが足りない! 最近、メモリが売られなくなりつつありますよね その他のパーツも高騰 of 高騰
「古い」GPUを有効活用したい 研究室に転がってるV100(PCIe)で遊びたい でもVRAMが32GB ””””ぽっち””””しかない VRAM外のメモリに退避したい! ↑画像はnvidia公式より
私の言う「メモリ」とは Intel Optane Persistent Memoryのこと(生産終了済み)
つかいかた ・Openして ・mmap()して ・cudaHostRegister()するだけ
おもむろに こういうコードを書く↓ best = 0 for size in 二分探索(2 MiB
... 探索上限): if cudaHostRegister(base, size) が成功: best = size cudaHostUnregister(base) 次はもっと大きい size を試す else: 次はもっと小さい size を試す Pmemの実装量とbest を表示する
実行すると あれぇ・・・? ↑DRAM実装量-4GBしか登録できてない
どうやら CUDAランタイムでホストDRAMの実装量を見ているらしい →LD_PRELOADでごまかす
やりなおす あれぇ・・・? ② ↑システムメモリ実装量分しか登録できてない(4GB増えた)
nVIDIAドライバを書き換える
512GBごとにRegisterする
結果
帯域幅
できた!!! ご清聴ありがとうございました Github→https://github.com/nilpe/pmem-gpu- devdax