comp0〜comp7、とクラスタ データベース
サーバ (scoreboard) と計算ホスト ロック サーバ
(msgbserv) が動作しているサーバホストがあるとします。
これは scout 環境を用いてクラスタ上で hello コマンドを
実行した例です:
$ export SCBDSERV=server $ msgb -group pcc $ scout -g pcc SCOUT: Spawn done. SCOUT: session started $ scrun -nodes=8 ./hello SCORE: connected (jid=100) <0:0> SCORE: 8 hosts ready. Hello World! (from node 2) Hello World! (from node 5) Hello World! (from node 3) Hello World! (from node 6) Hello World! (from node 4) Hello World! (from node 7) Hello World! (from node 0) Hello World! (from node 1) $ exit SCOUT: session done $
hello を実行する手順は以下のとおりです:
scout は scoreboard デーモンに、グループに
登録されている計算ホストのリストを問い合わせるメッセージを送信します。
msgbserv デーモンに、プログラムの排他的な使用のために、
8つのノードを確保することを依頼する要求メッセージを送信します。
もし8つのノード全てを確保できる (他の SCore プログラムが現在使っていない)
なら、承認メッセージが返送されます。
msgbserv がロックされている間、scout は
scremote と呼ばれる制御プロセスを各計算ノード上に生成します。
それから msgbserv のロックは解放されます。
scrun がプログラムを実行すると、scout に確保した
8台の計算ホスト上でプログラムを実行するよう要求します。
次に scout は msgbserv をロックし、
ユーザに代わって scremote プロセスに対して、
計算ホスト上で scored オペレーティング システムをフォーク、
実行するように要求します。
scored プロセスはユーザのプログラムが完了するまで
フォーク、実行します。
プログラムが完了すると、 scored プロセスは終了し、
msgbserv はロック解除されます。
scout が終了すると、msgbserv は再びロックされ、
scremote プロセスは終了します。
msgbserv のロックは最後に解放されます。

計算ホスト ロックサーバがロックされていないとき、他のユーザがまだクラスタを
使うことができるということに注意すべきです。
msgbserv がロックされるたびに、msgb ウィンドウ内に
表示されるブロックが赤色に変わり、ホストをロックしたユーザ ID、ホストが
ロックされた時間、およびホスト名が連続して表示されます。
![]() |
PCクラスタコンソーシアム |