57
大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~ 大学院情報理工学系研究科 システム情報学専攻 近藤 正章 ([email protected]) 2018/11/19 1 コンピュータシステム

ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

大学院講義「コンピュータシステム」

ドメイン指向コンピューティング~動向と計算機アーキテクチャの未来~

大学院情報理工学系研究科 システム情報学専攻

近藤 正章([email protected])

2018/11/19 1コンピュータシステム

Page 2: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

講義内容

• ムーアの法則の終焉とドメイン指向コンピューティング

• 深層学習(AI)指向コンピューティング

– 深層学習とAI向けアクセラレータ

– (研究紹介)DNNアクセラレータSNACC– (研究紹介)深層学習向けの細粒度な量子化ビット幅最適化

• グラフ計算指向コンピューティング

コンピュータシステム 32018/11/19

Page 3: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

Moore’s Law Slowdown

コンピュータシステム 4

出典: Chuck Moore, “DATA PROCESSING IN EXASCALE-CLASS COMPUTER SYSTEMS”,The Salishan Conference on High Speed Computing, 2011.

ムーアの法則に頼らないコンピューティングの革新が必要

2018/11/19

Page 4: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

逐次プログラム性能のトレンド

コンピュータシステム 52018/11/19

出典: John Hennessy and David Patterson, Computer Architecture: A Quantitative Approach, 6 Edition. 2018

(SPECintCPUの性能をベースにした場合)

Page 5: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

DRAM容量のトレンド

コンピュータシステム 62018/11/19

出典: John Hennessy and David Patterson, “A New Golden Age for Computer Architecture”, Turing Lecture, 2018

Page 6: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

プロセステクノロジと電力の関係

コンピュータシステム 72018/11/19

出典: Hadi Esmaelizadeh, “Dark Silicon and the End of Multicore Scaling”, ISCA2011, 2011.

Page 7: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

ポストムーア時代に向けた技術動向

コンピュータシステム 8

出典:国立研究開発法人 科学技術振興機構研究開発戦略センター, “ドメインスペシフィック・コンピューティング~新たなコンピューティングの進化の方向性~”, 科学技術未来戦略ワークショップ報告書, 2017.

今後は「ドメイン指向コンピューティング」の研究開発が重要に

2018/11/19

Page 8: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

今後はどうすれば・・・

コンピュータシステム 92018/11/19

出典: John Hennessy and David Patterson, “A New Golden Age for Computer Architecture”, Turing Lecture, 2018

Page 9: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

ドメイン指向アーキテクチャ

• ドメイン指向アーキテクチャの利点

– 特定ドメインに特化した効果的な並列性の抽出(SIMD vs. MIMD vs. OoO vs. Systolic Array vs. ・・・)

– メモリバンド幅の効率的な利用(cache vs. Scratch-Pad Memory)

– 必要最低限の計算精度の保証(64bit FP vs. 8-16bit Int)

– ドメインスペシフィック言語との相互補完

• 有望な計算ドメイン

コンピュータシステム 10

深層学習(機械学習)

イジング計算(量子アニー

リング)

GraphicsVR/AR/MR

ProgrammableNW Switch ・・・

2018/11/19

グラフ計算

Page 10: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

講義内容

• ムーアの法則の終焉とドメイン指向コンピューティング

• 深層学習(AI)指向コンピューティング

– 深層学習とAI向けアクセラレータ

– (研究紹介)DNNアクセラレータSNACC– (研究紹介)深層学習向けの細粒度な量子化ビット幅最適化

• グラフ計算指向コンピューティング

コンピュータシステム 112018/11/19

Page 11: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

人工知能/AI• AI (Artificial Intelligence)技術の急速な発展

– IBMのWatsonがクイズ王に勝利

– 自動運転の実用化が間近に

– Google DeepMind社開発のコンピュータ囲碁AlphaGoが世界トップの棋士に勝利

2018/11/19 コンピュータシステム 12

Page 12: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

深層学習(Deep Learning)• 深層ニューラルネットワークとは?

– 「多層のニューラルネットワーク」

