12
WP508 (v1.0) 2019 1 15 japan .xilinx.com 1 © Copyright 2018-2019 Xilinx, Inc. XilinxXilinx のロゴ、 ArtixISEKintexSpartanVirtexVivadoZynq、 およびこの文書に含まれるその他の指定されたブラン ドは、 米国およびその他各国のザイ リ ン クス社の商標です。 すべてのその他の商標は、 それぞれの保有者に帰属し ます。 この資料は表記のバージ ョ ンの英語版を翻訳したもので、 内容に相違が生じる場合には原文を優先します。 資料によっては英語版の更新に対応していないものがあります。 広帯域幅 メ モ リ (HBM) を利用する こ と で、 データ移動やデータ ク セ ス が効率化 さ れ、 ザ イ リ ン ク ス UltraScale+ デバイ スの優れた演 算能力を存分に活用で き る よ う にな り ます。 ホワイ ト ペーパー : UltraScale+ デバイス WP508 (v1.0) 2019 1 15 Samsung HBM2 搭載のザ イ リ ン ク ス HBM 対応 UltraScale+ デバイスで AI および データベース アプリケーションを強化 概要 これまで演算性能の不足がボ ト ルネ ッ ク と なっていたアプ リ ケーシ ョ ン分野の多 く は、 ザ イリンクスの UltraScale™ および UltraScale+™ デバイスや Versal™ ACAP などのヘテロジ ニアス コンピューティング アクセラレータの開発によって大幅に進歩しました。 一方、 アクセラレータ ソ リ ューシ ョ ンでは、 DDR メモリから演算ユニッ トへのデータ移 動によって速度が制限されます。 広帯域幅メモ リ (HBM) は、 データ移動やデータ アクセ スのボトルネックを軽減するのに役立ちます。 ザイ リンクスの HBM 対応デバ イ ス は、 データセンターの新たな可能性を開き、 演算の高速化を次のレベルへと引き上げます。 このホワ イ ト ペーパーでは、 深層学習とデータベース、 2 つの高速化のユース ケースを例 に と り 、 ザ イ リ ン ク ス が提供す る Samsung HBM2 搭載コンピューティング アクセラレータ ソ リ ューシ ョ ンによ って、 柔軟性、 効率性、 性能に優れたハイ イ ンパク ト な演算高速化が どのよ うに実現されるかについて説明します。

Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  1

© Copyright 2018-2019 Xilinx, Inc. Xilinx、 Xilinx のロゴ、 Artix、 ISE、 Kintex、 Spartan、 Virtex、 Vivado、 Zynq、 およびこの文書に含まれるその他の指定されたブランドは、米国およびその他各国のザイリンクス社の商標です。 すべてのその他の商標は、 それぞれの保有者に帰属します。

この資料は表記のバージ ョ ンの英語版を翻訳したもので、 内容に相違が生じる場合には原文を優先します。 資料によっては英語版の更新に対応していないものがあります。

広帯域幅メモ リ (HBM) を利用するこ とで、 データ移動やデータ アクセスが効率化され、 ザイ リ ンクス UltraScale+ デバイスの優れた演算能力を存分に活用できるよ うにな り ます。

ホワイ ト ペーパー : UltraScale+ デバイス

WP508 (v1.0) 2019 年 1 月 15 日

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化 

概要

これまで演算性能の不足がボ トルネッ ク となっていたアプリ ケーシ ョ ン分野の多くは、 ザイ リ ンクスの UltraScale™ および UltraScale+™ デバイスや Versal™ ACAP などのヘテロジニアス コンピューティング アクセラレータの開発によって大幅に進歩しました。

一方、 アクセラレータ ソ リ ューシ ョ ンでは、 DDR メモ リから演算ユニッ トへのデータ移動によって速度が制限されます。 広帯域幅メモ リ (HBM) は、 データ移動やデータ アクセスのボ トルネッ クを軽減するのに役立ちます。 ザイ リ ンクスの HBM 対応デバイスは、データセンターの新たな可能性を開き、 演算の高速化を次のレベルへと引き上げます。

このホワイ トペーパーでは、 深層学習とデータベース、 2 つの高速化のユース ケースを例にと り、ザイ リ ンクスが提供する Samsung HBM2 搭載コンピューティング アクセラレータ ソ リ ューシ ョ ンによって、 柔軟性、 効率性、 性能に優れたハイインパク ト な演算高速化がどのよ うに実現されるかについて説明します。

Page 2: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  2

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

