Windows Azure の中でも
動いている InfiniBand って何?
Japan Windows Azure User Group
Microsoft MVP for Windows Azure

冨田 順
http://twitter.com/harutama
自己紹介

@harutama
Microsoft MVP for
Windows Azure な人です
InfiniBand
(いんふぃにばんど)
InfiniBand って?
速いネットワークです。
すごく速いネットワークです。
それだけ覚えて帰ってください。
InfiniBand の速度
• InfiniBand は全二重シリアル通信
– データレート
• 基準に対して何倍速でデータを送受信するか?
Single → Double → Quad → Fourteen → Enhanced

– レーン数
• 何本の線を束ねて通信するか?
1本 → 4本 → 12本 → …
データレート

SDR
レ
ー
ン
数

DDR

QDR

FDR

EDR

1X

2.5 Gbit/s

5 Gbit/s

10 Gbit/s

14 Gbit/s

26 Gbit/s

4X

10 Gbit/s

20 Gbit/s

40 Gbit/s

56 Gbit/s

104 Gbit/s

12X

30 Gbit/s

60 Gbit/s

120 Gbit/s

168 Gbit/s

312 Gbit/s

現在普通に入手できるライン
InfiniBand のレイテンシ
• スイッチング
– QDR(40Gb/s)スイッチ
– FDR(56Gb/s)スイッチ

100nsec
170nsec

• RDMA 命令
– 1μsec 以下 = 1000nsec

• ちなみにですが
– DDR3 SDRAM

0.1μ secくらい=100nsec
Azure 内の InfiniBand では
InfiniBand のロードマップ

http://www.infinibandta.org/content/pages.php?pg=technology_overview
InfiniBandアダプタのシェア

http://itbrandpulse.com/research/brand-leader-program/194-infiniband-adapters-2013
InfiniBandスイッチのシェア

http://itbrandpulse.com/images/stories/Doc_Overview_InfiniBand_Switches_2013.png
Mellanox って何?
• InfiniBand のリーディングカンパニー
– 10G・40G・100G のイーサネットもやっている
ハイスピードネットワークの会社。

• 1999年に設立
– 本社は米国とイスラエル

• 細かい話はここで
– http://www.mellanox.com/related-docs/
company/Corporate_Fact_Sheet.pdf
何に使ってるの?
こんな所でも InfiniBand
InfiniBand ネットワークを
構築してみる
InfiniBand の機材
InfiniBand HCA
Mellanox MCX353A-QCBT
QDR(40Gbps)対応

InfiniBand スイッチ
Mellanox IS5022
QSFP ケーブル

QSFP ケーブル
Mellanox MC2206130
取手を引かないと、機器から
コネクタが外れない設計。
ケーブルは硬くて重いので、
取り回しが大変。
でもお高いんでしょう?
合計453,362円
(ぷらっとほーむ価格)
今回作った全体構成
Ethernetスイッチ

インターネット

Eth1

Eth2

Eth

500GB×4

1TB×2
RAID1

1TB×2
RAID1

ioDrive
735GB

InfiniBand
OpenSM

InfiniBand
Windows Server 2012

InfiniBandスイッチ

Windows Server 2012
サブネットマネージャー
• 通称「SM」と書かれている。
• サブネット内にある物理的な InfiniBand の状態
を検出して、最適な経路を監視する。
• どこで動作していても構わないが、最低限どこか
で1つの SM が動作している必要がある。
– マシンのサービスとして動作
• OpenSM を使うのが一般的。

– スイッチで動作

• 「マネージドスイッチ」は SM が動作可能なInfiniBandス
イッチのことを指す。
• 「アンマネージドスイッチ」の表記や、特に記載が無ければ、
SM の機能は入っていない。
Windowsからの見え方
_人人人人人人_
> 32.0Gbps <
 ̄Y^Y^Y^Y^Y ̄
・・・あれっ?
8Gbpsはどこに行った?
• 8b/10b 変換がかかるので、
40Gbps × (8 / 10) = 32Gbps になる。
生のシリアル・データは、LowやHighの状態が長期間、或いは不定期に
渡って続く可能性があるため、そこからクロックを取り出す事が出来ない。
8b/10bでは、どのようなデータであっても、Low又はHigh状態の期間が
3クロック以下になるように変換を行う。これによって、帯域の20%をロ
スする代わりに、データとクロックを同じ配線で同時に送受信する事が可
能になる。
現在のシリアル転送方式の主流であり、イーサネット、ファイバーチャネ
ル、IEEE 1394、PCI Express 2.0、Serial ATA、USB 3.0などがこの方式
を採っている。PCI Express 3.0では128b/130bが採用されている。
http://ja.wikipedia.org/wiki/8b/10b
電気信号だとこんな感じ

http://monoist.atmarkit.co.jp/mn/articles/1007/15/news102.html
変換の違い
• SDR DDR QDRまで
– 8b/10b変換 = 実効レート 80%
40Gb/s → 32Gb/s (QDRの場合)

• FDR以降
– 64b/66b = 実効レート 97%
56Gbps → 54.3Gb/s (FDRの場合)
ちなみにFDR一式のお値段
どれだけ速いか試してみる
SQLIOSim を用いたテスト
• SQLIOSim
– SQL Server に標準添付されるストレージ I/O のストレステストツール
C:¥Program Files¥Microsoft SQL
Server¥MSSQL11.MSSQLSERVER¥MSSQL¥Binn¥SQLIOSIM.EXE
– SQL クエリーを実行するのではなく、I/O のパターンをシミュレートする
ことにより、ストレージに対してストレスを与える
• RandomUser
OLTP 向けの I/O パターン
(読み取り/書き込みのトランザクションミックス)
• AuditUser
DBCC アクティビティ
• ReadAheadUser
先行読み取り
• BulkUpdateUser
一括操作 (BULK INSERT)
SQLIOSim ベンチマーク
Ethernetスイッチ

