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
最小限の実装で試す MetalによるGPUコンピューティング
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
yuky_az
February 15, 2017
Technology
2.3k
2
Share
最小限の実装で試す MetalによるGPUコンピューティング
potatotips #37 (iOS/Android開発Tips共有会)での発表に用いたスライドです。
yuky_az
February 15, 2017
More Decks by yuky_az
See All by yuky_az
AGI福岡 第8回
yukinaga
0
130
AGI福岡 第6回
yukinaga
0
150
AGI福岡 第5回
yukinaga
0
200
AGI福岡 第3回
yukinaga
0
120
AGI福岡 第2回
yukinaga
0
140
生成AIの現状と展望: AIと共生する未来への道程
yukinaga
3
1.2k
BERTによる自然言語処理を学ぼう!【 Live!人工知能 #26】 #Live人工知能
yukinaga
0
450
iOSアプリは「感情」を宿すのか? AIとアプリの未来について
yukinaga
2
1.1k
iOSアプリに「意識」は宿るのか? ディープラーニングの先にある人工知能(AI)
yukinaga
6
6.1k
Other Decks in Technology
See All in Technology
Gaussian Splattingの表現力を拡張する — 高周波再構成とインタラクションへのアプローチ —
gpuunite_official
0
190
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.4k
続 運用改善、不都合な真実 〜 物理制約のない運用改善はほとんど無価値 / 20260518-ssmjp-kaizen-no-value-without-physical-constraints
opelab
2
240
20260513_生成AIを専属DSに_AI分析結果の検品テクニック_ハンズオン_交通事故データ
doradora09
PRO
0
230
20260515 OpenIDファウンデーション・ジャパンご紹介
oidfj
0
130
ECSのTerraformモジュールにコントリビュートした話
harukasakihara
0
220
Every Conversation Counts
kawaguti
PRO
0
240
JaSSTに関わることで変わった人生観 #jasstnano
makky_tyuyan
0
110
インプロセスQAのための要因から捉えるプロジェクトリスクマネジメントnano #1 開発リソース効率状態への対処 #jasstnano
barus_qa
0
150
いつの間にかデータエンジニア以外の業務も増えていたけど、意外と経験が役に立ってる
zozotech
PRO
0
650
そのSLO 99.9%、本当に必要ですか? 〜優先度付きSLOによる責任共有の設計思想〜 / Is that 99.9% SLO really necessary? Design philosophy of shared responsibility through prioritized SLOs
vtryo
0
800
20260515 ⾃分のアカウントとプライバシーを守る認証と認可の話〜利⽤者向け〜
oidfj
0
660
Featured
See All Featured
Typedesign – Prime Four
hannesfritz
42
3k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
540
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Bash Introduction
62gerente
615
210k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.5k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
380
The World Runs on Bad Software
bkeepers
PRO
72
12k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.3k
Chasing Engaging Ingredients in Design
codingconduct
0
190
Transcript
࠷খݶͷ࣮Ͱࢼ͢ .FUBMʹΑΔ(16ίϯϐϡʔςΟϯά :VLJOBHB"[VNB !ZVLZ@B[ QPUBUPUJQT
ࣗݾհ :VLJOBHB"[VNB ʢզ࠺ʣ J04ΤϯδχΞϓϩάϥϛϯάΠϯετϥΫλʔ !ZVLZ@B[ J0%$ͰεϚϗ͚73ΞϓϦͷ։ൃʹ͍ͭͯൃද 6EFNZͰʮΈΜͳͷ"*ߨ࠲ʯ։ߨத
Metalͱʁ Φʔόʔϔουͷখ͍͞ϩʔϨϕϧͳ ίϯϐϡʔλάϥϑΟοΫε"1* 0QFO(-ͱ0QFO$-ʹࣅͨػೳΛҰͭͷ"1*ʹ౷߹
ࠓճͷൃද༰ 1. ඳըॲཧ 2. ฒྻԋࢉ MetalʹΑΔ
GPUฒྻԋࢉͱʁ GPUͷԋࢉϦιʔεΛը૾ॲཧҎ֎ʹར༻
CPUͱGPUͷ࿈ܞ EFWFMPQFSBQQMFDPNNFUBM
Metal CPUଆͷొਓ 1 .5-%FWJDF୯Ұͷ(16ͷΠϯλʔϑΣΠε .FUBMؔ࿈ͷ"1*ଟ͕͘ϓϩτίϧͰهࡌ EFWJDF.5-$SFBUF4ZTUFN%FGBVMU%FWJDF QSJOUEFWJDFOBNF"QQMF"(16
Metal CPUଆͷొਓ 2 .5--JCSBSZγΣʔμʔͷΠϯλʔϑΣΠε .5-'VODUJPO.FUBM4IBEJOH-BOHVBHFͰॻ͔Εͨؔ .5-$PNQVUF1JQFMJOF4UBUF.5-'VODUJPOΛίϯύΠϧ͞Εͨίʔυʹม .5-$PNQVUF$PNNBOE&ODPEFSίϚϯυΛ(16༻ʹΤϯίʔυ .5-$PNNBOE#V⒎FS(16Ͱ࣮ߦ͞ΕΔίϚϯυΛ֨ೲ .5-$PNNBOE2VFVF্هͷΩϡʔɺίϚϯυͷ࣮ߦॱΛཧ .5-%FWJDF
ੜ
Metal Shading Language JODMVEFNFUBM@TUEMJC VTJOHOBNFTQBDFNFUBM LFSOFMWPJEBEE0OF DPOTUEFWJDFqPBU JOQVU%BUB<<CV⒎FS >>
EFWJDFqPBU PVUQVU%BUB<<CV⒎FS >> VJOUJE<<UISFBE@QPTJUJPO@JO@HSJE>> \ qPBUSFTVMUJOQVU%BUB<JE> SFTVMU G PVUQVU%BUB<JE>SFTVMU ^
GPU vs CPU ɾೖྗʹΛͯ͠Ҿ͘Λ܁Γฦ͢ ɾ$16ଆͰɺ্هΛສY/ճ ɾ(16ଆͰສεϨουY/ճ LFSOFMWPJEBEE"OE4VCUSBDU DPOTUEFWJDFqPBU JOQVU%BUB<<CV⒎FS
>> EFWJDFqPBU PVUQVU%BUB<<CV⒎FS >> VJOUJE<<UISFBE@QPTJUJPO@JO@HSJE>> \ qPBUSFTVMUJOQVU%BUB<JE> GPS VJOUJJ/J \ SFTVMU G SFTVMUG ^ PVUQVU%BUB<JE>SFTVMU ^
CPU vs GPU ഒఔ
CPU vs GPU ʢରʣ $16(16ؒͷΓͱΓΛ࠷খݶʹ͢Δ͜ͱ͕େࣄ
࣮ํ๏ɺಛੑ͕͔͖ͬͯͨͱ͜ΖͰ Կ͔Ԡ༻ͯ͠ΈΑ͏ʂ
܈ೳͱʁ ਓೳͷҰछɺूஂͱͯ͠ߴͳৼΔ͍
܈Εͷ3ͭͷϧʔϧ Bڑ֤ݸମ͕ڑΛอͭΑ͏ʹಈ͘ Cฒߦ֤ݸମ͕ଞͷݸମͱಉ͖͡ʹͳΔΑ͏ʹಈ͘ D֤ݸମଞͷݸମͱಉ͡ʹͳΔΑ͏ʹಈ͘
ࣜԽ Bڑ Cฒߦ D
γΣʔμʔͷίʔυ LFSOFMWPJENPWF ʜ GPS VJOUJJOPEF$PVOUJ \ ʜ ڑ qPBUBUUSBDUJPOFYQ C
EJTUBODFB EJTUBODFB qPBUSFQVMTJPOFYQ C EJTUBODF EJTUBODF E"OHMF BMQIB OFBS"OHMF BUUSBDUJPO GBS"OHMF SFQVMTJPO JOUFSWBM ฒߦ qPBUQBSBMMFM"OHMF%JGHFU3BOHFE"OHMF OPEFBOHMFDVSSFOU/PEFBOHMF E"OHMF CFUB QBSBMMFM"OHMF%JG FYQ C EJTUBODF EJTUBODF JOUFSWBM qPBUOPEF7FMPDJUZTRSU OPEFWFMPDJUZ9 OPEFWFMPDJUZ9 OPEFWFMPDJUZ: OPEFWFMPDJUZ: WFMPDJUZ HBNNB OPEF7FMPDJUZWFMPDJUZ FYQ C EJTUBODF EJTUBODF ^
ߏ ʢ6**NBHF7JFXͷαϒΫϥεʣ 7JFX$POUSPMMFSTXJGU .FUBM.BOBHFSTXJGU 4IBEFSNFUBM
࣮ԋ case1 IUUQTZPVUVCFD"60+XNF6" ЋЌЍ
࣮ԋ case2 IUUQTZPVUVCF(KES:&3:,7D ЋЌЍ
࣮ԋ case3 IUUQTZPVUVCF8M.J+%[$G ЋЌЍ
ύϑΥʔϚϯεʹ͍ͭͯ ͷݸମΛ༻ɺͦΕͧΕͷ૬ޓ࡞༻Λߟ͑ͨͷͰ YͰճͷԋࢉΛຖϑϨʔϜ͝ͱ ඵؒʹճ࣮ߦ GQTΛΩʔϓɺ$16༗ఔ FYQ͚ؔͩͰສճඵʢʣ
·ͱΊ ຊͷൃද༰ɺৄࡉ2JJUBͰ .FUBMͰϋΠύϑΥʔϚϯεͳ(16ฒྻԋࢉ͕Մೳ ෳࡶͳݱΛJ1IPOFʹ࠶ݱͰ͖Δ ਓೳͳͲͷԠ༻ɺظେ IUUQRJJUBDPNZVLZ@B[
ͯͯ͘͘ษڧձ #tekutekustudy ҟۀछΤϯδχΞ͕ू·Δษڧձ
Metal Advent Calendar
ιʔείʔυ HJUIVCDPNZVLJOBHB4XBSN*OUFMMJHFODF