バッ クグランド近年のヘテロジニアス コンピューティングの台頭は、 ポス ト 「ムーアの法則」 時代における演算集中型ワークロードの高速化を前進させました。 今日のデータセンターにおいて、 ヘテロジニアス コンピューティングで高速化されるワークロード としては、 人工知能、 ライブ ビデオの ト ランスコーディング、 ゲノム解析などが一般的ですが、 これらはほんの一例にすぎません。 ザイ リ ンクスの UltraScale+™ および次世代の Versal™ デバイスは、 現代のデータセンターのワークロードにこれまでにない適応性と演算高速化をもたらします。

一方、 DDR メモ リ アーキテクチャは長い間それほど進化せず、 演算高速化の技術革新のペースについていけませんでした。並列メモ リ インターフェイスの帯域幅性能は過去 10 年で向上しているもののペースが遅く、 今日の FPGA でサポート されている最大 DDR4 データ レートは、 2008 年当時の DDR3 性能の 2 倍程度しかあ り ません。対照的に FPGA の演算性能は 2008 年から約 8 倍に向上しており、 さ らに AI コアを搭載した Versal デバイスの市場展開によって、 今後 2 年でさらなる飛躍的向上が見込まれています [参照 1]。 つま り、 メモ リ帯域幅と メモ リ容量は、 データセンターで演算やメモ リ帯域幅を多用するさまざまなワークロードを開発する際の主要な制限要因とな り ます [参照 2]。 図 1 を参照してください。

UltraScale+ ファ ミ リの最新製品は、 同じデバイス パッケージで広帯域幅メモ リ (HBM) に対応しているため、 メモ リ と演算間の性能ギャップを埋めるこ とができます。

X-Ref Target - Figure 1

図 1:演算能力と  DDR 帯域幅の向上の比較

WP508_01_103018

0

5

10

15

20

25

2006 2008 2010 2012 2014 2016 2018 2020

Per

form

ance

Com

pare

d to

200

8

FPGA Performance Growth Compute vs. DDR Bandwidth

Peak Compute TOPs DDR Bandwidth

PerformanceGap

Page 3: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  3

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

Samsung HBM

HBM は、 縦に相互接続された DRAM チップのスタ ッ ク と ワイ ド (1024 ビッ ト ) インターフェイスを用いた高速 SiP (System in Package) メモ リ技術であ り、 従来のワイヤ ボンディング ベースのパッケージを用いたメモ リ製品よ り もス ト レージ容量とデータ帯域幅を増やすこ とができます。 Joint Electron Device Engineering Council (JEDEC) は 2013 年に最初の HBM 規格を採用し、 2016 年 1 月に第 2 世代の HBM2 バージ ョ ンを業界規格と して承認しました。 図 2 を参照してください。

HBM2 規格では、 4 つまたは 8 つの 8Gb DRAM ダイを積み重ねるこ とができます。 これらのダイは、 メモ リ スタ ッ ク と基礎をなす回路基板をつなぐ 2.5D シ リ コン インターポーザーに支えられています。 一部のダイ (一般にメモ リ ) のみを積み重ね、それ以外のダイ (一般にプロセッサ) は積み重ねないマルチチップ パッケージを 2.5D デバイス と呼びます。

スタ ッ クは、 同一のパッケージに複数追加できます。 複数のダイを積み重ね、 回路基板上でそれらのスタ ッ クを互いに近づける と、 従来のマルチチップ DRAM 製品と比べて HBM メモ リ パッケージの平面フッ トプ リ ン ト を大幅に減らすこ とができます。 HBM 技術によ り、 デバイス間の信号移動距離が短くなるため、 システム性能も向上します。 距離の短縮は、 所定量のデータを伝送するのに必要なエネルギーの削減にもつながり ます。 図 3 を参照して ください。

X-Ref Target - Figure 2

図 2: HBM および 2.5D の構造 (情報提供: Samsung)

WP508_02_110718

Ch0Ch1Ch2Ch3Ch4Ch5Ch6

Logic

Ch7

PC2 PC3

PC0 PC1

Mother Board Mother Board

2.5D Sip Side View

PCBPCB

Si Interposer

Buffer

Buffer DRAM

1024 I/Os

DRAM16 pseudo-channels(PC)

2.5D Sip Top View

Logic Processor

1024 I/OSi Interposer

Key Benefits of Designing HBM

• Lower Latency• Higher Throughput • Lower Power • Smaller Footprint

Page 4: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  4

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

HBM と、 メモ リ帯域幅を増やすための HBM の高度な TSV 技術、 マイクロスケールのインターコネク ト、 多数の I/O によ り、最も近い競合製品、 つま りグラフ ィ ッ クス カードに用いられる GDDR (Graphics Double Data Rate) メモ リ よ り も優れた性能が実現します。 コンポーネン ト レベルでは、 1 つの Samsung HBM キューブで最大 307GB/s のデータ帯域幅を提供でき、 データ伝送速度は GDDR5 チップの約 10 倍に達します。 システム レベルでは、 HBM は GDDR ベースのソ リ ューシ ョ ンと比べて 80% の消費電力で約 3 倍のスループッ ト を実現するだけでなく、 貴重な回路基板のスペースも節約します。 図 4 を参照してください。

