4. Improving the Performance of OpenCL-based FPGA Accelerator for
Convolutional Neural Network
CNN classifier kernelのボトルネック部分を解析
オンチップメモリのバンド幅に着目
OpenCLで実装
VGGモデルベースのCNNをArria10で実装
5. Frequency Domain Acceleration of Convolutional Neural Networks on
CPU-FPGA Shared Memory System?
畳み込み層の計算を減らすためにFFTとOverlap-and-Addを利用
共有メモリのデータレイアウトを工夫
VGG16, AlexNet, GoogLeNetを123.48GFLOPS, 83.00GFLOPS, 96.60GFLOPS
Intel Quick-Assist QPI FPGA Platformを使って評価
6. Optimizing Loop Operation and Dataflow in FPGA Acceleration of Deep
Convolutional Neural Networks
CNNの畳み込み層では3次元MACが4レベルのループになる
CNNのメモリアクセスなどの実対象を解析,最適化する必要がある
メモリアクセスとメモリ移動を最小化,リソース使用量と性能を最大化
Arria10GX1150に実装
VGG-16 CNNで645.25GOPS,47.97msレイテンシを達成
State-of-the-artの3.2x
7. An OpenCLTM Deep Learning Accelerator on Arria 10
OpenCL使ってデータ再利用と外部メモリバンド幅最小化を実現
Intel FPGA SDK for OpenCL
Deep Learning Accelerator(DLA)
AlexNetCNNベンチマークでArria10使って1020img/s,23img/s/W
-> 1382GFLOPSに相当(従来FPGAの8.4xのGFLOPS,5.8xの効率化)
23 img/s/WはnVidiaのTitanX GPUとcompetitive
10. Quality-Time Tradeoffs in Component-Specific Mapping:
How to Train Your Dynamically Reconfigurable Array of Gates with Outrageous Network-
delays
? Component-specific適用
? A prioriなデバイスの特徴とカスタマイズなしでFPGA毎のマッピングをする
? 48-77%のディレイ,57%のエネルギー効率を20秒未満のマッピング時間で
12. Corolla: GPU-Accelerated FPGA Routing Based on Subgraph Dynamic
Expansion
A GPU-accelerated FPGA routing method
GPU向けのFPGA内の最短パスアルゴリズムの適用を可能にする
FPGAルーティングのカーネルはsingole-source shortest path(SSSP)ソルバーで
ある
13. Don’t Forget the Memory: Automatic Block RAM Modelling,
Optimization, and Architecture Exploration
BlockRAMを自動的に作る話
SRAMとMTJ技術の両方を使用
面積,電力を最適化
14. Automatic Construction of Program-Optimized FPGA Memory Networks
メモリレイテンシは設計時の重要ポイント
メモリネットワークの最適化が性能向上のカギ
フィードバックドリブンのネットワークコンパイラを設計した
45%の設計ゲインを達成
要はLEAPの話
15. NAND-NOR: A Compact, Fast, and Delay Balanced FPGA Logic Element
And-Inverter Cone(AIC)はLUTに対する代替として提案された
性能とリソースユーティリゼーションを向上
Delay discrepancy problemがある
設計手法が最適かされていない
→もっと最適なNAND-NORとdelay-balancedなdual-phasedなマルチプレクサなアー
キテクチャを提案するよ
16. 120-core microAptiv MIPS Overlay for the Terasic DE5-NET FPGA board
120-core 94MHzのMIPSプロセッサを作った
軽量なメッセージパッシング機構で接続される
Stratix V GX (5SGXEA7N2F45C2)に実装
17. A Parallelized Iterative Improvement Approach to Area Optimization for
LUT-Based Technology Mapping
ロジックマッピングとデバイスマッピングにはギャップがある
PIMapを提案
面積を最小化すべくロジック変換とテクノロジーマッピングを反復的に行う
EPFLベンチに対して最大14%,平均で7%面積削減を達成
18. A Parallel Bandit-Based Approach for Autotuning FPGA Compilation
合成ツールオプションの自動チューニング
Multi-armed bandit(MAB)でオプションをチューニング
19. Hardware Synthesis of Weakly Consistent C Concurrency
Cからの高位合成でLock-freeアルゴリズム
LegUpにsequentially consistent(SC)とweakly consistent(weak) atmicsを導入
循環バッファの実装で,ロックありの場合と比べて2.5x高速化
Weak atomicsはさらに1.5xスピードアップ
20. A New Approach to Automatic Memory Banking using Trace-Based
Address Mining
TraceBankingを提案
Trace-drivenなアドレス最小化アルゴリズム
顔検出アルゴリズムに対してarea-efficientなメモリ分割を実現できた
コンパイルタイムの静的な最適化ではな
アクセスパタンを明示的に指定する必要がない
22. Accelerating Face Detection on Programmable SoC Using C-Based
Synthesis
? HLSは進化してるけど現実的なベンチマークが不足している
? Viola Jonesアルゴリズムベースの顔検出アクセラレータのケーススタディ
? ソフトウェアベースのデザインからHLS特化データ構造と最適化を使った合成可能な
実装への移植でわかったことをシェア
? このデザインは30FPSで,従来のRTL設計とcomparableである
23. Packet Matching on FPGAs Using HMC Memory: Towards One Million
Rules
? Hybrid Memory Cube(HMC)を使ったFPGAによるパケット分類
? プリフェッチでHMCアクセスレイテンシを隠蔽しメモリからマッチングエンジンにル
ールを転送
? Kintex Ultrascale 060に実装.160パケットを並列に処理.10Gbpsラインレートで
約1500ルールを,16Mbpsラインレートで1Mルールを処理
24. Boosting the Performance of FPGA-based Graph Processor using Hybrid
Memory Cube: A Case for Breadth First Search
? 巨大な実世界グラフを扱うのは難しい
? 単にフットプリントの問題だけでなくて,プアな局所性,アクセスレイテンシのため
? HMC使ってみた
? HMCアクセスレイテンシとBFS(幅優先探索)性能に対する
定量的な評価のための解析的な性能モデルを開発
? 2-level bitmap scheme
? MicronのAC-510開発キットで評価.
? GRAPH500ベンチマークで(スケール25/ファクタ16)で評価
? 166M edge traverced/s(MTEPS)を達成
31. Hardware Acceleration of the Pair-HMM Algorithm for DNA Variant
Calling
Pair HMM forwardアルゴリズムのFPGAでの高速化
リング構造のPEでILPとデータ並列性を考慮して様々な構成をとる
C++ベースのCPU実行とくらべて487x高速,ハードウェア実装と比べて1.56x高速