4

複数のノードを使用して、オラクル グリッド エンジンでいくつかの akka コードを実行することは可能ですか?

「メッセージ パッシング モデル」であるアクター モデルを使用する場合、Scala と akka フレームワークを使用して、クラスターやグリッドなどの分散メモリ システムでコードを実行できますか?

もしそうなら、私のプログラムを異なるノードで実行するためmpirunに、のようなものはありますか? mpi -cオラクル グリッド エンジンを使用した送信例を教えてください。

自分がどのノードにいて、ジョブが送信されたノードの数をscala内で知るにはどうすればよいですか?

アクターモデルを介して他のノードと通信することは可能ですか?

4

1 に答える 1

7

mpirunまたは(mpiexec一部のシステムでは)あらゆる種類の実行可能ファイルを実行できます(MPIを使用していなくても)。現在、クラスターで Java および Scala コードを起動するために使用しています。mpirun中間スクリプトを使用できるように、呼び出し時に実行可能ファイルに引数を渡すのは難しい場合があります。

GridEngine と互換性のない Torque/Maui スクリプトを使用していますが、同僚が現在使用しているスクリプトは次のとおりです。

#!/bin/bash
#PBS -l walltime=24:00:00
#PBS -l nodes=10:ppn=1
#PBS -l pmem=45gb
#PBS -q spc
# Find the list of nodes in the cluster
id=$PBS_JOBID
nodes_fn="${id}.nodes"
# Config file
config_fn="human_stability_article.conf"
# Java command to call
java_cmd="java -Xmx10g -cp akka/:EvoProteo-assembly-0.0.2.jar ch.unige.distrib.BuildTree ${nodes_fn} ${config_fn} ${id}"
# Create a small script to pass properly the parameters
aktor_fn="./${id}_aktor.sh"
echo -e "${java_cmd}" >> $aktor_fn
# Copy the machine file to the proper location
rm -f $nodes_fn
cp $PBS_NODEFILE $nodes_fn
# Launch the script on 10 notes
mpirun -np 10 sh $aktor_fn > "${id}_human_stability_out.txt"
于 2012-10-21T10:27:53.143 に答える