X-Ref Target - Figure 3

図 3: HBM による積層ダイ技術 (情報提供: Samsung)

X-Ref Target - Figure 4

図 4: HBM と  GDDR の帯域幅の比較

Stacked Dies Die to diebump interconnect

TSV

DRAM die

Source: Samsung

HBM

X-section

WP508_11_110718

Top view

Bottom view

8H

Core(DRAM)

Dies

Buffer Die

4H

WP508_12_110218

1750

1500

1250

1000

750

500

250

0

(GB

/s)

* Projection

Over 1TB/s 1024GB/s

2015 2016 2017 2018 2019 2020

1638GB/s*

HBM 2Cubes HBM 4Cubes GDDR 256-Bit GDDR 384-Bit

Source: Samsung

Page 5: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  5

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

Virtex UltraScale+ デバイスによるメモリ帯域幅の向上HBM 搭載の Virtex® UltraScale+ FPGA (VU31P、 VU33P、 VU35P、 VU37P) [参照 2] によ り、 メモ リ帯域幅は大幅に向上しました。 Samsung HBM2 メモ リ スタ ッ クを 2 つ使用する と、 メモ リ帯域幅は最大 460GB/s に達します。 1 つまたは 2 つの HBM2 スタ ッ ク と、 さまざまなサイズの FPGA ロジッ ク (最大 285 万のロジッ ク セル) および DSP (最大 9,024 の DSP48E スライスで 28.1 のピーク INT8 TOP を実現) を組み合わされた、 新しい HBM 対応 UltraScale+ デバイス ファ ミ リによって、 アプリ ケーシ ョ ンに最適な演算能力と メモ リ帯域幅/容量の組み合わせが選択できるよ うにな り ます。

ザイ リ ンクスは HBM 対応 Virtex UltraScale+ FPGA に加え、 Alveo™ データセンター アクセラレータ カード ファ ミ リの新製品と して Alveo U280 カードのリ リースを発表しています [参照 3]。

Alveo U280 カードはザイ リ ンクスの 16nm UltraScale+ アーキテクチャをベースに構築されており、 8GB の Samsung High Bandwidth Memory (HBM2) を搭載しています。 これによ り、 データベースの検索と分析や機械学習による推論などのメモ リ負荷が大きいアプリ ケーシ ョ ンを最大限に高速化します。 U280 アクセラレータ カードには、既存のサーバー インターコネク ト インフラス ト ラ クチャを利用するための CCIX サポートが組み込まれています。 これによ り、 今後の CCIX 対応プロセッサを使用して、 キャ ッシュ コ ヒーレン ト な共有メモ リに高帯域幅かつ低レイテンシでアクセスできるよ うにな り ます。

HBM 対応の UltraScale+ デバイスは、 メモ リがボ トルネッ ク となる各種のアプリ ケーシ ョ ンにとってメ リ ッ トがあ り ます。 このホワイ トペーパーでは、 ディープ ニューラル ネッ ト ワーク とデータベース高速化に関するケース スタディを例にとって、HBM 対応 UltraScale+ デバイスのメ リ ッ ト を紹介します。

ケース スタディ  1 

言語翻訳用 AI の高速化現在、 さまざまなク ラウ ド アプリ ケーシ ョ ンによって リ アルタイムの自動言語翻訳サービスが提供されています。 このよ うなサービスは機械翻訳と呼ばれ、 ニューラル ネッ ト ワーク ベースの機械学習メ ソ ッ ドを利用して 2 つの言語間でセンテンスを翻訳します。(1)

今日の商用自動翻訳サービスには、 エンコーダー /デコーダー アーキテクチャが使用されています。 マシンを利用して翻訳タスクを実行する と同時に、 ワード エンベディングと呼ばれるプロセスを通して両言語の単語が高次元ベクターと して表現されます。 これによ り、 単語間の関係を定量的にモデル化し、 ベクターに反映させるこ とができます。 エンコード機能とデコード機能の実行には、 再帰ニューラル ネッ ト ワーク、 たたみ込みニューラル ネッ ト ワーク、 アテンシ ョ ン ベース モデルなどの構造が用いられます。

最近の調査では、 アテンシ ョ ン ベースのネッ ト ワークを言語翻訳に利用するだけで、 業界最高の正確性を達成できるこ とがわかり ました [参照 4]。 この調査報告書で説明されているアテンシ ョ ン メカニズム (スケール ド ッ ト積のアテンシ ョ ン) は、2 つの行列乗算とその他の関数 (scale、 mask、 softmax) で構成されます。

