Submit Search
TensorRT Inference Serverではじめる、 高性能な推論サーバ構築
4 likes
4,745 views
NVIDIA Japan
この資料は 2019 年 10 月 30 日に開催された GPU Deep Learning Community #12 にて、NVIDIAの山崎和博が発表した際のものです。
Technology
Read more
1 of 24
Download now
Downloaded 33 times
1
2
3
4
5
6
7
8
9
10
Most read
11
12
Most read
13
14
15
16
17
18
19
Most read
20
21
22
23
24
More Related Content
PDF
モデルアーキテクチャ観点からのDeep Neural Network高速化
Yusuke Uchida
PDF
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
PDF
機械学習モデルの判断根拠の説明
Satoshi Hara
PPTX
畳み込みニューラルネットワークの高精度化と高速化
Yusuke Uchida
PDF
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
PDF
Deeplearning輪読会
正志 坪坂
PPTX
近年のHierarchical Vision Transformer
Yusuke Uchida
PDF
3次元レジストレーション(PCLデモとコード付き)
Toru Tamaki
モデルアーキテクチャ観点からのDeep Neural Network高速化
Yusuke Uchida
ソーシャルゲームのためのデータベース設計
Yoshinori Matsunobu
機械学習モデルの判断根拠の説明
Satoshi Hara
畳み込みニューラルネットワークの高精度化と高速化
Yusuke Uchida
いまさら聞けない!CUDA高速化入門
Fixstars Corporation
Deeplearning輪読会
正志 坪坂
近年のHierarchical Vision Transformer
Yusuke Uchida
3次元レジストレーション(PCLデモとコード付き)
Toru Tamaki
What's hot
(20)
PPTX
全体セミナー20170629
Jiro Nishitoba
PDF
機械学習で泣かないためのコード設計
Takahiro Kubo
PDF
POMDP下での強化学習の基礎と応用
Yasunori Ozaki
PDF
20190619 オートエンコーダーと異常検知入門
Kazuki Motohashi
PPTX
BERT分類ワークショップ.pptx
Kouta Nakayama
PDF
協調フィルタリングを利用した推薦システム構築
Masayuki Ota
PDF
最適化超入門
Takami Sato
PDF
協調フィルタリング入門
hoxo_m
PPTX
Curriculum Learning (関東CV勉強会)
Yoshitaka Ushiku
PDF
BERT入門
Ken'ichi Matsui
PDF
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
Deep Learning JP
PDF
見やすいプレゼン資料の作り方 - リニューアル増量版
MOCKS | Yuta Morishige
PDF
TensorFlow XLAは、 中で何をやっているのか?
Mr. Vengineer
PDF
Rustに触れて私のPythonはどう変わったか
ShunsukeNakamura17
PDF
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
PPTX
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
RyuichiKanoh
PPTX
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
Yusuke Uchida
PDF
TVM の紹介
Masahiro Masuda
PDF
[DL輪読会]Deep Learning 第15章 表現学習
Deep Learning JP
PPTX
Transformerを雰囲気で理解する
AtsukiYamaguchi1
全体セミナー20170629
Jiro Nishitoba
機械学習で泣かないためのコード設計
Takahiro Kubo
POMDP下での強化学習の基礎と応用
Yasunori Ozaki
20190619 オートエンコーダーと異常検知入門
Kazuki Motohashi
BERT分類ワークショップ.pptx
Kouta Nakayama
協調フィルタリングを利用した推薦システム構築
Masayuki Ota
最適化超入門
Takami Sato
協調フィルタリング入門
hoxo_m
Curriculum Learning (関東CV勉強会)
Yoshitaka Ushiku
BERT入門
Ken'ichi Matsui
[DL輪読会]Learning Transferable Visual Models From Natural Language Supervision
Deep Learning JP
見やすいプレゼン資料の作り方 - リニューアル増量版
MOCKS | Yuta Morishige
TensorFlow XLAは、 中で何をやっているのか?
Mr. Vengineer
Rustに触れて私のPythonはどう変わったか
ShunsukeNakamura17
Transformerを多層にする際の勾配消失問題と解決法について
Sho Takase
勾配ブースティングの基礎と最新の動向 (MIRU2020 Tutorial)
RyuichiKanoh
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
Yusuke Uchida
TVM の紹介
Masahiro Masuda
[DL輪読会]Deep Learning 第15章 表現学習
Deep Learning JP
Transformerを雰囲気で理解する
AtsukiYamaguchi1
Ad
Similar to TensorRT Inference Serverではじめる、 高性能な推論サーバ構築
(20)
PDF
使ってみませんか?pg hint_plan
Masao Fujii
PDF
Deeplearning bank marketing dataset
TellSun
PDF
perfを使ったPostgreSQLの解析(前編)
Daichi Egawa
PDF
Orb dlt technical_overview(特許情報なし)
Wataru Fukatsu
PDF
マイクロソフトが考えるAI活用のロードマップ
Deep Learning Lab(ディープラーニング・ラボ)
PDF
メディアコンテンツを支えるデータストアサービスをAWSで
Yasuhiro Murata
PDF
[B16] NonStop SQLはなぜグローバルに分散DBを構築できるのか、データの整合性を保てるのか、その深層に迫るby Toshimitsu hara
Insight Technology, Inc.
PDF
Quantastorを使ったhybrid cloudについて_20140725
AFfirmBP
PDF
SpectreとMeltdown:最近のCPUの深い話
LINE Corporation
PPTX
【宝くじ仮説】The Lottery Ticket Hypothesis: Finding Small, Trainable Neural Networks
Yosuke Shinya
PDF
Ansibleで構成管理始める人のモチベーションをあげたい! (Cloudera World Tokyo 2014LT講演資料)
NTT DATA OSS Professional Services
PDF
【17-B-3】 チケット駆動開発 タスクマネジメントからAgile開発へ part1
Makoto SAKAI
PPTX
Deep Learning on Rescale - Oct/11/2016 at Rescale night
Rescale Japan株式会社
PDF
サポートスペシャリストが語るXenDesktop / XenApp環境での最速トラブルシューティング
Citrix Systems Japan
PDF
TensorFlowの使い方(in Japanese)
Toshihiko Yamakami
PDF
Jubatus分類器の活用テクニック
JubatusOfficial
PDF
ヒーロー島 Visual Studio 2012
智治 長沢
PPTX
NW入門
Shuntaro Saiba
PPTX
ビッグデータ&データマネジメント展
Recruit Technologies
PPTX
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
NTT Communications Technology Development
使ってみませんか?pg hint_plan
Masao Fujii
Deeplearning bank marketing dataset
TellSun
perfを使ったPostgreSQLの解析(前編)
Daichi Egawa
Orb dlt technical_overview(特許情報なし)
Wataru Fukatsu
マイクロソフトが考えるAI活用のロードマップ
Deep Learning Lab(ディープラーニング・ラボ)
メディアコンテンツを支えるデータストアサービスをAWSで
Yasuhiro Murata
[B16] NonStop SQLはなぜグローバルに分散DBを構築できるのか、データの整合性を保てるのか、その深層に迫るby Toshimitsu hara
Insight Technology, Inc.
Quantastorを使ったhybrid cloudについて_20140725
AFfirmBP
SpectreとMeltdown:最近のCPUの深い話
LINE Corporation
【宝くじ仮説】The Lottery Ticket Hypothesis: Finding Small, Trainable Neural Networks
Yosuke Shinya
Ansibleで構成管理始める人のモチベーションをあげたい! (Cloudera World Tokyo 2014LT講演資料)
NTT DATA OSS Professional Services
【17-B-3】 チケット駆動開発 タスクマネジメントからAgile開発へ part1
Makoto SAKAI
Deep Learning on Rescale - Oct/11/2016 at Rescale night
Rescale Japan株式会社
サポートスペシャリストが語るXenDesktop / XenApp環境での最速トラブルシューティング
Citrix Systems Japan
TensorFlowの使い方(in Japanese)
Toshihiko Yamakami
Jubatus分類器の活用テクニック
JubatusOfficial
ヒーロー島 Visual Studio 2012
智治 長沢
NW入門
Shuntaro Saiba
ビッグデータ&データマネジメント展
Recruit Technologies
【たぶん日本初導入!】Azure Stack Hub with GPUの性能と機能紹介
NTT Communications Technology Development
Ad
More from NVIDIA Japan
(20)
PDF
HPC 的に H100 は魅力的な GPU なのか?
NVIDIA Japan
PDF
NVIDIA cuQuantum SDK による量子回路シミュレーターの高速化
NVIDIA Japan
PDF
Physics-ML のためのフレームワーク NVIDIA Modulus 最新事情
NVIDIA Japan
PDF
20221021_JP5.0.2-Webinar-JP_Final.pdf
NVIDIA Japan
PDF
開発者が語る NVIDIA cuQuantum SDK
NVIDIA Japan
PDF
NVIDIA Modulus: Physics ML 開発のためのフレームワーク
NVIDIA Japan
PDF
NVIDIA HPC ソフトウエア斜め読み
NVIDIA Japan
PDF
HPC+AI ってよく聞くけど結局なんなの
NVIDIA Japan
PDF
Magnum IO GPUDirect Storage 最新情報
NVIDIA Japan
PDF
データ爆発時代のネットワークインフラ
NVIDIA Japan
PDF
Hopper アーキテクチャで、変わること、変わらないこと
NVIDIA Japan
PDF
GPU と PYTHON と、それから最近の NVIDIA
NVIDIA Japan
PDF
GTC November 2021 – テレコム関連アップデート サマリー
NVIDIA Japan
PDF
テレコムのビッグデータ解析 & AI サイバーセキュリティ
NVIDIA Japan
PDF
必見!絶対におすすめの通信業界セッション 5 つ ~秋の GTC 2020~
NVIDIA Japan
PDF
2020年10月29日 プロフェッショナルAI×Roboticsエンジニアへのロードマップ
NVIDIA Japan
PDF
2020年10月29日 Jetson活用によるAI教育
NVIDIA Japan
PDF
2020年10月29日 Jetson Nano 2GBで始めるAI x Robotics教育
NVIDIA Japan
PDF
COVID-19 研究・対策に活用可能な NVIDIA ソフトウェアと関連情報
NVIDIA Japan
PDF
Jetson Xavier NX クラウドネイティブをエッジに
NVIDIA Japan
HPC 的に H100 は魅力的な GPU なのか?
NVIDIA Japan
NVIDIA cuQuantum SDK による量子回路シミュレーターの高速化
NVIDIA Japan
Physics-ML のためのフレームワーク NVIDIA Modulus 最新事情
NVIDIA Japan
20221021_JP5.0.2-Webinar-JP_Final.pdf
NVIDIA Japan
開発者が語る NVIDIA cuQuantum SDK
NVIDIA Japan
NVIDIA Modulus: Physics ML 開発のためのフレームワーク
NVIDIA Japan
NVIDIA HPC ソフトウエア斜め読み
NVIDIA Japan
HPC+AI ってよく聞くけど結局なんなの
NVIDIA Japan
Magnum IO GPUDirect Storage 最新情報
NVIDIA Japan
データ爆発時代のネットワークインフラ
NVIDIA Japan
Hopper アーキテクチャで、変わること、変わらないこと
NVIDIA Japan
GPU と PYTHON と、それから最近の NVIDIA
NVIDIA Japan
GTC November 2021 – テレコム関連アップデート サマリー
NVIDIA Japan
テレコムのビッグデータ解析 & AI サイバーセキュリティ
NVIDIA Japan
必見!絶対におすすめの通信業界セッション 5 つ ~秋の GTC 2020~
NVIDIA Japan
2020年10月29日 プロフェッショナルAI×Roboticsエンジニアへのロードマップ
NVIDIA Japan
2020年10月29日 Jetson活用によるAI教育
NVIDIA Japan
2020年10月29日 Jetson Nano 2GBで始めるAI x Robotics教育
NVIDIA Japan
COVID-19 研究・対策に活用可能な NVIDIA ソフトウェアと関連情報
NVIDIA Japan
Jetson Xavier NX クラウドネイティブをエッジに
NVIDIA Japan
TensorRT Inference Serverではじめる、 高性能な推論サーバ構築
1.
Kazuhiro Yamasaki, Deep
Learning Solution Architect, NVIDIA, 10/30/2019 GPU DEEP LEARNING COMMUNITY #12 TENSORRT INFERENCE SERVERではじめる、 高性能な推論サーバ構築
2.
2 AGENDA ディープラーニングの推論処理 TensorRT Inference Server
(TRTIS) とは? デプロイに必要なこと パフォーマンスチューニング デモ:音声認識モデルのデプロイ
3.
3 本日話す内容 サーバ側での推論に特化しています (Jetsonでの推論はスコープ外です)
4.
4 ディープラーニングにおける処理の分類 典型的には2つ
5.
5 推論処理で気をつける指標 トレードオフの関係 スループット (or 同時接続数) 遅延 精度 (accuracy, etc)
6.
6 推論処理で気をつける指標 トレードオフの関係 スループット (or 同時接続数) 遅延 精度 (accuracy, etc) 量子化
(特にINT8) で高速化 → 何もしないと精度低下の可能性 (calibration 等で対処)
7.
7 GPUを使った推論の場合 バッチ的に処理するほうが高速 1 3 2 ひとつずつ、順番に処理するのは効率が良くない
8.
8 GPUを使った推論の場合 バッチ的に処理するほうが高速 1 2 3
1,2,3 複数の処理を束ねて実行することで、スループットを改善 (束ねるために待ちすぎると遅延が悪化)
9.
9 GPUを使った推論の場合 特性を生かした処理のために必要な機構 一定時間内に受け付けた 複数の推論処理リクエストを束ねる REQUEST QUEUE GPU上に複数のモデルを展開し 同時に多数の処理を実行 CONCURRENT EXECUTION 1
2 3 1,2,3
10.
10 TENSORRT INFERENCE SERVER
(TRTIS) GPUに最適化された推論サーバのOSS実装 Models supported ● TensorRT Plans ● TensorFlow GraphDef/SavedModel ● TensorFlow and TensorRT GraphDef ● PyTorch JIT (.pt) ● ONNX graph ● Caffe2 NetDef (ONNX import) Multi-GPU support Concurrent model execution Server HTTP REST API/gRPC Python/C++ client libraries https://github.com/NVIDIA/tensorrt-inference-server
11.
11 TENSORRT INFERENCE SERVER
(TRTIS) 特徴的な機能 Concurrent Model Execution 複数モデル (同じモデルを複数個もOK) を同 時にGPU上で実行 CPU Model Inference Execution CPUでの推論実行もサポート Metrics GPU使用率、推論回数、メモリ使用量、実 行時間など Custom Backend 共有ライブラリとして実装された処理を custom backendとして使用可能 Model Ensemble 複数のモデルの入出力をつないでパイプライン 化することも可能 Dynamic Batching 事前定義の最大数および最大遅延を基準 に、推論リクエストをバッチにまとめる Multiple Model Format Support TensorRT Plans TensorFlow GraphDef/SavedModel TensorFlow and TensorRT GraphDef PyTorch JIT (.pt) ONNX graph (ONNX Runtime) Caffe2 NetDef (ONNX import path) CMake build ソースコードからビルドすることで、複数OSへの ポーティング等が容易に Streaming API 音声認識のようなストリーミング等もサポート
12.
12 TRTISに学習済みモデルをデプロイするには? モデルの配置と設定ファイル (config.pbtxt) の記述 models/ +--
resnet/ | +-- config.pbtxt | +-- 1/ | | +-- saved_model.pb | : +-- ssd/ | +-- config.pbtxt | +-- 1/ | +-- model.trtengine : 設定ファイル 学習済みモデル学習済みモデル モデルにバージョンを 定義可能 ディレクトリ構成 trtserver --model-repository=/models 起動コマンド または NGC のコンテナイメージを利用 (本資料末尾参照)
13.
13 TRTISに学習済みモデルをデプロイするには? モデルの配置と設定ファイル (config.pbtxt) の記述 config.pbtxt
(例) name: "resnet" platform: "tensorflow_savedmodel" max_batch_size: 64 input { name: "input" data_type: TYPE_FP32 format: FORMAT_NHWC dims: [ 224, 224, 3 ] } output { name: "probabilities" data_type: TYPE_FP32 dims: 1000 } default_model_filename: "saved_model" instance_group [ { count: 1 kind: KIND_GPU } ] dynamic_batching { preferred_batch_size: [ 16 ] max_queue_delay_microseconds: 20000 }
14.
14 パフォーマンスに影響する主な設定項目 同時実行数とリクエストキュー config.pbtxt (例) default_model_filename: "saved_model" instance_group
[ { count: 1 kind: KIND_GPU } ] dynamic_batching { preferred_batch_size: [ 16 ] max_queue_delay_microseconds: 20000 } GPU上にモデルを何個 展開するか指定 リクエストを最大いくつ 束ねるかの指定 キューでの最大 待ち時間 (マイクロ秒)
15.
15 パフォーマンスに影響する主な設定項目 同時実行数とリクエストキュー https://cloud.withgoogle.com/next/ tokyo/speakers?session=D1-2-S12 設定をチューニングした一例↓ GCP で構築する高性能かつスケーラブルなオンライン予測システム https://medium.com/google-cloud-jp/building-high- performance-online-prediction-system-on-gcp-12b57ca44284
16.
16 とはいえ画像ばかりでは 面白くないですよね?
17.
17 デモ 音声認識モデルを例に Jasper: An End-to-End
Convolutional Neural Acoustic Model https://github.com/NVIDIA/DeepLearningExamples/tree/ master/PyTorch/SpeechRecognition/Jasper
18.
18 デモ 音声認識モデルを例に config.pbtxt name: "jasper" platform: "tensorrt_plan" max_batch_size:
1 input [ { name: "FEATURES" data_type: TYPE_FP32 dims: [ 64, 3600 ] } ] output [ { name: "LOGITS" data_type: TYPE_FP32 dims: [ 1800, 29 ] } ] default_model_filename: "model.engine" instance_group [ { count: 1 kind: KIND_GPU } ]
19.
19 デモ 音声認識モデルを例に .js Backend server TRTIS Frontend server 1. 2. 3. Full I
am aiI am AI.
20.
20 余談: K8Sでオートスケール Prometheusとの連携でさらに高度な監視も apiVersion: autoscaling/v2beta1 kind:
HorizontalPodAutoscaler metadata: name: inference-server-v1-hpa namespace: default spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: inference-server-v1 minReplicas: 2 maxReplicas: 5 設定の一例 metrics: - type: Resource resource: name: cpu targetAverageUtilization: 50 スケーリングする基準を設定 (Prometheus経由の metricsも利用可能)
21.
21 まとめ TensorRT Inference Serverを使うと、高速な推論サーバを簡単に構築できる TensorRTだけではなく、多数のモデルフォーマットに対応 画像以外のデータにも対応 Kubernetesと組み合わせることで、スケーリング等にも対応できる Key
takeaways
23.
23 APPENDIX
24.
24 TRTISのDOCKERコンテナイメージ NGCから毎月リリース中 https://ngc.nvidia.com/catalog/containers/nvidia:tensorrtserver docker run --gpus
all --rm --shm-size=1g --ulimit memlock=-1 --ulimit stack=67108864 -p8000:8000 -p8001:8001 –p8002:8002 -v/path/to/model/store:/tmp/models nvcr.io/nvidia/tensorrtserver:19.xx-py3 /opt/tensorrtserver/bin/trtserver --model-store=/tmp/models 起動コマンド一例 (docker CE19.03以降) ↓
Download