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
yuky_az
February 15, 2017
Technology
2
2.2k
最小限の実装で試す MetalによるGPUコンピューティング
potatotips #37 (iOS/Android開発Tips共有会)での発表に用いたスライドです。
yuky_az
February 15, 2017
Tweet
Share
More Decks by yuky_az
See All by yuky_az
AGI福岡 第5回
yukinaga
0
95
AGI福岡 第3回
yukinaga
0
85
AGI福岡 第2回
yukinaga
0
77
生成AIの現状と展望: AIと共生する未来への道程
yukinaga
3
1.1k
BERTによる自然言語処理を学ぼう!【 Live!人工知能 #26】 #Live人工知能
yukinaga
0
380
iOSアプリは「感情」を宿すのか? AIとアプリの未来について
yukinaga
2
1k
iOSアプリに「意識」は宿るのか? ディープラーニングの先にある人工知能(AI)
yukinaga
6
5.7k
ヒトとAIの共生、そしてシンギュラリティ
yukinaga
0
1k
iOSと(深層)強化学習
yukinaga
6
8.8k
Other Decks in Technology
See All in Technology
newmo の創業を支える Software Architecture と Platform Engineering
110y
2
410
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
7
63k
20 Years of Domain-Driven Design: What I’ve Learned About DDD
ewolff
1
320
MySQL Indexes and Histograms – How they really speed up your queries
lefred
0
160
ペアーズにおける評価ドリブンな AI Agent 開発のご紹介
fukubaka0825
9
2.5k
MCPが変えるAIとの協働
knishioka
1
150
Datadog のトライアルを成功に導く技術 / Techniques for a successful Datadog trial
nulabinc
PRO
0
130
雑に疎通確認だけしたい...せや!CloudShell使ったろ!
alchemy1115
0
210
Part1 GitHubってなんだろう?その1
tomokusaba
3
750
AI駆動で進化する開発プロセス ~クラスメソッドでの実践と成功事例~ / aidd-in-classmethod
tomoki10
1
1k
Terraform にコントリビュートしていたら Azure のコストをやらかした話 / How I Messed Up Azure Costs While Contributing to Terraform
nnstt1
1
460
AI 코딩 에이전트 더 똑똑하게 쓰기
nacyot
0
540
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.8k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
2.9k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
The Language of Interfaces
destraynor
158
25k
Scaling GitHub
holman
459
140k
Bash Introduction
62gerente
613
210k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
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