マルチヘッ ド アテンシ ョ ン構造は、 並列スケール ド ッ ト積のアテンシ ョ ンの倍数と、 さまざまな入力予測で形成されます。この構造とフ ィードフォワード ネッ ト ワークを使用して、 全体的な言語翻訳モデルのデコーダーとエンコーダーが構成されます [参照 4]。 図 5 を参照してください。

1. Amazon Translate: https://aws.amazon.com/blogs/aws/introducing-amazon-translate-real-time-text-language-translation/?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+AmazonWebServicesBlog+%28Amazon+Web+Services+Blog%29

Microsoft Azure: https://www.microsoft.com/en-us/translator/business/machine-translation/

Google Machine Translation Service: https://ai.googleblog.com/2016/09/a-neural-network-for-machine.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed:+blogspot/gJZg+(Google+AI+Blog)

Page 6: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  6

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

図 5 に示すよ うに、 アテンシ ョ ン ベースの言語翻訳モデルで主に演算が集中するのは、 スケール ド ッ ト積のアテンシ ョ ンとフ ィードフォワード ネッ ト ワークに使用する ド ッ ト積の演算です。 また、 演算を効率化するため、 これらのド ッ ト積は一般に、 行列乗算にグループ化されます。 従来のたたみ込みニューラル ネッ ト ワークは、 データ移動のフッ トプ リ ン ト を減らすために重みパラ メーターをスペース全体で存分に再利用できる一方、 このアテンシ ョ ン ベースのモデルは入力スペースにパラ メーターをほとんど再利用しないため、 行列乗算を処理するためのメモリ帯域幅の要件が非常に高くなり ます。

Transformer の解析モデルは、 業界最先端のアテンシ ョ ン ベースのニューラル ネッ ト ワーク と して言語翻訳に利用されますが、 このモデルは UltraScale+ デバイスに実装するよ う構築およびマッピングされています。 FPGA 実装のアーキテクチャは、DSP シス ト リ ッ ク アレイを使用して行列乗算を実行します。 中間アクティベーシ ョ ン データはオンチップ URAM に格納されるため、 アクティベーシ ョ ンのためにプロセッサとオフチップ メモ リ間で頻繁にデータを移動する必要はあ り ません。 エンベディング ディ クシ ョナリのワード エンベディングと重みパラ メーターはすべて HBM または DDR に格納されます。

さまざまなセンテンス長 (L) とセンテンス数 (バッチ サイズと も呼ばれる ) (B) の英語/ド イツ語間の翻訳タスクを解析する と、DDR に接続する UltraScale+ デバイス と HBM 対応 UltraScale+ デバイスにおけるレイテンシと スループッ トの ト レードオフがわかり ます。 このケース スタディでは、 256 の 16 ビッ ト入力と 32 の 16 ビッ ト出力によるシス ト リ ッ ク アレイを使用し、DDR と HBM のどちらの実装でも 710MHz の UltraScale+ デバイス上で実行するこ とを前提と しています。 図 6 に、 スループッ ト対レイテンシの詳細なグラフを示します。

X-Ref Target - Figure 5

図 5: Transformer: アテンシ ョ ン  ベースの言語翻訳用ニューラル ネッ トワーク  モデル [参照 4]

WP508_05_103018

Softmax

OutputProbabilities

Linear

Add & Norm

Add & Norm

FeedForward

OutputEmbedding

Outputs(shifted right)

Multi-HeadAttention

Multi-HeadAttention

Add & Norm

FeedForward

Add & Norm

MaskedMulti-HeadAttention

PositionalEncoding

Nx

Nx

InputEmbedding

Inputs

PositionalEncoding

V

Linear

Q

h

Linear

K

Linear

Scales Dot-ProductAttention

Linear

MatMul

Multi-Head Attention

The Transformer - Model Architecture

Scaled Dot-Product Attention

SoftMax

Mask (opt.)

Scale

Q

MatMul

K V

Add & Norm

Concat

Page 7: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  7

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

4 チャネル実装の最小レイテンシは、 センテンス長 8 の場合に約 15.7ms で、 スループッ トは 508 シンボル/秒になり ます。 1 つの DDR チャネルはワード エンベディング データへのアクセスに使用され、 残り 3 つの DDR チャネルは重みのアップロードに使用されます。 HBM 対応デバイスの場合、 センテンス長 8 の最小レイテンシは 2.2ms で、 DDR インターフェイスよ り 7 倍以上小さ くなっています。 DDR インターフェイスはいずれのセンテンス長でもレイテンシを 7ms 未満にできないのに対し、HBM 対応デバイスは、センテンス長 8 で 6.1ms のレイテンシ (スループッ トは 10,419 シンボル/秒)、センテンス長 16 で 6.8ms のレイテンシ (スループッ トは 4,682 シンボル/秒) を実現します。

