Presentation is loading. Please wait.

Presentation is loading. Please wait.

ソフトウェア界面発表 数理計算科学専攻 松岡研究室 06M37059 梅田典宏. 今回の紹介論文 Sujoy Basu, Sujata Banerjee, Puneet Sharma, Sung-Ju Lee, “NodeWiz: Peer-to-peer Resource Discovery for.

Similar presentations


Presentation on theme: "ソフトウェア界面発表 数理計算科学専攻 松岡研究室 06M37059 梅田典宏. 今回の紹介論文 Sujoy Basu, Sujata Banerjee, Puneet Sharma, Sung-Ju Lee, “NodeWiz: Peer-to-peer Resource Discovery for."— Presentation transcript:

1 ソフトウェア界面発表 数理計算科学専攻 松岡研究室 06M37059 梅田典宏

2 今回の紹介論文 Sujoy Basu, Sujata Banerjee, Puneet Sharma, Sung-Ju Lee, “NodeWiz: Peer-to-peer Resource Discovery for Grids”, In Proceedings of Cluster Computing and Grid 2005(CCGrid 2005), 2005. Javier Celaya, Unai Arronategui,“YA: Fast and Scalable Discovery of Idle CPUs in a P2P Network”, In Proceedings of the 7th IEEE/ACM International Conference on Grid Computing (GRID 2006), 2006

3 背景 ジョブ実行に適した計算資源を高速に発 見することが大規模な Grid 環境では重要 初期のシステムでは集中管理型や静的な 構成をとっていた  スケーラビリティや構成が動的に変わる環境に は不向き

4 一つの解 :Distributed Hash Table (DHT) 情報に対しハッシュ値を与え、それを元 に情報格納担当のピアを決定し、情報を 複数のマシンで管理する  ピア数・情報数に対してスケーラブル  ノードの動的な構成に対応  完全一致検索に適している Sword[1] のように Range Search をサポートするもの もある 一様分布を取らず偏りがある情報の場合負 荷が集中する

5 NodeWiz Grid での高速な資源探索を目的とする 分散環境で複数のパラメタの Range Search を実現する  CPU 使用率  搭載・空きメモリ量  搭載・空きディスク量 負荷に応じて動的に負荷分散 レプリカを分散配置  ネットワークの近隣度を考慮に入れている

6 データ格納 各パラメタを次元とした 空間を各ノードで分割し て管理する 計算資源は、自らの状態 に当てはまるピアに自分 を登録 状態の登録および資源の 探索メッセージは、次に 述べる各ピアが持つ経路 表に基づいてルーティン グされることで行われる。 D 0<x<x1 0<y<y1 A 0<x<x2 y1<y<y2 B x2<x<x3 y1<y<y2 C x3<x<x4 0<y<y2 E x1<x<x3 0<y<y1 x1x2x3 x4x4 y1 y2 0 計算資源

7 情報の担当範囲 左に示した各ノードの担当範囲は右の 2 分木によって表現され る。 D 0<x<x1 0<y<y1 A 0<x<x2 y1<y<y2 B x2<x<x3 y1<y<y2 C x3<x<x4 0<y<y2 E x1<x<x3 0<y<y1 x1x2x3 x4 y1 Y 0 x3<X<x4 C X<x3 0<Y<y1y1<Y<y2 0<X<x1x1<X<x30<X<x2x2<X<x3 B,C D,B A,B D,E DEAB X y2

8 経路表 A の経路表 x3<X<x4 C X<x3 0<Y<y1y1<Y<y2 0<X<x1x1<X<x30<X<x2x2<X<x3 B,C D,B A,B D,E DEAB LevelAttrMinMaxNode 0Xx3x4C 1Y0y1D 2Xx2x3B E の経路表 LevelAttrMinMaxNode 0Xx3x4C 1Yy1y2B 2X0x1D

