...
Run the binary directly with or without the extended mode:
Code Block language bash mpirun -np 16 --hostfile ~/config/cli_hosts ./io500 temp.ini mpirun -np 16 --hostfile ~/config/cli_hosts ./io500 temp.ini --mode=extended
The extended mode is not required for an official submission and will extend your runtime significantly. After the run completes, you will need to tar up the result dir for that run.
Note that some versions of OpenMPI require setting the environment variables on the mpirun command line, so one needs to add the environment variables that are mentioned above on the mpirun command line with the following format:
Code Block language bash mpirun -np 16 -x env1=value1 -x env2=value2 --hostfile ~/config/cli_hosts ./io500 temp.ini
Run the io-500.sh script:
This requires mounting dfuse on the launch node only (not all the compute nodes):
Code Block language bash mkdir /tmp/dfuse dfuse --pool=/tmp/dfuse/ $DAOS_POOL --container=$DAOS_CONT -m /tmp/dfuse/
Then, edit the io500.sh launch script with the mpirun command and change the local workdir, to add the dfuse prefix
Code Block language bash diff --git a/io500.sh b/io500.sh index 5f0bb89..dd62c35 100755 --- a/io500.sh +++ b/io500.sh @@ -12,10 +12,10 @@ # This script takes its parameters from the same .ini file as io500 binary. io500_ini="$1" # You can set the ini file here io500_mpirun="mpiexec" -io500_mpiargs="-np 2" +io500_mpiargs="-np 16 --hostfile ~/config/cli_hosts" function setup(){ - local workdir="$1" + local workdir="/tmp/dfuse/$1" local resultdir="$2" mkdir -p $workdir $resultdir
Note that some versions of OpenMPI require setting the environment variables on the mpirun command line, so one needs to add the environment variables that are mentioned above on the mpirun command line in the script here with the following format:
Code Block language bash io500_mpiargs="-np 16 -x env1=value1 -x env2=value2 --hostfile ~/config/cli_hosts
Then run the io500.sh script which will tar the results for you at the end and place them in the result directory you specified in the ini file:
Code Block language bash ./io500.sh temp.ini
Lastly umount dfuse on the launch node:
Code Block language bash fusermount3 -u /tmp/dfuse/
...