$30 off During Our Annual Pro Sale. View Details »

nvidia-jetson-x-deep-learning

toshitanian
February 06, 2018

 nvidia-jetson-x-deep-learning

toshitanian

February 06, 2018
Tweet

More Decks by toshitanian

Other Decks in Technology

Transcript

  1. NVIDIA Jetson
    × Deep Learning
    ABEJA Cloud AI Night
    2018/02/05
    ABEJA, Inc
    Toshiya Kawasaki

    View Slide

  2. 河崎 敏弥 @toshitanian
    ABEJA, Inc.
    Platform Division
    Lead Engineer
    •創業1年の時にABEJAに参画
    •バックエンドエンジニア
    •クラウド上でシステム構築
    •IoTデバイスとのシステム連携
    •コンテナ
    •エッジコンピューティング
    •安価なIoTカメラ上でソフトを書いたり…

    View Slide

  3. 社名 株式会社ABEJA
    設立 2012年9月10日
    住所 東京都港区虎ノ門4-1-20 田中山ビル10F
    資本金
    (資本準備金含む)
    1,148,518,043円
    企業理念 イノベーションで世界を変える
    事業内容
    ディープラーニングを活用した
    産業構造変革

    View Slide

  4. View Slide

  5. • エンジニア・デザイナが色々な話を書いてます
    • ML/DL
    • AWS・インフラ
    • IoT
    • デザイン
    ABEJA Tech Blog
    5
    http://tech-blog.abeja.asia/

    View Slide

  6. •Edge computing
    •NVIDIA Jetson
    •Overview
    •Softwares
    •Running deep learning application
    Agenda
    6

    View Slide

  7. Edge computing

    View Slide

  8. エッジコンピューティングとは
    8
    “データ・ソースの近く、ネットワークのエッジでデータ処理を実行する
    ことによって、クラウドコンピューティングシステムを最適化する方法”
    (Wikipedia調べ)
    本資料ではエッジサイドでの動画・画像等へのDeep Learningの適
    用を対象としています

    View Slide

  9. •Latency
    •低レイテンシ/固定レイテンシでデータの処理をする必要がある
    •インターネット経由のAPIリクエストのターンアラウンドを許容できない場合がある
    •Connectivity
    •インターネットに常時接続できない環境でも処理は継続的に実行される必要がある
    •Security
    •セキュリティ上の利用でデータの事前処理してクラウドに送る必要がある
    •もしくは、一切のデータをクラウドに送らずにエッジ側でアクションまで行う必要がある
    •Data Size
    •データ量が大きすぎて、ネットワーク帯域の問題でクラウドに送れない
    •クラウド側で集中処理するにはデータ量が多すぎる
    何故エッジコンピューティングをやりたいか
    9

    View Slide

  10. エッジとクラウドの連携
    10
    引用: https://devblogs.nvidia.com/parallelforall/category/features/page/3/
    クラウド: ハイパフォーマンスでスケーラブルな計算リソースを利用して学習
    エッジ : 高スループット・低レイテンシな推論処理

    View Slide

  11. Jetson Overview

    View Slide

  12. •この資料はNVIDIA様公式の資料ではありません
    •情報が間違っている・古くなっている可能性があります
    •気になった方は公式ドキュメントを参照ください
    Disclaimer
    12

    View Slide

  13. •“クレジットカードサイズで驚異的な性能を誇るAIスーパーコンピューター”
    •GPU搭載
    •ARM CPU
    NVIDIA Jetson
    13
    TX2 TX1
    GPU NVIDIA Pascal™, 256 CUDA cores NVIDIA Maxwell ™, 256 CUDA cores
    CPU
    HMP Dual Denver 2/2 MB L2
    + Quad ARM® A57/2 MB L2
    Quad ARM® A57/2 MB L2
    Video
    4K x 2K 60 Hz Encode (HEVC) 4K x 2K 60 Hz
    Decode (12-Bit Support)
    4K x 2K 30 Hz Encode (HEVC) 4K x 2K 60
    Hz Decode (10-Bit Support)
    Memory 8 GB 128 bit LPDDR4 59.7 GB/s 4 GB 64 bit LPDDR4 25.6 GB/s
    Display 2x DSI, 2x DP 1.2 / HDMI 2.0 / eDP 1.4 2x DSI, 1x eDP 1.4 / DP 1.2 / HDMI
    CSI
    Up to 6 Cameras (2 Lane) CSI2 D-PHY 1.2 (2.5
    Gbps/Lane)
    Up to 6 Cameras (2 Lane) CSI2 D-PHY 1.1
    (1.5 Gbps/Lane)
    引用: https://www.nvidia.com/en-us/autonomous-machines/embedded-systems-dev-kits-modules/

    View Slide

  14. クラウディアン様 AI Box (LTE通信機能付)
    14

    View Slide

  15. •OS Image (L4T 28.1)
    •Ubuntu16.04 / Kernel 4.4
    •Libraries
    •CUDA 8.0 / cuDNN 6.0
    •OpenCV4Tegra 2.4.13 / etc…
    •TensorRT 2.1
    •Developer Kit
    •Tegra Graphics Debugger 2.4 / Tegra System Profiler 3.7
    •※Jetpack 3.1時点
    Jetpack SDK
    15
    引用: https://developer.nvidia.com/embedded/jetpack-notes

    View Slide

  16. •現在はDeveloper Preview
    •OS Image
    •L4T 28.1 → L4T 28.2
    •Kernel is pre-configured to support Docker
    •Libraries
    •cuDNN 6.0 → cuDNN v7.0.5 RC
    •CUDA 8.0 → CUDA 9.0
    •OpenCV4Tegra 2.4.13 → OpenCV 3.3.1
    •TensorRT 2.1 → TensorRT 3.0
    •etc…
    Jetpack 3.2
    16
    引用: https://developer.nvidia.com/embedded/jetpack-notes

    View Slide

  17. Jetson Softwares

    View Slide

  18. •トレーニング済みのネットワークから、ターゲットGPU向けに推論エンジンを最適化
    •Jetson TX2向けの最適化
    •FP32からINT8への変換も自動でしてくれる
    •キャリブレーションの情報、データセットを指定すると可能
    •通常のフレームワーク利用と比較して高スループットを得る事が可能
    TensorRT
    18
    引用:https://developer.nvidia.com/tensorrt

    View Slide

  19. •DNNのためのメディア・ストリーム処理フレームワーク
    •GStreamer のプラグインとして提供
    •提供されているelement (一部)
    •GST-nvcaffeGIE - caffeのモデルを走らせるためのelement
    •GST-nvtracker - object tracking API
    •GST-nvosd - camera等の入力にoverlayで画面を構成する
    DeepStream SDK on Jetson
    19
    引用: https://developer.nvidia.com/deepstream-jetson

    View Slide

  20. Running deep learning application on Jetson

    View Slide

  21. •Deep Stream SDK on Jetson のExample App(車両認識)
    •30 fps
    Deep learning example on Jetson (1)
    21
    引用: NVIDIA DeepStream SDK on Jetson Development Guideより

    View Slide

  22. •Realtime object detection
    •SSD (Single Shot MultiBox Detector)
    •Based on mxnet example
    •inception-v3 with 512x512
    •python
    •mxnet-jetson-tx2 (0.12.0)
    •1 camera / batch size: 1
    •Result: 5 fps
    Deep learning example on Jetson (2)
    22
    github incubator-mxnet/example/ssd/

    View Slide

  23. •学習用データ(実環境に近いもの)の収集
    •クラウドで学習したモデルのエッジデバイスへの適用
    •デバイス自体のモニタリング
    •実環境でのモデルのモニタリング
    •デバイス・アクセラレータ毎の最適化
    •etc…
    クラウドとエッジ連携での課題
    23

    View Slide