高速なトポロジー推定  -...

Preview:

DESCRIPTION

高速なトポロジー推定  - ネットワークを考慮した並列計 算の基盤として. 電子情報学専攻 田浦研究室 白井達也 2007. 2. 14. ネットワークを考慮した並列計算. プロセス間の通信量に偏りがある処理の通信コスト削減 e.g. 集合通信,行列演算 プロセス割り当てによって通信コストが小さくできる 別の LAN のホスト間ではできるだけ通信しない LAN 内でも通信路を共有するとバンド幅が得られない ネットワークの接続関係(トポロジー)の情報が必要. ネットワーク情報の与え方. 既存研究のアプローチ WAN と LAN だけを区別 - PowerPoint PPT Presentation

Citation preview

2007.2.14 1

高速なトポロジー推定 -ネットワークを考慮した並列計  算の基盤として

電子情報学専攻 田浦研究室白井達也2007. 2. 14

2007.2.14 2

ネットワークを考慮した並列計算 プロセス間の通信量に偏りがある処理の通信コスト

削減 e.g. 集合通信,行列演算 プロセス割り当てによって通信コストが小さくできる

別の LAN のホスト間ではできるだけ通信しない LAN 内でも通信路を共有するとバンド幅が得られない

ネットワークの接続関係(トポロジー)の情報が必要

2007.2.14 3

ネットワーク情報の与え方 既存研究のアプローチ

WAN と LAN だけを区別 必要な情報を手動で設定する

手動設定が困難な環境 複数の管理者に分かれるクラスタ群 資源が動的に変化する 仮想化された環境

ホスト名や IP アドレスもネットワークを反映しない

ネットワークトポロジーの推定機構が必要

2007.2.14 4

並列計算のためのトポロジー推定 動作環境が幅広い

TCP/IP のような一般的なプロトコルだけで動作 管理者権限が不要

ネットワーク負荷が低い 他のプロセスの邪魔をしない 他のプロセスに邪魔されない

短時間で推定 CPU 負荷が刻々と変化する 「計算開始時に」負荷の低いホストを使いたい

2007.2.14 5

本研究の貢献 与えられた計算環境のトポロジーを「 End-End

の RTT の測定だけ」を用いて「高速に」推定するシステムを提案 4クラスタ 256 ホストを 15 秒程度で推定 ホスト数に対してスケーラブル 既存手法と比べて非常に高速

2007.2.14 6

発表の流れ 背景 関連研究 提案手法 評価 トポロジーを用いた通信最適化 まとめと今後の課題

2007.2.14 7

発表の流れ 背景 関連研究

管理プロトコルを用いた研究 End-to-End の測定を用いた研究

提案手法 評価 トポロジーを用いた通信最適化 まとめと今後の課題

2007.2.14 8

管理プロトコルを用いた研究 プロトコル

traceroute [Benoit et al. ACM SIGMETRICS ’05] SNMP [Yuri et al. IEEE/ACM Trans. ’04,

Bruce et al. ACM SIGCOMM ’01]

プロトコルが動作する環境で常に接続情報を交換し,正確な推定ができる

主な目的はネットワーク管理

動作環境が限られる インテリジェントスイッチを仮定 管理者権限が必要 セキュリティポリシーによっては, LAN 外のユーザはその

情報を得られない

2007.2.14 9

End-End 間の測定を用いた研究 測定方法

パケットロス率 [Duffield et al. IEEE Trans. 2002]

バンド幅 [Coates et al. SIGMETRICS 2002]

遅延 (RTT) [ 金田ら . SWoPP 2004]

長所 どんな環境でも動作する

TCP/IP ・ UDP/IP で動作 管理者権限が不要

短所 推定結果は非決定的

測定の変動が大きいと正確に推定できない 推定に時間がかかる

トポロジーを木構造と仮定する研究が多い

2007.2.14 10

バンド幅を用いた推定            [Coates et al. ACM SIGMETRICS ’03] 測定方法