汎用行列演算ライブラリを使用した AI の高速化

前述の機械翻訳の例と同様、 現代のほぼすべてのディープ ニューラル ネッ ト ワーク (深層学習) における主な演算は、 行列乗算の形式で実行されます。

データセンターで広く運用されている一般的な深層学習アプリ ケーシ ョ ンには、 機械翻訳以外にも、 画像/動画解析、 ウェブ検索に使用される検索ランキング システム、 広告配置に使用される推奨システム、 コンテンツ/フ ィードの推奨、 音声認識、自然言語処理などがあ り ます。

ザイ リ ンクスでは、 幅広い深層学習アプリ ケーシ ョ ンのサポート向上を目的と して、 SDAccel™ 開発環境でサポート されるザイ リ ンクス デバイス上での行列演算を高速化するための汎用行列演算 (GEMX) ライブラ リ を開発しました。 このライブラ リには、 エンジン ライブラ リ、 ホス ト コード コンパイラ、 アプリ ケーシ ョ ン/システム構築環境の 3 つのコンポーネン トが含まれています。 エンジン ライブラ リは、 C++ テンプレートのセッ ト と BLAS のよ うな関数インターフェイスで構成され、 FPGA での行列演算を実現します。 ホス ト コード コンパイラは、 ホス ト コードの行列関数呼び出しをコンパイルし、 FPGA で行列演算を ト リガーするための命令シーケンスにします。 構築環境は GNU make フローを使用して、 FPGA とホス ト コード イメージの生成プロセスを自動化します。 これによ りユーザーは、 システムのさまざまな側面 (FPGA プラ ッ ト フォーム、 FPGA イ メージで実装される各種エンジンなど) をコンフ ィギュレーシ ョ ンするこ と もできます。 GEMX エンジンの設計の詳細は、https://github.com/Xilinx/gemx を参照して ください。

X-Ref Target - Figure 6

図 6: HBM および DDR4 搭載の UltraScale+ デバイスを使用した言語翻訳の性能解析

WP508_06_120718

HBM, L=BHBM, L=16DDR4, L=8DDR4, L=16

10000

0

4000

2000

6000

8000

Thr

ough

put (

sym

bols

/sec

)

Latency (ms)

5 107 15 20 3025 35

With Linear Projection, Multi-head256x32 Array

B=2

B=1

B=4

B=8B=16 B=32

B=32

B=16

B=4B=8

B=4

B=2

B=8

B=2 B=2

B=4

B=1

L=8, HBM

L=8, DDR

L=16, HBM

L=16, DDRB=1

B=1

Page 8: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  8

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

GEMX エンジンの入力行列はどちら も DDR メモ リからのフ ィードですが、 GEMX のスループッ トは DDR インターフェイスの帯域幅によって決ま り ます。 次に示す解析は、 DDR4 に接続した UltraScale+ デバイスを使用した GEMX と、 HBM 対応 UltraScale+ デバイスを使用した GEMX の性能を比較したものです。 この解析は、 メモ リ帯域幅をフル活用した状態をモデル化しており、 GEMX への入力と して 32x32x128 の行列を使用するこ とを前提と しています。 (図 7 に示す) 結果から、 HBM 対応デバイスは、 DDR の 4 つのチャネルを使用した場合と比べて GEMX の性能を約 3.6 倍向上できるこ とがわかり ます。

ケース スタディ  2 

データベースの性能向上現代のデータベース システムは、 大量の非構造化データを低レイテンシで処理する必要があ り ます。 最新の x86 ソ リ ューシ ョ ンは、 プロセッサ内で大容量の内部メモ リ (キャ ッシュ ) や並列処理ユニッ ト (AVX) までもサポートできます。 ただし、CPU ベースの実装では、 高ま り続ける性能要件にそれでも対応できず、 大半のケースで費用対効果の目標を達成できていません。 GPU ベースの実装も普及が進んでいますが、 高い性能を実現するには大量のバッチ処理と消費電力を伴います。

大容量の Samsung HBM を搭載したザイ リ ンクス デバイスであれば、必要なメモリ データ幅、 チャネル数、 カーネルごとに必要なメモリ量をユーザーが選択できます。プログラマブル ロジッ クは並列処理エンジンと HBM メモリへの高速アクセスを組み合わせて、 主要なデータベース演算 (Gather、 Group、 Indirect Gather、 Fused Gather Group、 Segmented Gather など) を高速化できます。

