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

nvidia-jetson-x-deep-learning

E04bc05dadd5b740eb040e094e2bf5f5?s=47 toshitanian
February 06, 2018

 nvidia-jetson-x-deep-learning

E04bc05dadd5b740eb040e094e2bf5f5?s=128

toshitanian

February 06, 2018
Tweet

Transcript

  1. NVIDIA Jetson × Deep Learning ABEJA Cloud AI Night 2018/02/05

    ABEJA, Inc Toshiya Kawasaki
  2. 河崎 敏弥 @toshitanian ABEJA, Inc. Platform Division Lead Engineer •創業1年の時にABEJAに参画

    •バックエンドエンジニア •クラウド上でシステム構築 •IoTデバイスとのシステム連携 •コンテナ •エッジコンピューティング •安価なIoTカメラ上でソフトを書いたり…
  3. 社名 株式会社ABEJA 設立 2012年9月10日 住所 東京都港区虎ノ門4-1-20 田中山ビル10F 資本金 (資本準備金含む) 1,148,518,043円

    企業理念 イノベーションで世界を変える 事業内容 ディープラーニングを活用した 産業構造変革
  4. None
  5. • エンジニア・デザイナが色々な話を書いてます • ML/DL • AWS・インフラ • IoT • デザイン

    ABEJA Tech Blog 5 http://tech-blog.abeja.asia/
  6. •Edge computing •NVIDIA Jetson •Overview •Softwares •Running deep learning application

    Agenda 6
  7. Edge computing

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

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

    •データ量が大きすぎて、ネットワーク帯域の問題でクラウドに送れない •クラウド側で集中処理するにはデータ量が多すぎる 何故エッジコンピューティングをやりたいか 9
  10. エッジとクラウドの連携 10 引用: https://devblogs.nvidia.com/parallelforall/category/features/page/3/ クラウド: ハイパフォーマンスでスケーラブルな計算リソースを利用して学習 エッジ : 高スループット・低レイテンシな推論処理

  11. Jetson Overview

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

  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/
  14. クラウディアン様 AI Box (LTE通信機能付) 14

  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
  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
  17. Jetson Softwares

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

  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
  20. Running deep learning application on Jetson

  21. •Deep Stream SDK on Jetson のExample App(車両認識) •30 fps Deep

    learning example on Jetson (1) 21 引用: NVIDIA DeepStream SDK on Jetson Development Guideより
  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/
  23. •学習用データ(実環境に近いもの)の収集 •クラウドで学習したモデルのエッジデバイスへの適用 •デバイス自体のモニタリング •実環境でのモデルのモニタリング •デバイス・アクセラレータ毎の最適化 •etc… クラウドとエッジ連携での課題 23