1つのソースホストから他のホストペアに測定パケットを送信し,共通の通信路のバンド幅を得る

成果 WAN の 11 ホスト, 6 スイッチのト

ポロジーをほぼ正確に推定 ただし, 8 分程度かかった

長時間の測定が必要 全ホストペアを測定 → O(n2)

src から遠いホスト群の精度が低い src を固定したことが原因

src

dest1 dest2

2007.2.14 11

発表の流れ 背景 関連研究 提案手法

基本アルゴリズム 実ネットワークへの適用

評価 トポロジーを用いた通信最適化 まとめと今後の課題

2007.2.14 12

提案手法の概要 ホスト間の RTT の測定を用いる ホストを1つずつ追加する 3ホストのトポロジーを組み合わせて全体を構成する

構築中のトポロジー情報を用いることで短時間に推定する 全対全ではなく,必要なホストペアのみ測定する

トポロジーは木構造モデルで表す LAN 内のトポロジーは木構造が多い WAN で物理トポロジーにループがあっても,短時間の通信路は

木構造であることが多い

2007.2.14 13

3ホストのトポロジー ホスト間の RTT を枝の重みの和で表す

どのホスト間でも同じリンク,同じスイッチで同じ遅延が生じると仮定

3ホストでは枝の数と RTT の数が同じなので,一意に決まる

A a b

c

AB

AC BC

3 ホストのトポロジー

B

C

AB = a+bAC = a+cBC = b+c

2007.2.14 14

ホストの追加 – Addition – (1) ホストを1つずつ追加する 分岐位置を絞り込む

初めに2ホストを選択 3 ホストのトポロジーの分岐位置を求める 推定中のトポロジーの分岐位置と同じなら測定したホストま

では分岐位置の候補から外れる

N0

N2

N8 N9 N10

N7N6N5

S1

N1

S1 S2

N4

N3

S3S3S2S

H

2007.2.14 15

ホストの追加 – Addition – (2) 測定回数は分岐した枝の数

分岐点の数 = グラフの直径 O(logN) 各分岐での枝の数 = ポート数 M

⇒ O(MlogMN)

N0

N2

N8 N9 N10

N7N6N5

N1

S1

N4

N3

S3S2 H

2007.2.14 16

測定の変動を考慮した工夫 分岐の一致区間を動的に決定する Addition の初めの2ホストの選択で,近いホ

ストを選択する Addition フェーズの前に Selection フェーズを設

ける

2007.2.14 17

分岐位置の一致区間 測定の変動によって細かいリンクが生じてし

まう 分岐位置の区間を設定して,区間内であれば

分岐に加える

A

C

Ba b

c

A Ba’ b’

h

H

| a’- a |< rB

H

A

C

B

H

A

C

2007.2.14 18

分岐位置の一致区間の適切な値 区間を静的に設定したときの推定結果

1μs 1μs

8μs5μs

Cluster 3: 2~4μs が適切 Cluster 4: 6~7μs が適切

適切な値は環境によって異なる

2007.2.14 19

分岐位置の一致区間の動的決定 複数回の測定で得られる測定結果の変動を分岐位置

の一致の区間( r )とする 測定の変動より小さい遅延には意味がない

A

C

Ba b

c

A Ba’ b’

h

H

| a’- a |< r

2007.2.14 20

Addition の測定ホストの選択 -Selection- Addition の最初で近くのホストを選択する

遠いホストを選ぶと,誤りの距離が大きい

Additionフェーズの前に Selectionフェーズを設けて,近いホストを選択する

N0

N2

N8 N9 N10

N7N6N5

N1

S1

N4

N3

S3S2

H

H

2007.2.14 21

近いホストを選択する効果 4クラスタ 32 ホスト

ランダムに選択

遠いホストを選択すると大きく誤る

近いホストを選択

2007.2.14 22

Selection のための測定 近くのホストを見つけるための測定