– ニューラルネットワーク:脳の神経回路網を模擬した数学的なモデル

• 特に畳み込みニューラルネットワーク(Convolutional Neural Network)による画像認識精度の向上が著しい

2018/11/19 コンピュータシステム 13

Golden Retriever

7層CNNの例

Page 13: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

深層学習のブレークスルー• Googleの猫

– Youtubeから1000万枚の画像を取りだして深層ニューラルネットに入力(9層ネットワーク、教師なし学習)

• 16コアPC1000台のPCクラスタを用いて3日間かけて学習

– 猫の顔に反応するニューロンが自動で形成された

2018/11/19 コンピュータシステム 14出展:Quoc Le, et. al: Building High‐level Features Using Large Scale Unsupervised Learning, ICML2012, 2012 

Page 14: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

深層学習のブレークスルー• 一般物体認識

2018/11/19 コンピュータシステム 15

出展:松尾 豊, “人工知能の未来 ‐ ディープラーニングの先にあるもの”,ICTインテリジェント化影響評価検討会議 第1回 資料, 2016.

Page 15: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

深層学習のブレークスルー• 一般物体認識

2018/11/19 コンピュータシステム 16

出展:松尾 豊, “人工知能の未来 ‐ ディープラーニングの先にあるもの”,ICTインテリジェント化影響評価検討会議 第1回 資料, 2016.

Page 16: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

深層学習のブレークスルー• 強化学習+深層ニューラルネットワーク

• 強化学習

– 試行錯誤を繰り返しつつ、環境からより良い「報酬」が得られるように自身の行動を学習する

– ある「状態」でのある「行動」の報酬の期待値を学習

– 従来は状態を人間の手で定義

• 深層ニューラルネットワークで画像の特徴を状態に

• 例:Atariゲームで人間を越えるスコアを出す

2018/11/19 コンピュータシステム 17出展:http://www.clubic.com/mag/actualite‐756059‐google‐jeu‐video.html

Page 17: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

機械学習の全盛期に

コンピュータシステム 182018/11/19

出典: John Hennessy and David Patterson, “A New Golden Age for Computer Architecture”, Turing Lecture, 2018

Page 18: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

深層学習の普及と課題• Deep Neural Network (DNN)の応用の広がり

– 画像認識、音声認識、機械翻訳、対話生成、・・・

• DNN実行への要求

– 省電力化:組込みシステム (モバイル、自動車)– 実行時間高速化:リアルタイムシステム (ロボット、自動運転)→DNNアクセラレータの研究開発が重要

• 近年DNNアクセラレータチップが多数提案

– 学習済みDNNを用いた推論・識別処理の省電化

– 組込みシステム向けのDNNによる画像・音声認識

– 学習はクラウド上のGPUなどで行うことが一般的

– 演算・メモリ転送量削減のための様々な工夫• Pruning、データ量子化、データ圧縮、・・・

コンピュータシステム 192018/11/19

Page 19: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

DNNアクセラレータ:TPU

コンピュータシステム 222018/11/19

出典: John Hennessy and David Patterson, “A New Golden Age for Computer Architecture”, Turing Lecture, 2018

Page 20: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

DNNアクセラレータ: TPU

コンピュータシステム 232018/11/19

出典: John Hennessy and David Patterson, “A New Golden Age for Computer Architecture”, Turing Lecture, 2018

Page 21: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

DNNアクセラレータ: TPU

コンピュータシステム 242018/11/19

出典: John Hennessy and David Patterson, “A New Golden Age for Computer Architecture”, Turing Lecture, 2018

Page 22: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

講義内容

• ムーアの法則の終焉とドメイン指向コンピューティング

• 深層学習(AI)指向コンピューティング

– 深層学習とAI向けアクセラレータ

– (研究紹介)DNNアクセラレータSNACC– (研究紹介)深層学習向けの細粒度な量子化ビット幅最適化

• グラフ計算指向コンピューティング

コンピュータシステム 252018/11/19

Page 23: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

(コラム)パーセプトロン• パーセプトロン (perceptron)

