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

超並列経路探索アルゴリズムでP3を使ってみた

 超並列経路探索アルゴリズムでP3を使ってみた

AWS EC2 P3 インスタンス ローンチイベントで発表した資料です。
https://pages.awscloud.com/P3-Launch-Event.html

NAVITIME JAPAN
PRO

November 15, 2017
Tweet

More Decks by NAVITIME JAPAN

Other Decks in Technology

Transcript

  1. 超並列経路探索アルゴリズムで
    P3を使ってみた
    株式会社ナビタイムジャパン
    小田中 育生
    吉濱 誠
    2017.11.09
    1
    NAVITIME JAPAN Co., Ltd.

    View Slide

  2. アジェンダ
     自己紹介
     ナビタイムについて
     P3インスタンス評価方法
     G2 vs P3
     考察
     コストについて
     まとめ
    2
    NAVITIME JAPAN Co., Ltd.

    View Slide

  3. 自己紹介
    NAVITIME JAPAN Co., Ltd.
    3

    View Slide

  4. 自己紹介
    NAVITIME JAPAN Co., Ltd.
    4
    株式会社ナビタイムジャパン
    開発部 部長
    ACTS(研究開発) ルートグループ責任者
    小田中 育生
    経路探索エンジン研究開発グループ責任者
    2016
    2017
    経路探索エンジン、交通情報配信システムの開発

    View Slide

  5. 自己紹介
    NAVITIME JAPAN Co., Ltd.
    5
    Pepperアプリ開発や、Cognitive Serviceを積極的に活用したチャットボットの開発を担当
    2016
    GPGPUを利用した超並列探索アルゴリズムのプロトタイプ開発を担当
    2017
    サーバサイドAPI開発、経路探索エンジンの開発
    株式会社ナビタイムジャパン
    開発部
    ACTS(研究開発) シニアエンジニア
    吉濱 誠

    View Slide

  6. ナビタイムについて
    NAVITIME JAPAN Co., Ltd.
    6

    View Slide

  7. 経営ビジョン
    NAVITIME JAPAN Co., Ltd.
    7
    安心・安全な移動の支援
    移動にかかるストレスをなくし、ひとりひとりの
    限られた時間の中に、より有益な時間が生まれること

    View Slide

  8. NAVITIME JAPAN Co., Ltd.
    8
    サービス概要
    (2017年9月末時点)

    View Slide

  9. NAVITIME JAPAN Co., Ltd.
    9
    サービス概要

    View Slide

  10. 経路探索にGPUを利用する
     月間ユーザ数の増加
    3700万人(2017年6月末) → 3900万人(2017年9月末)
    処理時間の高速化が必要
     経路品質の向上
    既存アルゴリズムでは出てこない経路が出るようになる
    品質、処理速度の向上のため、経路探索をパラダイムシフトする
    10

    View Slide

  11. P3インスタンス評価方法
    NAVITIME JAPAN Co., Ltd.
    11

    View Slide

  12. P3インスタンス評価方法
    NAVITIME JAPAN Co., Ltd.
    12
    • 全国のネットワーク(2700万リンク)に対して1
    スレッドずつ割り当てる
    • つまり1探索イテレーションで2700万スレッド
    • 探索処理は変数の代入のみ
    • ネットワークデータの容量は2.6GB
    全てGPUに載せる

    View Slide

  13. 結果
    NAVITIME JAPAN Co., Ltd.
    13

    View Slide

  14. g2.2xlarge(Kepler K80) VS p3.2xlarge(Volta V100)
    NAVITIME JAPAN Co., Ltd.
    14
    探索理処速度は380%、メモリ転送速度は220%高速化

    View Slide

  15. 考察
    NAVITIME JAPAN Co., Ltd.
    15

    View Slide

  16. 考察
     経路探索問題はメモリの連続性が低いため、パフォー
    マンス向上の主要因はSM数だと思われる
    g2.2xlarge(Kepler K80) : 13
    p3.2xlarge(Volta V100) : 80
     メモリ転送速度はメモリ帯域幅が主要因と考えられる
    g2.2xlarge(Kepler K80) : 240 [GB/s]
    p3.2xlarge(Volta V100) : 900 [GB/s]
    NAVITIME JAPAN Co., Ltd.
    16

    View Slide

  17. コストについて
    NAVITIME JAPAN Co., Ltd.
    17

    View Slide

  18. インスタンスの料金
    NAVITIME JAPAN Co., Ltd.
    18
    オンデマンド
    リザーブドインスタンス
    1年前払い
    (実質的時間単価)
    スポットインスタンス
    Linux
    g2.2xlarge 0.898 $/h
    0.587 $/h
    0.254 $/h
    ~ max 8.98 $/h
    p2.xlarge 1.542 $/h
    1.080 $/h
    0.257 $/h
    ~ max 15.42 $/h
    p3.2xlarge 5.243 $/h
    3.427 $/h
    0.689 $/h
    ~ max 52.43 $/h
    ※2017.11.01時点での情報

    View Slide

  19. インスタンスの料金
    NAVITIME JAPAN Co., Ltd.
    19
    オンデマンド
    リザーブドインスタンス
    1年前払い
    (実質的時間単価)
    スポットインスタンス
    Linux
    g2.2xlarge 0.898 $/h
    0.587 $/h
    0.254 $/h
    ~ max 8.98 $/h
    p2.xlarge 1.542 $/h
    1.080 $/h
    0.257 $/h
    ~ max 15.42 $/h
    p3.2xlarge 5.243 $/h
    3.427 $/h
    0.689 $/h
    ~ max 52.43 $/h
    ※2017.11.01時点での情報

    View Slide

  20. インスタンスの料金
    NAVITIME JAPAN Co., Ltd.
    20
    オンデマンド
    リザーブドインスタンス
    1年前払い
    (実質的時間単価)
    スポットインスタンス
    Linux
    g2.2xlarge 0.898 $/h
    0.587 $/h
    0.254 $/h
    ~ max 8.98 $/h
    p2.xlarge 1.542 $/h
    1.080 $/h
    0.257 $/h
    ~ max 15.42 $/h
    p3.2xlarge 5.243 $/h
    3.427 $/h
    0.689 $/h
    ~ max 52.43 $/h
    ※2017.11.01時点での情報

    View Slide

  21. インスタンスの料金
    NAVITIME JAPAN Co., Ltd.
    21
    オンデマンド
    リザーブドインスタンス
    1年前払い
    (実質的時間単価)
    スポットインスタンス
    Linux
    g2.2xlarge 0.898 $/h
    0.587 $/h
    0.254 $/h
    ~ max 8.98 $/h
    p2.xlarge 1.542 $/h
    1.080 $/h
    0.257 $/h
    ~ max 15.42 $/h
    p3.2xlarge 5.243 $/h
    3.427 $/h
    0.689 $/h
    ~ max 52.43 $/h
    ※2017.11.01時点での情報

    View Slide

  22. スポットインスタンスをメインに運用を考える
    NAVITIME JAPAN Co., Ltd.
    22
    • スポットインスタンスを利用すると
    性能差3.8倍のインスタンスを2.7倍
    のコストで利用できる
    • 可用性の保険としてリザーブドイン
    スタンス、スケールアウト速度の保
    険としてオンデマンドを併用するこ
    とでトータルのコストを性能差以内
    に抑えられそう

    View Slide

  23. スポットインスタンスをメインに運用を考える…?
    NAVITIME JAPAN Co., Ltd.
    23
    • P3インスタンス使われだしている模様
    • サーバ用途は厳しいかも…
    • 現状では機械学習用途の方が相性がいい気も
    する
    • スポットインスタンスの価格安定性を考える
    とP2の方がサーバ用途としては良さそう
    p2.xlarge
    p3.2xlarge

    View Slide

  24. まとめ
    NAVITIME JAPAN Co., Ltd.
    24

    View Slide

  25. まとめ
     P3インスタンスを使うことで処理速度が3.8倍、メモ
    リ転送速度が2.2倍になることが分かった
     コストも処理速度の性能向上とほぼリニアなため、
    インスタンスの種類を工夫することで現実的な運用
    ができそう
    NAVITIME JAPAN Co., Ltd.
    25

    View Slide

  26. NAVITIME JAPAN Co., Ltd.
    26
    ご清聴ありがとうございました

    View Slide