Eth1

Eth2

Eth

500GB×4

1TB×2
RAID1

1TB×2
RAID1

ioDrive
735GB

InfiniBand
OpenSM

SQLIOSim
InfiniBand

Windows Server 2012

InfiniBandスイッチ

Windows Server 2012
SQLIOSim による結果
• 1GbEtherはネットワーク速度のボトルネックが非常に大き
いが、InfiniBandではネットワークの影響が非常に小さい。
– 「ローカル」は ioDrive がインストールされたマシン内で
SQLIOSim を実行した結果。
– 「Total IO Time (ms)」の数字を比較。
ストレージへのI/O時間(分)
47473
50000
40000
30000
20000
28

380

10000
0

1GBEther

InfiniBand

ローカル
SMB ダイレクト
• Windows Server 2012 から導入された新機能。
– 正確にはSMB 3.0 から導入された機能。

• Windows のネットワークファイル共有(SMB)を高速化
– RDMA(Remote Direct Memory Access)に対応した機器を用いた
場合、サーバーとクライアントの
メモリの内容を直接読み書きする
ことで高速なファイル転送を行う。

• 主な用途
– ファイル共有
– 仮想マシンのマイグレーション
– データベース
SMB ダイレクトによるファイルコピー
• ioDrive 上のファイル(約35GBytes)をネットワーク経由でロー
カルにコピーする。
– 実際にはディスクキャッシュが有効になるため、HDDよりも高速に
コピーが進行する。
Eth1

Eth2

Eth

500GB×4

1TB×2
RAID1

1TB×2
RAID1

ioDrive
735GB

InfiniBand
OpenSM

キャッシュ
InfiniBand

Windows Server 2012

InfiniBandスイッチ

Windows Server 2012
結果
Windows Azure の中の
InfiniBand
TOP500 の話をしましょう

TOP500は、世界で最も高速な
コンピュータシステムの上位
500位までを定期的にランク付
けし、評価するプロジェクト
である。
http://ja.wikipedia.org/wiki/TOP500
2012年11月

http://blogs.msdn.com/b/bluesky/archive/2012/11/14/windows-azurecertified-as-top-500-supercomputers.aspx
Windows Azure の順位
※2013年11月のランキングです

309位
http://www.top500.org/site/50454
AWS の順位
※2013年11月のランキングです

64位
http://www.top500.org/site/50321
ベンチマークの見方
• Rpeak:理論ピーク値
– ある計算機の理論的な処理性能

• Rmax:実効性能値
– ある計算機で実際に測定された処理性能

• 並列化効率
– 理論値に対して実際どのくらいの性能が出たか?
理論ピーク値
Rpeak

実効性能値
Rmax

並列化効率
Rmax / Rpeak

コア数

AWS

593,510

484,179

81.6%

26,496

Azure

167,731

151,300

90.2%

8,064
_人人人人_
> 90.2% <
 ̄Y^Y^Y^Y ̄
こんな数字、なかなか達成できないんですよ。
速い順に並列化効率を見ると…
※2013年11月のランキングです
順位

名前

場所

Rmax

Rpeak

並列化効率

1 Tianhe-2 (MilkyWay-2) 中国

33,862,700

54,902,400

61.7%

2 Titan

アメリカ

17,590,000

27,112,550

64.9%

3 Sequoia

アメリカ

17,173,224

20,132,659

85.3%

4 K computer

日本

10,510,000

11,280,384

93.2%

5 Mira

アメリカ

8,586,612

10,066,330

85.3%

やっぱり「京コンピュータ」はいろいろおかしい
TOP500 に乗ったシステムが
使っているネットワーク
※2013年11月のランキングです

http://www.top500.org/statistics/list/
ヽ(*´∀`)八(´∀`*)ノ

http://blogs.msdn.com/b/bluesky/archive/2014/01/31/windows-azurecloud-service-a7-a8-instance-with-infiniband-and-rdma-available.aspx
https://twitter.com/Claudia_Azure/status/383202915470823424
今すぐ使えます!

http://www.windowsazure.com/en-us/pricing/details/cloud-services/
冨田 順 (@harutama)
http://twitter.com/harutama
参考文献
もう一度基本から
• Infiniband入門
– http://www.viops.jp/ibday02-BASICxsigo.pdf
もう少し詳しい基礎
• Oracle InfiniBand 勉強会
– http://www.oracle.com/technetwork/jp/
ondemand/branch/20131009-infiniband2043671-ja.pdf

• InfiniBandを中心としたデータセンタ内
インタコネクトの動向
– http://www.slideshare.net/oraccha/infini
band-5857816
HPC関連
• Windows Azure Benchmarks Show Top
Performance for Big Compute
– http://blogs.msdn.com/b/windowsazure/arc
hive/2012/11/13/windows-azurebenchmarks-show-top-performance-for-bigcompute.aspx

• New High Performance Capabilities for
Windows Azure
– http://blogs.technet.com/b/windowshpc/arc
hive/2014/01/30/new-high-performancecapabilities-for-windows-azure.aspx
実践編
• ビジネス向けIBネットワークを考える
~HPCクラスタでの経験を踏まえて~
– http://www.slideshare.net/naotomatsum
oto/ib-hpc

Windows Azure の中でも動いている InfiniBand って何?