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福岡 第6回
yukinaga
0
83
AGI福岡 第5回
yukinaga
0
130
AGI福岡 第3回
yukinaga
0
95
AGI福岡 第2回
yukinaga
0
96
生成AIの現状と展望: AIと共生する未来への道程
yukinaga
3
1.1k
BERTによる自然言語処理を学ぼう!【 Live!人工知能 #26】 #Live人工知能
yukinaga
0
400
iOSアプリは「感情」を宿すのか? AIとアプリの未来について
yukinaga
2
1.1k
iOSアプリに「意識」は宿るのか? ディープラーニングの先にある人工知能(AI)
yukinaga
6
5.8k
ヒトとAIの共生、そしてシンギュラリティ
yukinaga
0
1k
Other Decks in Technology
See All in Technology
Data Engineering Study#30 LT資料
tetsuroito
1
550
DatabricksのOLTPデータベース『Lakebase』に詳しくなろう!
inoutk
0
100
DATA+AI SummitとSnowflake Summit: ユーザから見た共通点と相違点 / DATA+AI Summit and Snowflake Summit
nttcom
0
210
AI Ready API ─ AI時代に求められるAPI設計とは?/ AI-Ready API - Designing MCP and APIs in the AI Era
yokawasa
20
5.8k
Building GoReleaser - from shell script to paid product
caarlos0
0
270
FAST導入1年間のふりかえり〜現実を直視し、さらなる進化を求めて〜 / Review of the first year of FAST implementation
wooootack
1
120
MCPと認可まわりの話 / mcp_and_authorization
convto
1
120
今日からあなたもGeminiを好きになる
subaruhello
1
560
AWS Well-Architected から考えるオブザーバビリティの勘所 / Considering the Essentials of Observability from AWS Well-Architected
sms_tech
1
850
複数のGemini CLIが同時開発する狂気 - Jujutsuが実現するAIエージェント協調の新世界
gunta
11
3.2k
AI エンジニアの立場からみた、AI コーディング時代の開発の品質向上の取り組みと妄想
soh9834
6
240
スプリントレビューを効果的にするために
miholovesq
9
1.6k
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
Optimizing for Happiness
mojombo
379
70k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
60k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
YesSQL, Process and Tooling at Scale
rocio
173
14k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
The Invisible Side of Design
smashingmag
301
51k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
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