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

クックパッドにおけるAWS GPUインスタンスの利用事例 / Powering by AWS GPU Instances in Cookpad Inc

クックパッドにおけるAWS GPUインスタンスの利用事例 / Powering by AWS GPU Instances in Cookpad Inc

Yuichiro Someya

November 17, 2017
Tweet

More Decks by Yuichiro Someya

Other Decks in Programming

Transcript

  1. ΫοΫύουʹ͓͚Δ
    "84(16Πϯελϯεͷ
    ར༻ࣄྫ
    ΫοΫύουגࣜձࣾݚڀ։ൃ෦
    છ୩༔Ұ࿠
    !"NB[PO&$(16ΠϯελϯεࡇΓ

    View full-size slide

  2. ࣗݾ ঺հ
    HJUIVCDPNBZFNPT
    UXJUUFSDPNBZFNPT@Z
    XXXBZFNPTNF

    ‣ છ୩༔Ұ࿠<:VJDIJSP4PNFZB>
    ‣ ౦޻େܭࢉ޻ֶम࢜
    ‣ ΫοΫύουגࣜձࣾ

    ݚڀ։ൃ෦ΤϯδχΞ
    ೥৽ଔೖࣾ

    View full-size slide

  3. ‣ ΫοΫύουͷ࣮ݧ؀ڥʹ͓͚Δ(16ར༻ঢ়گ
    ‣ 1ΠϯελϯεͷධՁ

    "HFOEB

    View full-size slide


  4. Ϩγϐ਺
    ສ඼Ҏ্
    ݄࣍ར༻ऀ਺
    ໿ ສਓ
    ೥݄຤࣌఺

    View full-size slide


  5. Χࠃʹల։
    ݴޠʹରԠ
    ೥݄຤࣌఺

    View full-size slide

  6. 7JSUVBM1SJWBUF$MPVE


    All-in on AWS since 2011
    Amazon S3
    Amazon RDS
    Amazon Redshift

    View full-size slide

  7. 7JSUVBM1SJWBUF$MPVE


    All-in on AWS since 2011
    Amazon S3
    Amazon RDS
    Amazon Redshift
    Amazon EC2

    View full-size slide

  8. ྉཧ͖Ζ͘

    ৞ΈࠐΈχϡʔϥϧωοτϫʔΫ
    ʹΑΔྉཧը૾ͷࣗಈೝࣝ
    εϚʔτϑΥϯͷࣸਅͷ಺ɺ
    ྉཧࣸਅΛࣗಈతʹऩूه࿥

    View full-size slide

  9. ྉཧ͖Ζ͘

    ৞ΈࠐΈχϡʔϥϧωοτϫʔΫ
    ʹΑΔྉཧը૾ͷࣗಈೝࣝ
    εϚʔτϑΥϯͷࣸਅͷ಺ɺ
    ྉཧࣸਅΛࣗಈతʹऩूه࿥
    IUUQTTQFBLFSEFDLDPNBZFNPTNBDIJOFMFBSOJOHPQTBUDPPLQBE

    View full-size slide

  10. 7JSUVBM1SJWBUF$MPVE


    All-in on AWS since 2011
    Amazon S3
    Amazon RDS
    Amazon Redshift
    Amazon EC2

    View full-size slide


  11. ‣ $6%"
    ‣ DV%//
    CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6

    View full-size slide


  12. ‣ $6%"
    ‣ DV%//
    IUUQTBXTBNB[PODPNBNB[POBJBNJT
    CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6

    View full-size slide

  13. CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6
    ...

    View full-size slide

  14. CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6
    ... ssh
    "Create"

    View full-size slide

  15. CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6
    ...
    `ssh`
    ...

    View full-size slide

  16. CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6
    ...
    `ssh`
    ...
    API Gateway
    Outgoing Webhook
    {text: "Create instance"}
    Incoming Webhook
    "Created! => ssh ayemos-workbench-001"
    (Lambda Proxy)
    {text: "Create instance"}
    1. Route command
    2. Perform operations (on EC2)
    3. Send the responce back via webhook

    View full-size slide

  17. CUDA9
    cuDNN7
    CUDA8
    cuDNN7
    CUDA8
    cuDNN6
    ...
    `ssh`
    ...
    API Gateway
    Outgoing Webhook
    {text: "Create instance"}
    Incoming Webhook
    "Created! => ssh ayemos-workbench-001"
    (Lambda Proxy)
    {text: "Create instance"}
    1. Route command
    2. Perform operations (on EC2)
    3. Send the responce back via webhook

    View full-size slide

  18. ‣ ΫοΫύουͷ࣮ݧ؀ڥʹ͓͚Δ(16ར༻ঢ়گ
    ‣ 1ΠϯελϯεͷධՁ

    "HFOEB

    View full-size slide

  19. ‣ ΫοΫύουͷ࣮ݧ؀ڥʹ͓͚Δ(16ར༻ঢ়گ
    ‣ 1ΠϯελϯεͷධՁ

    "HFOEB
    4QPJMFS
    ʮ1͸࠷ߴʯ

    View full-size slide

  20. ‣ ΧςΰϦ߹ܭສຕͷը૾Λ࢖ͬͨ$MBTTJpFSͷֶश
    (PPH-F/FUΛ࢓༷
    ීஈΫοΫύουͰߦΘΕ͍ͯΔΑ͏ͳ࣮ݧʹ͍ۙ΋ͷ

    ‣ FQPDIͷֶशʹֻ͔Δ࣌ؒΛ11Ͱൺֱ

    ϕϯνϚʔΫ

    View full-size slide


  21. 1 7

    $6%"DV%//
    1 ,

    $6%"DV%//
    #BUDI4J[F NT N
    NT NT
    NT NT
    NT 00.

    View full-size slide

  22. ‣ ࣮ݧͷ࣮ߦ࣌ؒ͸ߴʑ਺࣌ؒͰ͋Δ͜ͱ͕ଟ͍

    .VMUJ(16ͷར༻ɺ෼ࢄʹର͢Δχʔζ͸ ݱঢ়
    ͋·Γߴ͘ͳ͍
    ‣ ֶशεΫϦϓτͷ.VMUJ(16ରԠ͸ͦΕࣗମ࣮૷ίετ͕͋Δ
    ‣ ͳͷͰɺϘʔυ୯ମ͕ૣ͘ͳΔͷ͸ͱͯ΋خ͍͠

    ߟ࡯

    View full-size slide

  23. ‣ 1ͷ͍͍ͱ͜Ζ
    &$Ͱ͋Δ
    ຕຕ͕଎͍

    ·ͱΊ

    View full-size slide