概要
- 必要なライセンス
- Sonnet Professionalの複数のemネットワークライセンスと ひとつのemclusterのサイトライセンスが必要です.
- 設定の前に
- クラスタを構成する各マシンでsonnet professionalが動作し、相互にネットワークを通じて通信できる状態にあること.
- クラスタの構成
- クラスタでは、1台のクラスタマスタと、複数台のクラスタスレーブが協力して、ひとつの問題を解析します. 実際に問題を解析するのはクラスタスレーブで、
クラスタマスターは全体の管理だけをします. それだけでは、クラスタマスターの負荷が軽すぎますから、多くの場合、クラスタマスターは同時にクラスタスレーブとして解析を行うように設定されます.
下記の設定例では、一台のマシンに同時に クラスタマスタとクラスタスレーブの役割を持たせて擬似的にクラスタシステムを構成しています.実際は複数のクラスタスレーブが必要なことに注意してください.
クラスタを構成する、それぞれのクラスタースレーブで下記の設定を行います.
Sonnet Task Barで[Admin]-[SonnetCluster Status/Control...]を選びます.
|
|
[Slave]タブを開きます.
[Use this machine as a SonnetCluster Slave computer]にチェックを入れます.
ホスト名か、IPアドレスでクラスターマスターマシンを指定します
右の例ではクラスターマスターとしてbenchmark.localdomainを指定しました.
|
|
[Slave]タブの下の[Status]タブを開きます.
[Start emserver]をクリックします.
|
|
クラスターマスターを設定します.
Sonnet Task Barで[Admin]-[SonnetCluster Status/Control...]を選びます.
|
|
[Master]タブを開きます.
[Use this machine as a SonnetCluster Master computer]にチェックを入れます.
|
|
[Master]タブの下の[Slaves]タブを開きます.
[Add NewSlave]をクリックし 、クラスタースレーブを(通常は)複数台指定してゆきます.
|
|
Slaveを指定するとSlaveがリストに現れます.
ここでは一例として benchmark.localdomainというクラスタースレーブを一台だけ、 指定しています.
でもここではまだ定義されただけ"Defined"で動作していません.
|
|
Slaveマシンがマルチコアの場合は
Slaveマシンを選択して、[Edit Slave]をクリックしてください
|
|
Slaveマシンがマルチコアの場合は
Simultaneous Job CountにそのSlaveマシンが同時に処理できる数を設定してください.これでマルチコアCPUを100%負荷で使えます.
ただしemのライセンスを同時に複数個使ってしまうことを忘れないでください
Maxmum Job memoryにはPCに実装しているメモリ / Simultaneous Job Count より小さな値を入れてください.
例えば、8GBを実装したDual Core CPUなら Simultaneous Job Count =2、Maxmum Job memoryはせいぜい3700MBにしてください.
もちろんそのマシンでHyper Threadも使って 4CPUをフルに使わせるならSimultaneous Job Count =4、Maxmum Job memoryはせいぜい1800MBになります.
この機能はVer11.54から追加されました.(2007/10/19追記)
|
|
[Master]タブの下の[Queue]タブを開きます.
[Start]をクリックします.
|
|
[Master]タブの下の[Slaves]タブを開きます.
こんどは、"Enabled"と表示され、動作しています.
|
|
クラスタシステムにABSスイープのjobを送ると、クラスタマスターはABSスイープを自動的にLinearスイープに分割して、各周波数ごとに、jobをクラスタースレーブに割り当てます.次に、クラスタースレーブが解析した結果にもとづいてクラスタマスターがABSを実行します.Linearスイープで解析した周波数ポイントがABSにとって不十分と判断された場合は、クラスタマスタが不足した解析を行います.
クラスタマスタがABSをLinearスイープに分割するときの分割数は Sonnetをインストールしたディレクトリの data/sonnet_cluster.ini
ファイルに NumFixedAbsFreq というパラメータを追加して、指定できます.
デフォルト値は7ですが、この値は、スレーブマシンの数の整数倍で、且つ4〜10程度が望ましいです.
|
|
後は、クラスタを呼び出す側のクライアントマシンで、 Sonnet Analysis Monitorの[File]-[Preferences]で[SonnetCluster]を使うように設定してください.
[Edit Cluster List]にはクラスタマスターを指定します.
クラスタシステムは 一周波数あたりの解析時間が数分以上の問題に使ってください. 小さな問題(たとえば、SonnetLiteで解けそうな)では、通信オーバーヘッドのために非常に遅くなります.
|
|
うまく動いたら、各マシンのMaster,Slaveそれぞれの[Setup]タブを開いて、 [Use Services][Start EmServer
at Powerup]にチェックを入れておきましょう. これで電源を入れなおしても、ちゃんと動作するようになります.
|
|