Upgrade to Pro — share decks privately, control downloads, hide ads and more …

iOSと人工知能(AI) -GPU並列演算の仕組みと機械学習-

yuky_az
September 17, 2017

iOSと人工知能(AI) -GPU並列演算の仕組みと機械学習-

日本最大のiOSカンファレンス、iOS2017での発表内容です。
デモに使用した動画は以下のリンクから視聴することができます。
https://twitter.com/yuky_az/status/910266701291315200
https://youtu.be/mRu4WkryeWs
https://youtu.be/13qsJfwtdks
https://youtu.be/evo7_GH-TtM

yuky_az

September 17, 2017
Tweet

More Decks by yuky_az

Other Decks in Technology

Transcript

  1. ࣗݾ঺հ :VLJOBHB"[VNB
 ʢզ࠺޾௕ʣ ΤϯδχΞ 3% ϓϩάϥϛϯάߨࢣ େֶͷݚڀһɺϝʔΧʔۈ຿ɺϓϩάϥϛϯά ߨࢣɺϕϯνϟʔۈ຿Λܦͯݱࡏ͸ϑϦʔϥϯε !ZVLZ@B[ ΈΜͳͷ"*ߨ࠲


    ࣮ફσʔλαΠΤϯεػցֶशXJUI1ZUIPO 6EFNZͰडߨੜ਺͕ਓΛಥഁʂ ޷͖ͳݴ༿ 5IFCFTUXBZUPQSFEJDUUIFGVUVSFJTUPJOWFOUJU
  2. ਆܦࡉ๔ͷϞσϧԽ ೖྗ ೖྗ ೖྗ ɾ ɾ ɾ ɾ ɾ ɾ

    ग़ྗ ೖྗY݁߹ՙॏͷ߹ܭ όΠΞεY݁߹ՙॏ Λग़ྗʹม׵͢Δؔ਺ χϡʔϩϯ όΠΞε ݁߹ՙॏ
  3. όοΫϓϩύήʔγϣϯʹΑΔֶश ೖྗ ೖྗ ग़ྗ ग़ྗ χϡʔϩϯ ೖྗ૚ தؒ૚ ग़ྗ૚ ਖ਼ղ

    ਖ਼ղ ޡࠩ ޡࠩ ݁߹ՙॏͷमਖ਼ ݁߹ՙॏͷमਖ਼ ݁߹ՙॏͷमਖ਼ ݁߹ՙॏͷमਖ਼
  4. Demo: SwiftʹΑΔػցֶश ࠷ٸ߱Լ๏ͷΞϧΰϦζϜʹΑΓ ޡࠩΛٯ఻೻͢Δ ߦ΄Ͳͷ4XJGUίʔυ
 ֤૚ͷχϡʔϩϯ਺͸<   >ݸ TJOؔ਺Λਖ਼ղ஋ͱͯ͠

    όοΫϓϩύήʔγϣϯʹΑΓֶश χϡʔϥϧωοτϫʔΫ ޡࠩ 8JLJQFEJB#BDLQSPQBHBUJPO ݁߹ՙॏͷमਖ਼ྔʢБֶश܎਺ʣ ˠग़ྗ૚ ˠग़ྗ૚Ҏ֎
  5. 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 ^ ֤εϨου͝ͱʹ࣮ߦ͞ΕΔ
  6. Experiment: 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 ^
  7. ݁߹ՙॏͷमਖ਼ྔΛ౷߹͠ɺ৽ͨͳ݁߹ՙॏͱ͢Δ (16 $16 JE ਖ਼ղ஋ ͱͷޡࠩ JE ʜ JE QPTJUJPO

    QPTJUJPO QPTJUJPO ਖ਼ղ஋ ͱͷޡࠩ ਖ਼ղ஋ ͱͷޡࠩ Demo: MetalʹΑΔػցֶशͷྫ
  8. Demo: MetalͰ࣮૷͢Δਓ޻ੜ໋ -֓೦ B ೏͍ͷ෼෍ ײ֮ثͷҐஔ C D E F

    ೖྗ1 = a - b ೖྗ2 = c - d ೖྗ3 = e ଎౓ <  >ͷχϡʔϥϧωοτϫʔΫ ೖྗ1 ೖྗ2 ೖྗ3 ਐߦ֯౓ͷ
 मਖ਼ྔ རಘ རಘײ৘
  9. Demo: ܈஌ೳ -γΣʔμʔͷίʔυ 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  ^