図 8 は、 ホス トが受け取ったクエ リに対して、 データベース演算要求を FPGA ベースに送信する一般的なユース ケースを示しています。 この後、 接続された HBM に FPGA 演算エンジンが高帯域幅かつ高速でアクセスして、 高速化された性能でデータベース演算を実行します。 演算結果はホス トに返され、 クエリ要求は終了します。

X-Ref Target - Figure 7

図 7: GEMX の性能

WP508_08_103018

8

7

6

5

4

3

2

Max

imun

Tps

/sec

INT16 Type Systolic Array for HBM Channel

GEMX Performance

INT16 Type Systolic Array for DDR Channel

1

0

Page 9: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  9

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

一般的なデータベース演算は多くのメモ リ アクセス (主にランダムなメモ リ読み出し /書き込み処理) を必要と します。 HBM 上のデータベース演算の解析では、 性能を測定するために Gather と呼ばれるデータベース プリ ミ ティブ演算の 1 つが使用されます。 Gather 演算では、 ランダムな少量データへのアクセスが何回も実行されます。 図 9 に、 演算ユニッ ト (並列処理エンジン) と疑似チャネルの数を変えて測定した、 Gather 演算の性能向上を示します。

図 9 に示すよ うに、 演算ユニッ ト、 疑似チャネル、 またはその両方の数を増やすと、 レイテンシが向上します。 たとえば、 8 つの疑似チャネルを使用した場合、 演算ユニッ トの数が増えるほどレイテンシは低下します (緑色の線)。 同様に、 演算ユニット を 16 個使用した場合も、 疑似チャネルの数が増えるほどレイテンシは低下します (青色の線)。

X-Ref Target - Figure 8

図 8: HBM 対応 UltraScale+ デバイスでのデータベース ユース ケースの例

X-Ref Target - Figure 9

図 9:データベース演算のレイテンシ解析

WP508_09_103018

Gather

HBM for IN

HBM for IN

HBM

HBM for Out

Group

Indirect GatherStriping Data

PC

Ie In

terf

ace

Fused Gather Group

Segmented Gather

Database Acceleration Kernels

FPGA Logic

Host x86Database

Query

WP508_10_103018

300

250

200

150

100

50

02 Pseudo Channel 4 Pseudo Channel

The morePseudoChannels,the lowerthe latency

The moreComputeUnits,the lowerthe latency

Compute Latency (ms)

8 Pseudo Channel 16 Pseudo Channel

2 4 5 16Compute Unit

Page 10: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  10

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

考察

高帯域幅によるリアルタイム アプリケーシ ョ ンの演算能力の向上

「ケース スタディ 1」 では、 高いメモ リ帯域幅を必要とするニューラル ネッ ト ワークの例について説明しました。

RNN (再帰ニューラル ネッ ト ワーク ) または MLP (マルチレイヤー パーセプト ロン) では、 1 バイ トのパラ メーター (INT8 演算を想定) を使用するのに必要な演算は乗算と加算 の 2 回のみです。 これは、 CNN (たたみ込みニューラル ネッ ト ワーク ) とはまったく対照的です。 CNN は理論上、 各レイヤーの 1D、 2D、 さ らには 3D スペース全体で重みパラ メーターを幅広く再利用できるため、 演算強度 (1 バイ トのデータを使用するのに必要な算術演算) が非常に高くなり ます。 この場合、 最高の演算効率を達成するには、 演算カーネルにデータをフ ィードするデータ レート またはメモ リ帯域幅が演算能力と一致している必要があ り ます。

ザイ リ ンクスの UltraScale+ デバイスや Versal ACAP など、 現在最高の演算アクセラレータは数十~数百の INT8 TOP を容易に実現できます。 理論上、 正確に一致する メモ リ帯域幅量は数十テラバイ ト /秒以上必要であ り、 これは非常に限られたオンチップ SRAM でしか実現できません。 このメモ リ帯域幅要件を容易にする理想的なアプローチは、 バッチ処理を使用することです。 バッチ処理のタスクはま とめて実行できる と同時に、 タスクのバッチ間で同じパラ メーターを共有できます。 このため演算強度が増し、 それによ り演算処理 1 回あたりのデータ移動の集中度が減り ます。 バッチ処理のト レードオフは、 「ケース スタディ 1」 の図 6 に示すよ うにレイテンシが増えるこ とです。 したがって、 レイテンシが重要となる多くのタスク ( リ アルタイム翻訳など) の場合、 大量のバッチ処理は選択肢となり ません。

図 10 に、 機械学習の推論ワークロードに対応できる、 消費電力 100W 以下の各種デバイスの理論上のルーフライン モデルを示します。 この図では、 メモ リのルーフラインが、 所定の演算強度におけるデバイスの理論的なピーク性能を示しています。リ アルタイム (低バッチ、 低レイテンシ) の RNN および MLP ユースケースで、 ザイ リ ンクスの HBM 対応 Alveo U280 アクセラレータ カードがあらゆる推論デバイスの中で最高の性能を提供できるこ とは明らかです。