9 経路表とルーティング LevelAttrMinMaxNode 0Xx3x4C 1Y0y1D 2Xx2x3B A の経路表 例 1: X=v1 (0<v1<x2) かつ Y<v2 (y1<v2<y1) を担当するノードを探索するクエリの ルーティング 1.Level 0 では上の条件を満たさないので C は探索範囲外 2.Level 1 は条件を満たすので D にクエリを 転送する。また、 Level 2 以降も条件を 満たす可能性がある。 3.Level 2 は条件を満たさないので B には転 送しない 4.1 はクエリの条件を満たすので、自らの 保持する情報をクエリの発信元に返す A の担当範囲 0<x<x2 y1<y<y2

10 負荷分散 :Top-K algorithm 新規参加ノードがどの領域を担当するかに用いる 各ノードは自らの負荷を示す値 workload を持つ  資源の登録・探索クエリを受信するたびに値を 1 増や す  定期的に workload を 2 で割ることで直近のアクセスに 重みをつける  自らの workload を定期的に上流ノードに流す  下流からやってきたノードの workload のうち、負荷 の高い上位 K 個のピアをさらに上流に流す  Tree のルートで得られた上位 K 個のピアを下流の全ピ アに広報する

11 ノードの参加・脱退 ( 領域分割・合併 ) 負荷の高いノードの担当範囲を分割する際 に、出来るだけ負荷が均等になるように分 割する  各パラメタについて資源登録と探索クエリのヒス トグラムを作り、 K 平均法というクラスタリング アルゴリズムでその中心点を求め、その点で分割 することで均等な負荷になるようにする ノードが脱退する際には、経路表の一番下 にあるノードに自分の担当する範囲を渡す

12 高速化手法 レプリケーション  既存ノードの負荷が小さいときには、近隣ノードの経路 表に含まれるノードのレプリカとなる レプリカを近い場所につくることで探索を高速化する  レプリカノードと元ノードの一貫性をどの程度確保する かが課題 本論文では評価の対象外としている 経路のキャッシュ  以前自分が投げたクエリの範囲とその結果となるノード をキャッシュし、自分の経路表に加える 次回その範囲のクエリがやってきたときにそのホップ数を 減少させる効果

13 シミュレーションによる評価 パラメタは 6 次元  過去 1 分 /5 分 /15 分間の平均負荷  ディスク / メモリ / スワップの空き容量 計算資源の状態変化のデータセット  PlanetLab[2] 参加ノードの観測データ 台数不足分は生成したデータ  パレート分布に従って生成したデータ データセンターでよく見られるパターンに近い

14 評価 : ノード数とホップ数 6 つのパラメタを指定し た広告・クエリを投げた ときの平均ホップ数 クエリ・広告共にノード 数 n に対し、目的の情報を 持つノードに到達する平 均ホップ数は O(logN) に抑 えられている

15 評価 : 経路表のサイズ PlanetLab, Synthesis とも に各ノードが持つ経路表の 平均サイズ・最大サイズを 測定 ノード数 N に対し、経路表 のサイズは O(logN) の増加に とどまる

16 評価 : 各ノード負荷の負荷分散 負荷の分散度合いを各ノードの 負荷の標準偏差で評価を行った。 k 平均法を用いた範囲分割手法を Clustering とし, 比較のために、 単純に範囲を半々に分割したも のを K-d Tree とする。 本論文で提案した手法において、 標準偏差が小さくなっているこ とから、負荷がより適切に分散 されていることが示されている。

17 評価 : 資源登録・探索メッセージに含まれ るパラメタの数とホップ数 資源の登録と探索に用いるパ ラメタの数を変えたときの メッセージのホップ数を測定 した パラメタ数を減らすことで担 当に当てはまるノード数が増 加することで、ホップ数が増 えトラヒックが増加する 登録より探索のほうが範囲が 広いために同じパラメタ数で もホップ数が増加している。

18 評価 : 経路のキャッシュ 過去のクエリとそれに 対応するノードを各 ノードの経路表に キャッシュすることで、 トラフィックが大きく 減少できている