– ニューラルネットワーク(NN)の起源

– (今でも単純なNNのことを指して使われることもある)

– 信号は2値(0または1)

• パーセプトロンの動作

– 入力信号 とそれぞれの重み を乗算

– 出力ノードでそれらの総和を計算

– 総和が閾値 を超えると1を出力(発火)

2018/11/19 26コンピュータシステム

Page 24: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

(コラム)パーセプトロン• パーセプトロンの例:ANDゲート

– ANDゲートの真理値表(入出力の対応表)

– このような入出力関係を満たすような( は?

( = (0.5, 0.5, 0.6)

( = (1.0, 1.0, 1.0)

2018/11/19 27コンピュータシステム

0 0 00 1 01 0 01 1 1

重みと閾値を適切に設計すれば様々な入出力関係を表現可能

Page 25: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

(コラム)パーセプトロン

• 「単純な」パーセプトロンの限界

– XOR(排他的論理和)ゲート

– − 平面上での分類問題として見ると

2018/11/19 28コンピュータシステム

0 0 00 1 11 0 11 1 0

このような入出力関係を満たすような( は?→ 設計不可能

𝑥

𝑥

0 1

1

ANDゲート

𝑥

𝑥

0 1

1

XORゲート

単純なパーセプトロンは線形分離不可能な問題には適用不可

Page 26: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

(コラム)多層パーセプトロン• 多層パーセプトロン

– 単純なパーセプトロンを多層に重ねたもの

– 非線形な領域も分離可能に!

– 2層パーセプトロンの例

• XORゲートは設計できる?

2018/11/19 コンピュータシステム 29

𝑤𝑤

𝑤

𝑤𝑤

𝑤

0.5‐0.5

1

1

0.5

1

0.6

0.6

0.6

閾値

Page 27: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

畳込みニューラルネットワークの特徴

• Convolutional Neural Network (CNN)– 主に画像処理向けのDNNとして広く利用されている

• 様々なネットワーク構造が積層

– 畳込み層, Pooling層, 全結合層, ...• 演算ボトルネックな畳込み層とメモリボトルネックな

全結合層が混在

• 畳込み層(Convolutional layer)– 画像へのフィルタ2次元畳込み

– 演算ボトルネック

• 全結合層(Fully connected layer)– 行列ベクトル積

– データの再利用性が低くメモリ転送ボトルネック

30コンピュータシステム2018/11/19

Page 28: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

DNNアクセラレータSNACC

31

低再利用性データ用

高再利用性データ用

コンピュータシステム

• SNACC(Scalable Neural Acceleration Cores with Cubic Integration)

– 高電力効率 - 専用SIMD演算器, 専用命令, 8/16bit固定小数点

– 柔軟性 - 小型μコントローラによる命令制御

– 拡張性 - マルチコア, 3次元積層によるスケーラビリティ

項目 仕様

全体構成 マルチコア型アクセラレータ

コア内部構成 マイクロコントローラとSIMD型積和演算器

制御方式 独自命令セット

加速方式 4 or 8‐way SIMD/コア

メモリ構成 5メモリ/コアの分散メモリシステム(出力データ用omemのみ共有)

結合方式 共有バス

2018/11/19

Page 29: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

研究目的とコンセプト

畳込み層【演算ボトルネック】

全結合層【メモリボトルネック】

基本コンセプト

1. 積和演算のSIMD化・演算ビット幅の縮小→ 省電力性

2. 命令制御→ 柔軟性

特徴

1. データ再利用性に基づく入力バッファの使い分け→ ダブルバッファリングの効率的運用→ 1ポートメモリの利用

2. マルチサイクルのカスタムSIMD命令→ 制御オーバーヘッド低減

3.  縮退(8ビット)入力モード→メモリボトルネックの

低減

32

• 柔軟かつ省電力なDNNアクセラレータの検討・設計

• アクセラレータ・アーキテクチャのコンセプト

コンピュータシステム2018/11/19

Page 30: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

LSIチップの試作

• 提案アーキテクチャをLSIチップに実装・テープアウト

33

コア数 4

チップサイズ 3mm x 6mm

プロセス Renesas Electronics65nm SOTB(VDEC)

ゲート数 18864/コア

電源電圧 0.55V

動作周波数 50MHz

メモリ SRAM 68KB(※1)

TCI ThruChip Interface(※2)

(※1): 16KB/コア x4コア+ 4KB(shared)(※2): 3次元積層したチップ間の無線通信

を実現するコイル

• 慶應大学と共同で提案チップをLSI実装

• チップ諸元

– Renesas Electronics 65nm SOTB– Chip area: 3mm × 6mm– 4コア, 4SIMD/コア、36メモリモジュール

コンピュータシステム2018/11/19

Page 31: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

実チップの電力効率評価

• 評価アプリ

– 専用ループ命令による積和演算

• パラメータ

– コア数: 1,2,4コア

– 動作周波数: 10MHz ~ 60MHz– SIMDモード:16bit 4 並列, 8bit 8並列

コンピュータシステム 342018/11/19

Page 32: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

講義内容

• ムーアの法則の終焉とドメイン指向コンピューティング

• 深層学習(AI)指向コンピューティング

– 深層学習とAI向けアクセラレータ

– (研究紹介)DNNアクセラレータSNACC– (研究紹介)深層学習向けの細粒度な量子化ビット幅最適化

• グラフ計算指向コンピューティング

コンピュータシステム 352018/11/19

Page 33: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

課題 – 演算量とメモリアクセス• 課題:モデル大規模化による演算・データ転送量の増大

• ネットワークの圧縮手法が多く提案

– DNNでは冗長な情報も多く精度を大きく落とさずに圧縮可能

– 専用HWで高速化

コンピュータシステム 36

[Emer et al., 2016]

AlexNet VGG‐16 GoogLeNet 人間ResNet‐152

Inception‐v4

Year 2012 2014 2014 - 2015 2016

認識精度 83.6% 92.6% 93.3% 94.9% 95.5% 96.2%

重み容量 244MB 414MB 28MB - 171MB 241MB

MAC演算数 724M 15.5G 1.43G - 12.27G 11.3G

高精度化

大規模化

主要な畳み込みニューラルネットワークモデルと認識精度,容量,演算数

2018/11/19

Page 34: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

ネットワーク圧縮に関する従来研究• 枝刈り(Pruning): 重要度の低い重み(orニューロン)を削減

– 演算・パラメータ数の削減

– 専用HWでゼロスキップ

• 量子化: データや演算の低精度化

– パラメータ1つあたりの容量削減、演算器の簡略化

– 例)動的固定小数点、対数量子化、2値/3値DNN• 量子化ビット幅最適化の粒度に関する研究

– 層毎に異なるビット幅で最適化[Moons, et al., 2016]

– 第1層から最適なビット幅を貪欲法で探索

コンピュータシステム 37

Bit‐Width

2018/11/19

Page 35: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

より細粒度なビット幅最適化

• より細粒度な量子化ビット幅最適化によるメモリ転送量削減

38

モデル全体 層毎

提案手法8ビット 7ビット 6ビット8ビット

8ビット7ビット 6ビット

コンピュータシステム

ニューロン毎

ビット幅を2種類に限定し解決

提案① ニューロン毎のビット幅最適化提案② 高効率に処理するアーキテクチャ※今回は重みのみ量子化

• 課題

– 組み合わせ数大

– 実装し難い

2018/11/19

Page 36: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

ニューロン毎のビット幅最適化

• ビット幅は長短の2種類に限定

– 長ビット・短ビットと呼ぶ

– 長ビット幅:固定(層毎の最適化結果を利用)

– 短ビット幅:全探索

• 各ニューロンへの長短ビットの割当

1. 短ビット幅にするニューロンの優先度を決める

2. 短ビット幅化する割合を少しづつ増やす

コンピュータシステム 39

3ビット

8ビットなど

8ビット

1ビット7ビット → …→

𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,

𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,

𝑤 , 𝑤 , 𝑤 ,

𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,

𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 ,

2018/11/19

Page 37: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

短ビット化ニューロンの決め方

32ビット時 4ビット時 活性値の誤差

誤差が小さい精度を落としてもよいと考えられる

𝑓𝑤 ,𝑤 ,𝑤 ,

𝑤 ,𝑤 ,𝑤 ,

𝑤 ,𝑤 ,𝑤 ,

𝑥𝑥𝑥

1.1111 2.2222 3.3333 

1.502.004.00

0.

1. 推論処理し活性値(ニューロンの出力値)を記録

𝑓: 活性化関数𝑤: シナプスの重み値𝑥:入力

𝑦𝑦𝑦

𝑦:活性値

40

2. 32ビット時と量子化時の活性値の誤差を計算

3. ニューロンの番号を誤差の小さい順に並べる

この順番の優先度で短ビット化

コンピュータシステム2018/11/19

Page 38: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

• 探索手法

– 許容する相対認識精度の閾値を決定

– 短ビット化の割合を増やしていく

– 相対認識精度が閾値を下回ったら終了、次層へ

短ビット化する割合の探索

短ビット幅化割合 0.1 0.2 0.3 0.4 0.5 0.6 0.7

相対認識精度 1.00 1.00 1.00 0.997 0.996 0.991 0.962

短ビット

長ビット𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,𝑤 , 𝑤 , 𝑤 , 𝑤 ,

41

例)閾値が0.99のとき

コンピュータシステム2018/11/19

Page 39: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

提案のメモリ構成従来のメモリ構成

コンピュータシステム 42

w1 0

w3 0w4 0

7bit(長ビット幅)

w0w1w2w3w4

上位ビットメモリ

2bit

w0’w2’…5bit

2bit(短ビット幅)

w2

w010100

下位ビットメモリ

下位ビット使用フラグ

高効率に処理するアーキテクチャ

• 長短ビット2種が混在するデータを効率良く処理するメモリ機構

– 上位ビットと下位ビットで格納するメモリを分割

– フラグビットで下位ビットの使用を管理

5bit(長短の差分)

2018/11/19

Page 40: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

w1’w3’…

コンピュータシステム 43

活性値(入力)メモリ

0

a0a1a2a3a4

16bit

w0w1w2w3w4

2bit5bit0

1010

w0 0w1’

0

a0AccessAccess

入力ラッチ

短ビットモード

上位ビットメモリ

下位ビットメモリフラグ

2018/11/19

Page 41: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

w1’w3'…

コンピュータシステム 44

0

a0a1a2a3a4

w1’

0

a001010

1Access Access

長ビットモード

w0w1w2w3w4

w1

入力ラッチ

活性値(入力)メモリ16bit2bit

上位ビットメモリ

下位ビットメモリフラグ

5bit

2018/11/19

Page 42: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

ニューロン毎のビット幅最適化の評価

• 提案手法による重みパラメータの圧縮率の評価

• 再学習の有無による認識精度の評価

45コンピュータシステム

項目 値・設定

フレームワーク Chainer v2.0.0, CuPy v1.0.0.1

データセット CIFAR-100 学習データ50000枚,テストデータ10000枚サイズを32*32*3から227*227*3に,最近傍法で補完

ネットワークモデル AlexNet (畳み込み層5層,全結合層3層)第8層のニューロン数を1000から100に変更

最適化の対象 第6層, 第7層, 第8層(すべて全結合層)

転移元モデル ImageNetデータセットで学習済みのAlexNet[https://github.com/BVLC/caffe/wiki/Model-Zoo]

ファインチューニングの設定

MomentumSGD (lr=0.01, moment=0.9)30エポック

認識精度低下の閾値 32ビット時の認識精度に対する99%

量子化 符号ビット+小数点以下nビット

2018/11/19

Page 43: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

評価 - 重みパラメータの圧縮率

46

従来(層毎最適化)の63%,32ビットの13%に圧縮

7ビット

(32ビットの場合のサイズ:220MB)

コンピュータシステム

0

10

20

30

40

50

第6層

(従来)

第6層(提案)

第7層

(従来)

第7層(提案)

第8層

(従来)

第8層(提案)

全体

(従来)

全体

(提案)

重み

パラ

メー

タサ

イズ[M

B]

長ビット

短ビット

7bit100%

2bit 50%7bit 50%

6bit100%

2bit 60%6bit 40%

7bit100%

6bit 70%7bit 30%

2018/11/19

Page 44: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

0 10 20 30 40 50 60 70 80 90 100短ビットデータの割合r [%] 

6

5

4

3

2

相対認識精度0.99

0.5

0.52

0.54

0.56

0.58

0.6

0.62

0.64

0.66

0 10 20 30 40 50 60 70 80 90 100

認識

精度

短ビットデータの割合r [%] 

8

7

6

5

4

3

2

相対認識精度0.99

評価 – 再学習の有無による圧縮効果

47

再学習無しの場合:長ビット幅9 再学習有りの場合:長ビット幅7

再学習により短ビット幅を2ビットなどに大きく削減可能

コンピュータシステム2018/11/19

Page 45: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

性能への効果の評価

48

ボトルネックであるデータ転送クロックサイクル数を64%に削減

7bit 50%,2bit 50%のとき7bit 100%のとき

0

10

20

30

40

層毎(従来) ニューロン毎(提案)

クロ

ック

サイ

クル

(M clocks) データ転送クロックサイクル数

演算クロックサイクル数

コンピュータシステム

• 第6層の処理にかかるクロックサイクル数

2018/11/19

Page 46: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

講義内容

• ムーアの法則の終焉とドメイン指向コンピューティング

• 深層学習(AI)指向コンピューティング

– 深層学習とAI向けアクセラレータ

– (研究紹介)DNNアクセラレータSNACC– (研究紹介)深層学習向けの細粒度な量子化ビット幅最適化

• グラフ計算指向コンピューティング

コンピュータシステム 492018/11/19

Page 47: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

グラフ計算

• グラフ処理の利用– 交通網解析

– ソーシャルネット関係分析

– 位置情報解析

– 分子構造解析

– :

• 今後のスマート社会の強力なツールになると予想– センサデータの蓄積と解析

– ICTを利用した最適化と実世界へのフィードバック

– 道路や電力網などのインフラ解析に実績あり

50

DFS/BFS SpGEMM SpRef,SpAsgn

ReduceApply

クラスタリング

中心性解析

最短経路問題

Indexing

トポロジカルソート

SSSP問題

半正定値計画問題

GCNN

ソーシャルグラフ

地図マッチング ヒトの流れ

ウェブグラフ

分⼦構造の解析

コネクトーム

様々なグラフ処理コンピュータシステム2018/11/19

Page 48: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

グラフ構造

• グラフGの構成要素

– 頂点(vertex)の集合V– 辺(edge)の集合E

• グラフ: G(V, E)– V = {v1, v2, v3, v4, v5}– E = {e1, e2, e3, e4, e5}– e1 = {v1, v2}, e2 = {v1, v4}, …

2018/11/19 コンピュータシステム 51

e1

v1

v2

v4

v3

v5

v6

e2

e3

e4

e5

e7

e6

e8

Page 49: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

グラフ処理のチャレンジ

• 一般的なグラフ処理の特徴

– ランダムなメモリアクセス/通信パターン

– 時間的・空間的局所性が低い(キャッシュが有効に機能しない)

– データアクセスに対して計算処理が少ない

– トポロジーが規則的でない

2018/11/19 コンピュータシステム 52

データアクセスが大きなボトルネックに

Page 50: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

大規模グラフのフォーマット• Compressed Sparse Row (CSR) が通常用いられる

– Offset array: 各頂点の辺のリストがNeighbor arrayの何要素目に格納されているかを保存

– Neighbor array: 各頂点と辺が繋がっている頂点リストを保存

– Vertex data: 各頂点のデータ

2018/11/19 コンピュータシステム 53

pull‐based graphの各配列の例

Page 51: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

PageRankの計算とアクセス順• PageRank

– Webページの重要度を決める指標またはアルゴリズム

– Googleが開発:「リンクが集まるページは重要」という考え方に基づく

2018/11/19 コンピュータシステム 54

PageRank計算の疑似コード(出展[1])

• グラフ処理のスケジューリング– どのVertex順で当該Vertexの処理を

行うかのスケジュール

– Vertex-Ordered Scheduling• VertexのID順に計算

• 単純だが時間的局所性が低い

Vertex‐Ordered Schedulingの例(出展[1])

[1] A. Mukkara, “Exploiting Locality in Graph Analytics through Hardware-Accelerated Traversal Scheduling”, MICRO2018.

Page 52: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

スケジューリングの改良• Vertex-Ordered Scheduling (VOS) の問題

– Vertex dataの要素がランダムにアクセスされる– データに再利用性があっても時間的局所性を活用できずに

キャッシュミスが頻発– (Neighbor arrayは空間的局所性あり)

2018/11/19 コンピュータシステム 55

• Bounded Depth-First Scheduling (BDFS)– Vertex dataにアクセスした順にVertexの計算を行う

– 時間的局所性を活用可能

– スケジューリングオーバーヘッド大 → ドメイン指向アーキテクチャへ

BDFS(出展[1])VOS(出展[1])

[1] A. Mukkara, “Exploiting Locality in Graph Analytics through Hardware-Accelerated Traversal Scheduling”, MICRO2018.

Page 53: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

グラフ処理指向のアーキテクチャ例• Hardware Accelerated Traversal Scheduling (HATS)

– A. Mukkara, “Exploiting Locality in Graph Analytics through Hardware-Accelerated Traversal Scheduling”, MICRO2018.

– CPUへの拡張としてVertex dataアクセス専用のHWを持つ

2018/11/19 コンピュータシステム 56出典: A. Mukkara, “Exploiting Locality in Graph Analytics through Hardware-Accelerated Traversal Scheduling”, MICRO2018.

性能の比較

Page 54: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

エッジ・コンピューティング

• Society5.0(スマート社会)のキーイネーブラー

• 例えばAI処理エンジンは組み込みチップへ統合化の流れ

57

Apple A11 Bionic neural engine

Microsoft HPU (Holographic Processing Unit) for HoloLens

Nvidia Xavier forautonomous driving car

• エッジ・コンピューティングのニーズ

リアルタイム性

情報秘匿性(セキュリティ)

金融フィンテック ドローン モビリティ ロボット センサー AR/VR 医療・介護

ヘルスケア スマート工場

<1 ms 1‐10 ms 1‐100 ms 1‐100 ms 10‐100 ms 10ms‐1s >1s 10ms‐1s

✓ (✓) ✓ ✓✓ ✓✓

コンピュータシステム2018/11/19

Page 55: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

エッジでのグラフ処理応用例

58

エンジン制御最適化

ヒト/モノの移動最適化

実世界 サイバー空間 実世界

コンピュータシステム

Webサイト解析

2018/11/19

出典: 藤澤先生(九州大学)

Page 56: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

人流追跡の処理の流れ

59

実世界 サイバー空間 実世界• データ取得

– カメラ、センサー– GPS、WiFi

• 最適化– シミュレーション– 深層学習

• 実世界へのフィードバック– 制御– 情報提示・可視化

Cyber Physical System によるモビリティ最適化

コンピュータシステム2018/11/19

出典: 藤澤先生(九州大学)

Page 57: ドメイン指向コンピューティングsakai/system/kondo2018.pdf大学院講義「コンピュータシステム」 ドメイン指向コンピューティング ~動向と計算機アーキテクチャの未来~

まとめと今後の展開

• ムーアの法則終焉によりドメイン指向コンピューティングがコンピュータシステムのデザインにとって重要に

• AIやグラフ処理などのドメイン指向アーキテクチャが有望

• 特に物理世界に近い側のエッジ端末への展開が今後見込まれる

2018/11/19 コンピュータシステム 60