測定しながら不要なホストを対象からはずす 測定したホスト (J) より十分遠いホスト (K) は追加するホスト (H)

から遠い 測定したホスト (J) と十分近いホスト (K) はどちらを選択しても同じ JK 間の値は構築中のトポロジーから求められる

特にマルチクラスタ環境で効果的 他のクラスタとはそれぞれ高々1ホストずつしか測定しない

H

J

K H

J

K

x

JK > 3x

>2x :遠い

xJK < 1/3x

J と同程度の距離

2007.2.14 23

Addition と Selection の並列化 ホストを追加する手順

k ホスト前から受け取ったトポロジーを使って近いホストを選択

1ホスト前から受け取ったトポロジーを使って自ホストを追加

Selection は他ホストの Addition と並行して行う Selection の時間的コストはゼロ

Tn-k Tn

Tn-1 Tn・・・ ・・・ ・・・・・・ n-1 n n+1n-k n+k

2007.2.14 24

発表の流れ 背景 関連研究 提案手法 評価

推定精度 推定時間

トポロジーを用いた通信最適化 まとめと今後の課題

2007.2.14 25

実験環境 4クラスタ 256 ホストを使用

実験中も他のユーザのプロセスが動作

16 16 16 16

14 14 14 14

5μs

3ms

2ms

14 14 14

14

14 14

6 6 6

6 6 2

6 6 6

6 6 2

25μs

45μs

Cluster 2 ( 遅延 : 25~40μs) Cluster 4 ( 遅延 : 50~65μs)

Cluster 3 ( 遅延 : 25~35μs)

Cluster 1 ( 遅延 : 20~30μs)  6ポートのハブのスタック

2007.2.14 26

推定結果

Cluster 1

Cluster 2

Cluster 3

Cluster 4

Cluster 1

Cluster 2

Cluster 3

Cluster 4

5μs

2ms

3ms

Cluster 2, 3 は正確 同じスイッチにつながるホス

ト群を近くに推定した ただし,特に Cluster 1, 4 は

それらが分散してしまった Cluster 1, 4 はスイッチ間が

不正確 大きな遅延のリンクに隣接す

る小さな遅延のリンクが隠されてしまった

2007.2.14 27

0

2

4

6

0 0.08 0.16 0.24 0.32 0.4 0.48

failure rate

# of

occ

urre

nce

inferred-shared

0

4

8

12

16

20

0 0.05 0.1 0.15

failure rate

# of

occ

urre

nce

inferred-not-shared

定量的な評価  1/2 通信路の共有情報の正確さ:1クラスタ

2つのホストペアの通信路が1つ以上のリンクを共有するかどうかの正確さ

ランダムに 100万ペア選択し,誤り率を求めた

共有するのにしないと推定された確率(false positive)

共有しないのにすると推定された確率(false negative)

一つのスイッチにつながるホスト群が分離したため,false negative が高かった

2007.2.14 28

Cluster 1 , 2 と 3 ,4の間の 5μs のリンクを見つけられなかったため, false negative も上昇してしまった

定量的な評価  2/2 通信路の共有情報の正確さ: 4クラスタ

0

4

8

12

16

0 0.04 0.08 0.12 0.16 0.2

failure rate

# of

occ

urre

nce

inferred-not-shared

0

4

8

12

0 0.04 0.08 0.12 0.16 0.2

failure rate#

of o

ccur

renc

e

inferred-shared

共有するのにしないと推定された確率(false negative)

共有しないのにすると推定された確率(false positive)

2007.2.14 29

推定時間 Selection 時に全ホストと測定した場合

( non-reduction )と比較

0

5

10

15

20

25

0 50 100 150 200 250 300

number of hosts

time

[sec

]

1cluster2 clusters3 clusters4 clustersnon-reduction

non-reduction ではホスト数の増加に対して推定時間が増加 本手法はホストの増加に対して推定時間がそれほど増加せず高いスケーラビリティを持つ