X-Ref Target - Figure 10

図 10:ザイリンクス UltraScale+ およびその他のデバイスのルーフライン  モデル

WP508_11_110218

100

10

Arithmetric Intensity (Ops/Byte)

(Low) Data Locality (High)

Roofline Model of Inference Devices*(Inference Power < 100W)

Per

form

ance

(T

OP

s)

1

0.1

0.011 10 100 1,000 10,000

CNNMLP, RNN

Hig

her

Thr

ough

put

More Real-time (Lower Batch)

RNN, MLPBatch = 30

Alveo U200Alveo U280TPU (gen 1)Nvidia P4

RNN, MLPBatch = 1

*Assumes that the parameters need to be transferred from off-chip memory to the compute engine and that full memory bandwidth can be utilized.

Page 11: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  11

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

柔軟な並列メモリ  チャネル アクセスによるメモリ と演算リソースの使用効率向上

HBM 対応 UltraScale+ デバイスの利点の 1 つは、HBM メモ リ コン ト ローラー [参照 2] に組み込まれた柔軟なアドレス指定機能によって、 HBM チャネルを柔軟に並列使用できるこ とです。 HBM チャネルのアクセス と使用は完全にリ コンフ ィギュレーシ ョ ン可能かつ再プログラム可能で、 FPGA ロジッ クによって容易にアクセスできます。 図 11 に示すよ うに、 ケース スタディ 2 で説明したデータベースのユース ケースを拡張する と、オ リ ジナルのデータベース ファ イルを複数の HBM チャネルに分け、 並列処理演算ユニッ トにさまざまなデータベース演算を実行させて、 同期を必要とせずにデータベースの複数部分に独立かつ並列してアクセスできます。 この機能を使用すれば、 バッチ処理も同期も必要とせずに、 すべての演算ユニッ トが リ アルタイムでデータベース クエ リに対応できるため、 リ アルタイム ユース ケースにおける演算のレイテンシと HBM の使用効率を向上させるこ とができます。

「ケース スタディ 1」 の機械翻訳の例でも、 2 つのチャネルをワード エンベディング アクセス用、 残りのチャネルを高帯域幅の重みパラ メーター転送用に分けるこ とで、 この機能が利用されています。

まとめAI やデータベース高速化などのユース ケースにおける Samsung HBM の重要性は説明したとおりですが、 HBM から大きなメリ ッ トが得られるデータセンター ワークロードがほかにも多数あ り ます。 たとえば、 SmartNIC のユース ケースはザイ リ ンクスのホワイ トペーパーで昨年紹介され [参照 2]、 ザイ リ ンクスのパートナーも HBM 対応デバイスのアクセラレーシ ョ ン FFT を使用したユース ケースを公開しました [参照 5]。

コンピューティング デバイスの技術革新と共に、 データセンターではヘテロジニアス コンピューティングの高速化の傾向が進んでおり、 演算ユニッ トの近くに接続された HBM のよ うな高性能メモ リ システムの必要性は切迫しています。

HBM 対応 UltraScale+ デバイスには、 ほかにはない価値があり ます。 深層学習やデータベース高速化を例にとってみても、 ザイリ ンクスの HBM 対応 UltraScale+ デバイスが新たな可能性を開き、 演算高速化を次のレベルへと引き上げるこ とは明らかです。

X-Ref Target - Figure 11

図 11:柔軟な並列メモリ  チャネル アクセス

WP508_12_103018

Kernel

CU

8

CU

9

CU

10

CU

11

CU

0

CU

1

CU

2

CU

3

CU

4

CU

5

CU

6

CU

7

CU

12

CU

13

CU

14

CU

15

256M

B

MC_0

SW SW SW SW

MC_1 MC_2 MC_3 MC_4 MC_5 MC_6 MC_7

Stacko Switch

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

B

256M

BDatabase

(Striped over Multiple Channels)

