インテル fpga のdeep learning acceleration suite …...hardware microservices on fpgas...
TRANSCRIPT
![Page 1: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/1.jpg)
インテル FPGA の Deep Learning
Acceleration Suite とマイクロソフトの
Brainwave を HW 視点から比較してみる
竹村 幸尚
インテル株式会社
プログラマブル・ソリューションズ事業本部
シニア・テクノロジー・スペシャリスト
DA22
![Page 2: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/2.jpg)
FPGAとは
![Page 3: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/3.jpg)
汎用アクセラレーターとしてのFPGA
![Page 4: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/4.jpg)
• FPGAの性能向上
なぜFPGAアクセラレーションか
![Page 5: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/5.jpg)
CPU 対 FPGA
FPGA: 空間計算
FPGA
データ
命令
命令
命令
データ
命令
命令
命令
CPU: 時間的計算
CPU
命令
![Page 6: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/6.jpg)
FPGA アーキテクチャー: 基本エレメント
FPGAの基本エレメント
![Page 7: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/7.jpg)
FPGA アーキテクチャー: 基本エレメント
1-bit configurable
operation
Configured to perform any
1-bit operation:
AND, OR, INV, XOR, etc.
基本エレメント
1-bit register
(store result)
![Page 8: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/8.jpg)
FPGA アーキテクチャー: インターコネクト
基本エレメントは
フレキシブルなインターコネクト
(配線)に囲まれている
…
![Page 9: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/9.jpg)
FPGA アーキテクチャー: インターコネクト
カスタム回路は基本エレメントを
接続することで実現できる
… …
![Page 10: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/10.jpg)
… …
32-bit sqrt
Your custom 64-bit
bit-shuffle and encode
16-bit add
FPGA アーキテクチャー: カスタム回路
![Page 11: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/11.jpg)
FPGA アーキテクチャー: メモリーブロック
メモリー
ブロック
20 Kb
addr
data_in
data_out
![Page 12: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/12.jpg)
FPGA アーキテクチャー: メモリーブロック
メモリー
ブロック
20 Kb
addr
data_in
data_out
沢山の小型キャッシュ大型
キャッシュ
![Page 13: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/13.jpg)
data_in data_out
FPGA アーキテクチャー: 浮動小数点演算器
![Page 14: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/14.jpg)
FPGA アーキテクチャー: ルーティング
![Page 15: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/15.jpg)
FPGA アーキテクチャー: 再構成可能なI/O
![Page 16: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/16.jpg)
Project Brainwave
![Page 17: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/17.jpg)
FPGAの取り組み
Catapult v0
Catapult v1
スケール v1
Catapult v2
2011 2012 2013 2014 2015 2016 ...
Ignite
本番展開
![Page 18: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/18.jpg)
Hardware Microservices on FPGAs [MICRO’16]
Web search
ranking
Traditional software (CPU) server plane
QPICPU
QSFP
40Gb/s ToR
FPGA
CPU
40Gb/s
QSFP QSFP
Hardware acceleration plane
Web search
ranking
Deep neural
networks
SDN offload
SQL
CPUs
FPGAs
Routers
![Page 19: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/19.jpg)
DNN のための シリコンレベル の選択肢
DNN Processing Units
効率性柔軟性
Soft DPU(FPGA)
Contr
ol
Unit
(CU)
Register
s
Arithmet
ic Logic
Unit
(ALU)
CPUs GPUsASICsHard
DPU
Cerebras
Google TPU
Graphcore
Groq
Intel Nervana
Movidius
Wave Computing
Etc.
BrainWave
Baidu SDA
Deephi Tech
ESE
Teradeep
Etc.
![Page 20: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/20.jpg)
Project BrainWave
f f f
l0
l1
f f f
l0
Pretrained DNN モデル
CNTK などで
スケーラブルな DNN
ハードウェア マイクロサービス
BrainWave
Soft DPU
Instruction
Decoder & Ctrl
Neural FU
ネットワークスイッチ
FPGA
![Page 21: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/21.jpg)
BrainWave Stack
Pretrained DNN モデル を ソフト DPU にコンパイルするための
フレームワーク中立の連合コンパイラとランタイム
狭精度 DNN 推論のための適応型 ISA
変化目まぐるしいAI アルゴリズムをサポートする柔軟性と拡張性
BrainWave Soft DPU マイクロアーキテクチャ
高精度、低遅延バッチに最適
Intel の FPGA を スケールする HW マイクロサービスに展開
[マイクロ ' 16]
FPGA 上でモデルパラメータを完全に永続化するオンチップメモリは、
多数の FPGA にまたがってスケーリングすることにより、
大規模なモデルをサポート
![Page 22: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/22.jpg)
Brainwave コンパイラとランタイム
FPGA0 FPGA1
Add500
1000-dim ベクトル
1000-dim ベクトル
分割
500x500マトリックス
MatMul500
500x500マトリックス
MatMul500 MatMul500 MatMul500
500x500マトリックス
Add500Add500
Sigmoid500 Sigmoid500
分割
Add500
500 500
concat
500 500
500x500マトリックス
ターゲット
コンパイラ
FPGA
ターゲット
コンパイラ
CPU-CNTK
フロント
ポータブル IR
ターゲット
コンパイラ
CPU-カフェ
トランスフォーム IRs
グラフスプリッタとオプティマイザ
展開パッケージ
Caffeモデル
FPGA ハードウェアマイクロサービス
CNTKモデル
Tensorflowモデル
![Page 23: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/23.jpg)
一般的なシナリオ
=
O(N2) data
O(N2) compute
入力アクティベーション
出力前のアクティベーション
N ウェイトカーネル
O(N3) data
O(N4K2) compute
=
![Page 24: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/24.jpg)
従来の高速化アプローチ:ローカルのオフロードとストリーミング
FPGA2xCPU
DRAM で初期化された
モデルパラメータ
![Page 25: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/25.jpg)
従来の高速化アプローチ:ローカルのオフロードとストリーミング
FPGA2xCPU
DRAM で初期化された
モデルパラメータ
![Page 26: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/26.jpg)
バッチ処理による HW 使用率の向上
バッチサイズ
ハードウェア
利用
(%)
FPGA
![Page 27: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/27.jpg)
バッチ処理による HW 使用率の向上
バッチサイズ
99回目
待ち時
間
最大許可遅延
バッチサイズ
ハードウェア
利用
(%)
バッチ処理により HW の使用率が向上するが、待ち時間は増加
![Page 28: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/28.jpg)
バッチ処理による HW 使用率の向上
バッチサイズ
99回目
の待ち
時間
最大許可遅延
バッチサイズ
ハードウェア
利用
(%)
バッチ処理により HW の使用率が向上するが、待ち時間が増加
![Page 29: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/29.jpg)
代替: "永続的な" ニューラルネット
FPGA2xCPU
![Page 30: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/30.jpg)
代替: "永続的な" ニューラルネット
2xCPU
観測
![Page 31: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/31.jpg)
代替: "永続的な" ニューラルネット
2xCPU
![Page 32: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/32.jpg)
代替: "永続的な" ニューラルネット
2xCPU
![Page 33: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/33.jpg)
解決方法:データセンター規模での永続化
![Page 34: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/34.jpg)
Inter-Layer パイプラインの並列処理
2CPU
2CPU
2CPU
2CPU
2CPU
2CPU
2CPU
2CPU
LSTM
LSTM
LSTM
LSTM
LSTM
LSTM
LSTM
LSTM
![Page 35: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/35.jpg)
NPU
![Page 36: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/36.jpg)
FPGA MVU カーネル
Matrix Vector Unit
+
+
×
×+
×
×+
+
×
×+
×
×+
![Page 37: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/37.jpg)
インテル® OpenVINO™ツールキット
![Page 38: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/38.jpg)
ディープラーニング・トポロジーの推論処理
“head”
1
“head”
2
“head”
10
ニューラルネット
「本体」
イメージ
…ほとんどの計算は、ここで実行される
画像認識: CNN (ResNet)
音声認識・言語翻訳
特徴
インデックスの特徴
ベクトル
タグ
物体検出
後処理
サイズの変更 /
クロップ
イメージ
前処理
![Page 39: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/39.jpg)
OpenVINO™ ツールキット概要
OpenVINO™ Toolkit
OpenVXIntel OVX
Kernel
ExtensionsLibraries
Inference
Engine
Model
OptimizerTools
画像処理とディープ・ラーニングを使用した画像認識をサポート
インテル・アーキテクチャに最適化された、ヘテロジニアス対応ライブラリ
User program
Algorithms
OpenCVPre-trained
DL models
ディープラーニング
デプロイメント・
ツールキット
画像処理
![Page 40: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/40.jpg)
• 全インテル® アーキテクチャーで訓練済のモデルをデプロイ可能
• CPU、GPU、FPGA、など
• 最良の実行となるよう最適化
• ユーザーによる検証と調整が可能
• 全デバイスで使いやすいランタイム API
Caffe*
TensorFlow*
MxNet* .bin
IR.xml
推論
エン
ジン
共通
AP
I (
C+
+)
ロード・推論
CPU プラグイン
GPUプラグイン
FPGAプラグイン
モデル・
オプティマ
イザー
所定のターゲットを変換・
最適化
ディープ・ラーニング・デプロイメント・ツールキット
ONNX* Myriadプラグイン
![Page 41: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/41.jpg)
再掲:Brainwave コンパイラとランタイム
ターゲット
コンパイラ
FPGA
ターゲット
コンパイラ
CPU-CNTK
フロント
ポータブル IR
ターゲット
コンパイラ
CPU-カフェ
トランスフォーム IRs
グラフスプリッタとオプティマイザ
展開パッケージ
Caffeモデル
FPGA ハードウェアマイクロサービス
CNTKモデル
Tensorflowモデル
![Page 42: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/42.jpg)
OpenVINO™におけるFPGA実装
![Page 43: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/43.jpg)
インテル® FPGA DLAS の機能
• 一般的なトポロジーに向けたCNN アクセラ
レーション・エンジン
• グラフ・ループ・アーキテクチャー
• AlexNet、GoogleNet、LeNet、SqueezeNet、
VGG16、ResNet、Yolo、SSD、LSTM など
• ソフトウェア・デプロイメント
• FPGA のコンパイルは不要
• ランタイムでのリコンフィグレーションが可能
• カスタマイズされたハードウェア開発
• パラメーターを使用したカスタム・アーキテクチャーの
作成
• OpenCL™ フローを使用したカスタム・プリミティブ
畳み込み
PE アレイ
クロスバー
prim prim prim カスタム
DD
R
メモリー
読み取り/書き込み
特徴マップキャッシュ
DD
R
コンフィグレーション・エンジン
![Page 44: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/44.jpg)
DLA アーキテクチャー: 高パフォーマンス設計
• FPGA 上で最大限の並列化を実現
• Filter Parallelism (プロセッシング・エレメント)
• Input-Depth Parallelism
• Winograd Transformation
• Batching
• Feature Stream Buffer
• Filter Cache
• FPGA ビットストリームを選択
• Data Type / Design Exploration
• Primitive Support ReLU
Convolution /
Fully
Connected
Norm MaxPool
ストリーム・
バッファー
畳み込み
PE アレイ
クロスバー
ReLUMax
Pool
DDR
メモリー
読み取り/
書き込み
特徴マップキャッシュ
DDR
DDR
DDR
コンフィグレーショ
ン・エンジン
Norm
実行
![Page 45: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/45.jpg)
ReLUConvolution /
Fully ConnectedNorm MaxPool
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・
バッファー
![Page 46: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/46.jpg)
ReLUConvolution /
Fully ConnectedNorm MaxPool
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
![Page 47: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/47.jpg)
ReLUConvolution /
Fully ConnectedNorm MaxPool
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
![Page 48: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/48.jpg)
ReLUConvolution /
Fully Connected
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ストリーム・バッファー
出力
入力
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
![Page 49: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/49.jpg)
ReLUConvolution /
Fully Connected
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
![Page 50: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/50.jpg)
ReLUConvolution /
Fully Connected
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
MaxPool
![Page 51: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/51.jpg)
ReLUConvolution /
Fully Connected
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
![Page 52: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/52.jpg)
ReLUConvolution /
Fully Connected
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
![Page 53: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/53.jpg)
Convolution /
Fully Connected
AlexNet Graph
Conv ReLu Norm MaxPool Fully Conn.
ブロックはランタイムでリコンフィグレーションおよびバイパスが可能
ストリーム・バッファー
出力
入力
![Page 54: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/54.jpg)
アーキテクチャー詳細
ReLU
Output
Writer 1
Filter
Reader
PE 1
Norm
PE 2
MaxPool
PE 3 PE 23
Input
Reader
DDR
PE
Sequencer
Output
Writer 2
Convolution/全結合 (1D systolic array of 24 PEs)
PE 24…
Stream BufferPE Feeder
Bias
Reader
DDR ring interconnect
…
![Page 55: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/55.jpg)
余談:Systolic Array
Arria 10
1150 PELoad B
PE
drain
PE PE PE
PE PE PE PE
PE PE PE PE
PE PE PE PE
feeder
feeder
feeder
feeder
Load Afeeder feeder feeder feeder
Drain C
DDR4
drain draindrain
![Page 56: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/56.jpg)
Convolution の効率的な並列処理
• 並列畳み込み• 同じConvolution層の異なるフィルター
が別のプロセッシング・エレメント (PE) で
並列的に処理されます
• ベクトル演算• 特徴マップの深度全体
• PE アレイ・ジオメトリーは、既定
のトポロジーのハイパーパラメーター
にカスタマイズ可能です
FPGA
ダブルバッファーOn-Chip RAM
フィルター(on-chip RAM)
フィ
ルタ
ー並
列処
理
(出力
深度
)
外部 DDR
56
![Page 57: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/57.jpg)
Winograd 変換
• より少ない乗算で畳み込みを実行します
• FPGA 上でより多くの畳み込みを可能にします
• 6 つの入力特徴エレメントと 3 つのフィルター・エレメン
トを必要とします
• 標準的な畳み込みには、12 回の乗算が必要です
• 変換された畳み込みに必要な乗算は 6 回です
ReLU
Convolution /
Fully
Connected
NormMaxPool
Winograd 変換
ストリーム・バッファー
Winograd 変換
![Page 58: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/58.jpg)
フィーチャ・キャッシュ
• 特徴データはオンチップにキャッシュ• 並列処理エレメントのデイジーチェーンにストリームされる
• ダブルバッファー
• 畳み込みとキャッシュの更新が同時進行
• 1つのサブグラフの出力が他のサブグラフの入力に
• 不必要な外部メモリーへのアクセスを解消
ダブルバッファーオンチップ RAM
ストリーム・
バッファー・サイズ
![Page 59: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/59.jpg)
フィルター・キャッシュ
• フィルター・ウェイトは、各プロセッシング・エレメントにキャッシュ• プリフェッチをサポートするためにダブルバッファーを使用
• 1つのセットが出力特徴マップの計算に使用されている間、別のセットがプリフェッチされる
DDRConv Conv
DDR
![Page 60: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/60.jpg)
DLA アーキテクチャーの選択
• 必要条件を満たす最適な FPGA イメージを選択
• 必要に応じてカスタムの FPGA イメージを作成
![Page 61: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/61.jpg)
異なるトポロジーに対するサポート
• 機能とパフォーマンスはトレードオフ
畳み込み PE アレイ
クロスバー
ReLU Norm MaxPool
メモリー
読み取り/
書き込み
特徴マップキャッシュ
コンフィグレー
ション・
エンジン
畳み込み PE アレイ
クロスバー
ReLU Norm MaxPool
メモリー
読み取り/
書き込み
特徴マップキャッシュ
コンフィグレー
ション・
エンジン
LRN
Permute
Concat FlattenSoftMax
Reshape
vs
![Page 62: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/62.jpg)
サポートされるプリミティブとトポロジー
トポロジー
✓ サポート有
✓ リクエストに応じてサポート有
✓ 将来的にサポートを予定
プリミティブ
✓AlexNet
✓GoogleNet v1 ✓SSD
✓ResNet18 ✓SSD
✓ResNet50
✓ResNet101
✓SqueezeNet ✓SSD
✓VGG16
✓Tiny Yolo
✓LeNet
✓batch norm ✓concat ✓ flatten
✓max pool ✓ relu, leaky relu ✓ lrn normalization
✓average pool ✓scale ✓ softmax
✓ inner product ✓permute ✓ prelu
✓ reshape ✓detection output ✓conv
✓prIOrbox ✓ fully connected ✓eltwise
✓bias ✓group conv ✓depthwise conv
✓ local conv ✓sigmoid ✓elu
✓power ✓crop ✓proporal
✓slice ✓depthwise conv ✓ roi pooling
✓dilated conv
✓ tanh ✓deconv
![Page 63: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/63.jpg)
精度を下げてデザインを検討してみる
• パフォーマンスと精度はトレードオフ• 精度を下げることで、より多くの処理が並列的に実行可能
• より小さい浮動小数点形式を使用するための、ネットワークの再トレーニングは不要
• FP11 は INT8/9 よりもメリットがある
• 再トレーニング不要、より良いパフォーマンス、精度の損失が少ない
FP11
FP10
FP9
FP8
Sign、指数5ビット、仮数10ビットFP16
Sign、指数5ビット、仮数5ビット
Sign、指数5ビット、仮数4ビット
Sign、指数5ビット、仮数3ビット
Sign、指数5ビット、仮数2ビット
![Page 64: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/64.jpg)
経験
ツール
フレームワーク
ライブラリ
ハードウエア
Intel® Distribution for Python*
Mlib BigDL
OpenVINO™
Toolkit
Intel® Nervana™ Cloud and Appliance
Intel Nervana Deep Learning Studio
Intel® Data Analytics Acceleration Library (DAAL) Intel® Math Kernel Library
(Intel® MKL, MKL-DNN)
Intel Nervana Graph¥
Memory and Storage Networking
¥Future*Other names and brands may be claimed as the property of others.
Compute – CPU, iGPU, VPU, FPGA, …
![Page 65: インテル FPGA のDeep Learning Acceleration Suite …...Hardware Microservices on FPGAs [MICRO’16] Web search ranking Traditional software (CPU) server plane CPU QPI QSFP 40Gb/s](https://reader033.vdocuments.site/reader033/viewer/2022042310/5ed7a1a09661ae43ff66a795/html5/thumbnails/65.jpg)
法的注意事項および免責条項本資料に記載されている情報は、開発中の製品、サービス、プロセスに関するものです。 ここに記載されているすべての情報は、予告なく変更されることがあります。インテルの最新の予測、スケジュール、仕様、およびロードマップをご希望の方は、インテルの担当者までお問い合わせください。
インテル® テクノロジーの機能と利点はシステム構成によって異なり、対応するハードウェアやソフトウェア、またはサービスの有効化が必要となる場合があります。詳細については、intel.com を参照するか、OEM や販売店にお問い合わせください。絶対的なセキュリティーを提供できるコンピューター・システムはありません。
テストでは、特定のシステムでの個々のテストにおけるコンポーネントの性能を文書化しています。ハードウェア、ソフトウェア、システム構成などの違いにより、実際の性能は掲載された性能テストや評価とは異なる場合があります。購入を検討される場合は、ほかの情報も参考にして、パフォーマンスを総合的に評価することをお勧めします。性能やベンチマーク結果について、さらに詳しい情報をお知りになりたい場合は、http://www.intel.com/performance (英語) を参照してください。
インテル® テクノロジーの機能と利点はシステム構成によって異なり、対応するハードウェアやソフトウェア、またはサービスの有効化が必要となる場合があります。実際の性能はシステム構成によって異なります。絶対的なセキュリティーを提供できるコンピューター・システムはありません。詳細については、各システムメーカーまたは販売店にお問い合わせいただくか、http://www.intel.co.jp/ を参照してください。
本資料は、(明示されているか否かにかかわらず、また禁反言によるとよらずにかかわらず) いかなる知的財産権のライセンスも許諾するものではありません。
OpenCL および OpenCL ロゴは Apple Inc. の商標であり、Khronos の許可を得て使用しています。
Intel、インテル、Intel ロゴ、Intel Inside、Intel Inside ロゴ、Arria、Avalon、Cyclone、Nios、 Stratix は、アメリカ合衆国および/またはその他の国における Intel Corporation またはその子会社の商標です。* その他の社名、製品名などは、一般に各所有者の表示、商標または登録商標です。
© 2018 Intel Corporation. 無断での引用、転載を禁じます。