2007.2.14 30

測定回数 クラスタ内,クラスタ間で行った測定の回

数 全対全に対する割合を示す

0

0.2

0.4

0.6

cluster 1 cluster 2 cluster 3 cluster 4

cluster 1 cluster 2cluster 3 cluster 4

クラスタ内の測定は 35~50% クラスタ間の測定は 2%程度と非常に少ない

2007.2.14 31

発表の流れ 背景 関連研究 提案手法 評価 トポロジーを用いた通信最適化 まとめと今後の課題

2007.2.14 32

トポロジーを用いた通信最適化 バンド幅測定 長いメッセージのブロードキャスト MPI アプリケーションのプロセス割り当て

2007.2.14 33

長いメッセージのブロードキャスト 1/2 バンド幅の最適化

パイプライン転送を行う 転送する順番によっては一つのリンクを何度も使ってしまう ツリートポロジーでは,トポロジー上で深さ優先順に転送する

各リンクを片方向一度ずつしか通らない ただし,トポロジーがツリーでない場合は冗長なパスを用い

ることでより高いバンド幅を得られる

0

3 2

×片方向2回 ○片方向1回

1 4

0

3 41 2

2007.2.14 34

長いメッセージのブロードキャスト 2/2 Cluster 4 の 64 ホストを用いて実験を行った

スイッチ間は4本のトランク 各リンクは 1Gbps

実際のツリー上の深さ優先順 (optimal) と,ランダム順 (random)と比較

random では何往復もしてしまい, 23% の性能しか得られなかった ours は2往復するものはあったが,平均 88% の性能を得られた

0

200

400

600

800

0.01 0.1 1 10 100 1000

message size [MB]

band

wid

th [

Mbp

s]

optimal

random

ours

2007.2.14 35

発表の流れ 背景 関連研究 提案手法 評価 トポロジーを用いた通信最適化 まとめと今後の課題

2007.2.14 36

まとめ RTT の測定だけを用いたネットワークトポロジー

推定手法を提案した 4クラスタ 256 ホストのトポロジーを 15 秒程度で推定

既存の手法より一桁以上高速 ホスト数に対してスケーラブル ネットワーク的にヘテロな環境で動作 ネットワーク負荷が低い

トポロジーを用いた通信効率化手法を提示した 長いメッセージのブロードキャスト

2007.2.14 37

今後の課題 推定精度の向上

分岐位置の区間のよりよい基準 RTT の測定では推定できない部分の補完

バンド幅など他の測定を使う 使えるときは traceroute なども用いる

推定時間の向上 ホストの追加の並列化

2007.2.14 38

発表文献 投稿中

A Fast Topology Inference – A building block for network-aware parallel processing. High Performance Distributed Computing, 2007.

高速なトポロジー推定 – ネットワークを考慮した並列計算の基盤として . 先進的計算基盤システムシンポジウム (SACSIS2007), 2007年 .

論文誌 高いヒープ使用率の下で高速なインクリメンタル GC. In IPSJ Transactions on

Programming. Vol.47 No.SIG 2 (PRO28), 2006年 2月 .

研究会発表 並列処理のための効率的なトポロジ推定 . 2006年並列/分散/協調処理に関するサマー・ワークショップ (SWoPP2006), 2006年 8月 .

RTT を用いたネットワークトポロジの推定 . 先進的計算基盤システムシンポジウム(SACSIS2006), pp. 267-268, 2006年 5月 . ( ポスター発表 )

高いヒープ使用率のもとで高速なインクリメンタル GC. 2005年並列/分散/協調処理に関するサマー・ワークショップ (SWoPP2005), 2005年 8月 .

高いヒープ使用率のもとで高速なインクリメンタル GC. 先進的計算基盤システムシンポジウム (SACSIS2005), 2005年 5月 . ( ポスター発表 )

その他,情報理工 COE プロジェクトに関連する発表5件

Recommended