Page 12: Samsung HBM2 搭載のザイリンクス HBMタックと、さまざまなサイズの fpga ロジック (最大 285 万のロジック セル) および dsp (最大 9,024 の dsp48e

WP508 (v1.0) 2019 年 1 月 15 日 japan.xilinx.com  12

Samsung HBM2 搭載のザイリンクス HBM 対応 UltraScale+ デバイスで AI およびデータベース アプリケーシ ョ ンを強化

参考資料1. ザイ リ ンクス ホワイ トペーパー : 『Versal: 業界初の Adaptive Compute Acceleration Platform (ACAP)』 (WP505: 英語版、 日本

語版)

2. ザイ リ ンクス ホワイ トペーパー : 『Virtex UltraScale+ HBM FPGA: メモ リ性能の革新的向上』 (WP485: 英語版、 日本語版)

3. ザイ リ ンクス : 『Alveo 製品選択ガイ ド』

4. Vaswani, A. ほか共著: 『Attention Is All You Need』、v0.4、2018 年 7 月 18 日。Google, Inc. Cornell University Library (arXiv.org) から抜粋。

5. McCormick, A. C. 著: 『Breaking Memory Bandwidth Barriers Using High Bandwidth Memory FPGA』、 v1.0、 2018 年 5 月 15 日。Alpha Data Parallel Systems Ltd. (ftp.alpha-data.com) から抜粋。

改訂履歴次の表に、 この文書の改訂履歴を示します。

免責事項本通知に基づいて貴殿または貴社 (本通知の被通知者が個人の場合には 「貴殿」、 法人その他の団体の場合には 「貴社」。 以下同じ ) に開示され

る情報 (以下 「本情報」 といいます) は、 ザイ リ ンクスの製品を選択および使用するこ とのためにのみ提供されます。 適用される法律が許容す

る最大限の範囲で、 (1) 本情報は 「現状有姿」 、 およびすべて受領者の責任で (with all faults) とい う状態で提供され、 ザイ リ ンクスは、 本通知

をもって、 明示、 黙示、 法定を問わず (商品性、 非侵害、 特定目的適合性の保証を含みますがこれらに限られません)、 すべての保証および条

件を負わない (否認する ) ものと します。 また、 (2) ザイ リ ンクスは、本情報 (貴殿または貴社による本情報の使用を含む) に関係し、起因し、関

連する、 いかなる種類・性質の損失または損害についても、責任を負わない (契約上、不法行為上 (過失の場合を含む)、 その他のいかなる責任

の法理によるかを問わない) ものと し、 当該損失または損害には、 直接、 間接、 特別、 付随的、 結果的な損失または損害 (第三者が起こした行

為の結果被った、 データ、 利益、 業務上の信用の損失、 その他あらゆる種類の損失や損害を含みます) が含まれるものと し、 それは、 たとえ

当該損害や損失が合理的に予見可能であった り、 ザイ リ ンクスがそれらの可能性について助言を受けていた場合であったと しても同様です。

ザイ リ ンクスは、 本情報に含まれるいかなる誤り も訂正する義務を負わず、 本情報または製品仕様のアップデート を貴殿または貴社に知らせ

る義務も負いません。事前の書面による同意のない限り、貴殿または貴社は本情報を再生産、変更、頒布、 または公に展示してはなり ません。

一定の製品は、ザイ リ ンクスの限定的保証の諸条件に従う こ と となるので、https://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンクスの販売

条件を参照して ください。 IP コアは、 ザイ リ ンクスが貴殿または貴社に付与したライセンスに含まれる保証と補助的条件に従う こ とになり ま

す。 ザイ リ ンクスの製品は、 フェイルセーフと して、 または、 フェイルセーフの動作を要求するアプリ ケーシ ョ ンに使用するために、 設計さ

れたり意図されたり していません。 そのよ うな重大なアプリ ケーシ ョ ンにザイ リ ンクスの製品を使用する場合のリ スク と責任は、 貴殿または

貴社が単独で負う ものです。 https://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンクスの販売条件を参照してください。

自動車用のアプリケーシ ョ ンの免責条項オート モーテ ィブ製品 (製品番号に 「XA」 が含まれる ) は、 ISO 26262 自動車用機能安全規格に従った安全コンセプ ト または余剰性の機能 (「セーフティ設計」 ) がない限り、エアバッグの展開における使用または車両の制御に影響するアプリ ケーシ ョ ン ( 「セーフティ アプリ ケーシ ョ

ン」 ) における使用は保証されていません。 顧客は、 製品を組み込むすべてのシステムについて、 その使用前または提供前に安全を目的と し

て十分なテス ト を行う ものと します。 セーフティ設計なしにセーフティ アプリ ケーシ ョ ンで製品を使用する リ スクはすべて顧客が負い、製品

の責任の制限を規定する適用法令および規則にのみ従う ものと します。

この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [email protected] まで、 または各ページの右下にある

[フ ィードバッ ク送信] ボタンをク リ ッ クする と表示されるフォームからお知らせください。 いただきましたご意見を参考に早急に対応させて

いただきます。 なお、 このメール アドレスへのお問い合わせは受け付けており ません。 あらかじめご了承ください。

日付 バージョ ン 内容

2019 年 1 月 15 日 1.1 「Virtex UltraScale+ デバイスによる メモ リ帯域幅の向上」、 「言語翻訳用 AI の高速化」、および図 6 を更新。

2018 年 11 月 12 日 1.0 初版