19 YA より実行に適した計算資源を高速に探索  良い計算資源とは? 処理速度が高速 ネットワーク的に近い ( ホップ数の小さい ) 場所にある 資源数と投入ジョブ数の増加にスケーラブ ルであることが望ましい

20 B-Tree ベースのネットワーク IP アドレスを各ノードの値としている  ネットワーク的に近いノードが相互につながることがね らい 親ノードは子ノードおよび自分の値の範囲を もっている 近隣ノードや隣の木のノードとの接続を持つ  親ノードの障害への対処

21 ノードの新規参加・脱退 基本的には B-Tree のノード追加・削除と 同じ  すべてのノードは m から 2m 個の子を持つ ルートノードだけは 2 から 2m 個の子を持つ  もし子が 2m 個を越えた時は、  もし子が m 個未満になった時は、親とマージす る 常に木の高さが最小になるようにツリーを 動的に変更することでホップ数を小さく する

22 Free Node の管理 各ノードは、子に含まれる遊休ノードの台数・最 高性能・最小ホップ数を定期的に収集する 収集した情報を親ノードに転送するのは、次の条 件を満たしたときのみ  前回収集時に比べ より性能の良いノード よりホップ数の小さいノード 遊休ノード数が大きく変化したとき これによって、ツリー上位のトラヒックが混雑する ことを防ぐ

23 Free Node の探索 探索開始ノードの枝にぶら下がっている 遊休ノードの中から、より高性能でホッ プ数の小さい資源を選び、それにジョブ を割り当てる もし足りない場合は、親ノードに探索ク エリを転送して探索を続ける 最悪ホップ数は葉のノードから別の葉の ノードで O(2log m N) であり、スケーラブル といえる

24 YA の評価 ネットワークシミュレータ OMNeT++[3] によ るシミュレーション ノード数 50000 ノード間のバンド幅 1Mbps ノード間通信遅延 200ms ノードの性能 2000MIPS B-Tree のパラメタ m6 ~ 10

25 評価 : 資源にジョブを割り当てるまでの時 間 探索に必要な最悪ホップ数は O(log m N) であるため、 m が大きくなるほど木が低くなりホップ数が小さく なり、遊休ノードをより早く見つけることが出来る N が大きくなるにつれ、探索に必要な時間は O(logN) で増加する

26 評価 : ノード負荷とトラヒック m を大きくすることで メッセージ受信量が増 え、負荷とトラフィッ クが大きくなっている ノードの負荷と探索時間は m によって左右さ れ、トレードオフの関係にある

27 NodeWiz と YA の比較 スケーラビリティ  NodeWiz はノードの負荷によって動的に担当範 囲を分割・合併することで負荷分散を行う  YA はネットワーク的に近いノードをより優先 的に発見 探索性能  YA は一つのパラメタしか扱えない  NodeWiz は複数のパラメタを扱える

28 参考文献 [1]Sword D. Oppenheimer, J. Albrecht, D. Patterson, and A. Vahdat, “Distributed resource discovery on planetlab with SWORD”, First Workshop on Real, Large Distributed Systems (WORLDS 2004), [2]PlanetLab http://www.planet-lab.org/http://www.planet-lab.org/ [3]OMNeT++ http://www.omnetpp.org/

29

30 評価 : ノード負荷とトラヒック 通常時 高負荷時

31 YA のまとめ ネットワーク的に近いノード ツリー上位に遊休ノードの情報を集約す る

32 既存のシステム 中央のリポジトリに各計算資源が自らの 情報を登録する  Condor  Globus の MDS スケーラビリティに難


Download ppt "ソフトウェア界面発表 数理計算科学専攻 松岡研究室 06M37059 梅田典宏. 今回の紹介論文 Sujoy Basu, Sujata Banerjee, Puneet Sharma, Sung-Ju Lee, “NodeWiz: Peer-to-peer Resource Discovery for."

Similar presentations


Ads by Google