内容要旨 | | 情報処理ニーズの高まりに伴い,並列処理技術に対する期待も強まっている.最近ではより費用対効果の高いクラスタ技術が注目されていることもあり,並列計算機が急速に身近になりつつある.ところで,並列計算機の実際の運用を見てみると,バッチスケジューリングを中心とした運用が多い.時分割スケジューリングの特徴を活かした対話処理は,プログラム開発効率を高めることが知られている.過去にメインフレームやスーパーコンピュータがバッチスケジューリング主体による運用から時分割スケジューリング主体の運用に移行したように,成熟しつつある並列計算機も時分割スケジューリング主体の運用にと移行するものと考えられる.クラスタ技術による並列処理の底辺の拡大は,この傾向をより強めるであろう. 基本的に,並列計算機のジョブスケジューリングは,基本的にプロセッサ空間と時間の直交する2種類のスケジューリングから構成される.時間軸のスケジューリングは時分割スケジューリングとバッチスケジューリングに大別でき,空間軸のスケジューリングは空間分割スケジューリングと呼ばれている.時分割スケジューリングと空間分割スケジューリングを組み合わせた時空間分割スケジューリングでは,空間分割により生じる断片化の影響を低減する可能性が知られている.また,時分割スケジューリングとしてはキャングスケジューリングと非同期コスケジューリングの2つの方式が提案されている. これまでに並列計算機における時分割スケジューリングにおいて,スケジューリングオーバヘッドやスケーラビリティに関する詳細な報告はほとんどない.また,ギャングスケジューリングと非同期コスケジューリングのスケジューリング性能の比較においても,小規模な並列計算環境での評価しかなく,そのスケーラビリティについては不明である.さらに,時空間分割スケジューリングとバッチスケジューリングを主体とする空間分割スケジューリングの性能比較についても明確にはなっていない.そして,並列計算機における時分割スケジューリングが,現在広く使われている逐次計算機における時分割スケジューリングと同じ程度に対話処理を可能とするかということについては研究されていない. 本研究は,分散記憶方式並列計算機において時分割スケジューリングを中心に,これらの問題を明らかにすることを目的としている.そのために,本研究ではギャングスケジューリングによる時分割スケジューリングに焦点を絞る.時分割スケジューリングの実装方式として,高い通信性能と低いスケジューリングオーバヘッドを両立させるために,ネットワークプリエンプション方式を実現する手法を提案する.また,時空間分割スケジューリング方式のひとつとして"Distributed Queue Tree(DQT)"を提案する.DQTはギャングスケジューリングを仮定した時空間分割スケジューリング方式である. 図1は,本研究で提案するネットワークプリエンプション方式を構成するfreeze,save,restoreフェーズの処理時間を示したものである.スケジュ-リングの対象となったのは8本のプログラムで構成されるNAS並列ベンチマークであり,並列計算機としてはIntel社PentiumPro(200MHz)をプロセッサとするPCを64台,Myrcom社Myrinetネットワークにより結合したPCクラスタである.この図から,64プロセッサのギャングスケジューリングにおいて,並列プロセス切替時間(3つのフェーズの時間の総和)は4msec以下であることが判明した.この結果から,時分割間隔を100msecに設定した場合,スケジューリングオーバヘッドは4%以下であると推測され,別な評価によりこの推測がほぼ正しいことが確認された. 図1:ネットワークプリエンプションに要する時間 このギャングスケジューラを用いて,非同期コスケジューリング(TPFSコスケジューリング)と比較した結果を図2に示す.この図の縦軸は,スケジューリングなしの実行時間を1とした時の,3つの並列プロセスをスケジューリングして全てが終るまでの時間の比である.つまり,理想的なスケジューラではプロセッサ数に依らずに常に3となる.ここでは,NAS並列ベンチマークの中から通信パターンが顕著に異なるCG,EP,FT,LUを選出した.この図2から,非同期コスケジューリングは通信がほとんど発生しないEPについては理想的なスケジューリング性能を示したものの,CGやFTにおけるスケジューリングのオーバヘッドは,ギャングスケジューリングの場合を上回る結果となった.また,この傾向は特にプロセッサ数が大きい程顕著になることも判明した.一方,ギャングスケジューリングではアプリケーションの通信パターンの違いによる影響は少ない.また,プロセッサ台数が大きくなっても安定したスケジューリング性能を示している. 図2:ギャングスケジューリングと非同期コスケジューリングの比較(3並列プロセス) 本研究で提案されたDQT時分割スケジューリングは,シミュレーションによりいくつかのバッチスケジューリングと比較された.図3は,DQT,Fair-DQT(DQTに公平性を重視しスケジューリング性能を義性にした改良を施したもの),First-Come-First-Serveスケジューリングとバイナリバディによる空間分割の組み合わせ(これをFCFS-BBと呼ぶ)および,バッチスケジューリングにおいて高い性能を誇るScanUpのそれぞれについて,同じ条件でシミュレーションした結果である.横軸は投入した負荷率,縦軸はプロセッサ利用率である.この図から,単純なFCFS-BBスケジューリングは他のスケジューリング方式に比べ大きく劣っていることが分かる.一方,ScanUPと本研究で提案するDQTを比べると,負荷が特に高い状況においてDQTが僅かに上回る結果となった.従って,時空間分割スケジューリングは,バッチスケジューリングを主体とする空間分割スケジューリングと比べても同等の性能を発揮することが判明した. 図3:DQTとバッチスケジューリングの比較(1024プロセッサ) 並列計算機においては時分割スケジューリングだけによる対話処理は効率的にはなり得ない.例えば,並列プログラム実行中にユーザからの入力だけを待っているような大域的なアイドル状態を検出し,プロセッサ資源の無駄な割り当てを避けることが必要である.本研究ではネットワークプリエンプション方式を応用することで,効率的に並列プログラム実行におけるアイドル状態の検出が可能であることを示す.ネットワークプリエンプションによる低い時分割スケジューリングオーバヘッドと大域的アイドル状態検出の機構により,並列計算機においても逐次計算機に近い対話処理が実現可能であることが確認された. 本研究では,並列計算機におけるギャングスケジューリングに基づく時分割スケジューリングは,僅かなスケジューリングオーバヘッドで実現できることを実証した.一方,ギャングスケジューリングは非同期コスケジューリングに比べ,被スケジューリング並列プロセスの通信パターンやスケーラビリティという面においてより安定した挙動を示すことが確認された.また,ギャングスケジューリングとネットワークプリエンプション方式を用いることで,被スケジューリング並列プロセスの大域的なアイドル状態を検出できることを示した.さらに,時分割スケジューリングを主体とする時空間分割スケジューリングにおいてはバッチスケジューリングと同等の性能が得られることが検証された.これらの結果にから,ギャングスケジューリングと時空間分割スケジューリングを組み合わせることで,空間分割バッチスケジューリングと同等の効率で,多重プログラミング環境や対話プログラミング環境が並列計算機上で実用的になり得ることが確認されたと考えられる. |