#!/bin/bash
# Usage : p2pmpirun -n <numproc> [-r <numreplica> -l <input filelist> -o] <command> [args]
# -n <numproc> : number of processes MPI
# -r <numreplica> : number of replica per rank (omit for 1 replica per rank)
# -l <filelist> : list of input file (omit for transfer only executable file)
# -o : output will be collect in file (omit ouput will be on standard output) [not available]
# <command> : executable file without .class
# args : argument of executable file
#######################################################################################
if [ $# -lt 3 ]; then
	echo "Usage : p2pmpirun -n <numproc> [-r <numreplica> -l <input filelist> -w <time>] <command> [args]"
	echo " -n <numproc> : number of processes MPI"
	echo " -r <numreplica> : number of replica per rank (not needed for 1 replica per rank)"
	echo " -l <filelist> : list of input file (not needed if only the executable file is to be transfered)"
	echo " -w <time> : maximum time in seconds to wait for searching nodes"
	echo " <command> : executable file without .class"
	echo " args : arguments of executable file"
	exit 1
fi

runCmd=`java -cp ./:$P2PMPI_HOME/p2pmpi.jar:$JXTA_PATH/bcprov-jdk14.jar:$JXTA_PATH/javax.servlet.jar:$JXTA_PATH/log4j.jar:$JXTA_PATH/org.mortbay.jetty.jar:$JXTA_PATH/jaxen-core.jar:$JXTA_PATH/jaxen-jdom.jar:$JXTA_PATH/jdom.jar:$JXTA_PATH/saxpath.jar:$JXTA_PATH/swixml.jar:$JXTA_PATH/jxta.jar:$JXTA_PATH/jxtaext.jar:$CLASSPATH  p2pmpi.tools.MPIArgs $*`
java -cp ./:$P2PMPI_HOME/p2pmpi.jar:$JXTA_PATH/bcprov-jdk14.jar:$JXTA_PATH/javax.servlet.jar:$JXTA_PATH/log4j.jar:$JXTA_PATH/org.mortbay.jetty.jar:$JXTA_PATH/jaxen-core.jar:$JXTA_PATH/jaxen-jdom.jar:$JXTA_PATH/jdom.jar:$JXTA_PATH/saxpath.jar:$JXTA_PATH/swixml.jar:$JXTA_PATH/jxta.jar:$JXTA_PATH/jxtaext.jar:$CLASSPATH -Xmx512m -DP2PMPI_HOME=$P2PMPI_HOME -Dmode=server $runCmd
