MBT
Pour contourner les problèmes d'exécutions du code MBT sur le mésocentre, nous utilisons le conteneur singularity.
Le conteneur héberge la dernière version d'Ubuntu (16.04) ainsi que la version 1.9 de Java.
Pour exécuter un code Java à l'interieur du conteneur :
On charge singularity
$ module load tools/singularity
On exécute le programme à l’intérieur du conteneur
$ singularity exec $SING_SPOOL/ubuntu-16.img java monPackage.Maclasse
Avec :
singularity exec, lance le conteneur$SING_SPOOL/ubuntu-16.img, chemin vers l'image du conteneurjava, c'est Java qui est installé dans le conteneurmonPackage.Maclasse, mon programme Java, disponible dans le répertoire courant.
Voici un script SGE, à adapter selon les besoins, pour lancer le MBT (le code trouvé dans le répertoire de saif) :
- mbt.sge
#!/bin/bash #$ -q all.q #$ -V #$ -N parallelMBT #$ -cwd #$ -o $JOB_NAME.$JOB_ID.out ##### on request 4G/core #$ -l h_vmem=4G ##### we request 8 cores #$ -pe openmp 8 #### load container module load tools/singularity ## NB1. We need to modify java home.user to use $WORK. because HOME is readonly in computing nodes ## java -Duser.home=$WORK ..... ## NB2. Note that we are using singularity container to run Java singularity exec $SING_SPOOL/ubuntu-16.img java -Duser.home=$WORK -Xmx1024M -noverify -cp GenerationTryOptimisedCode-1.0.0-SNAPSHOT.jar fr.femtost.disc.mbeetle.generation.Launcher 8 2 2
Version distribué avec MPI
- mbt-mpi.sge
#!/bin/bash #$ -q parallel.q #$ -V #$ -N certifyit-distributed #$ -cwd #$ -o $JOB_NAME.$JOB_ID.out ### request 4G/core ### #$ -l h_vmem=4G ### request number of cores cores ### #$ -pe mpi 64 module load lang/java module load mpi/openmpi/gcc/2.0.1 module load tools/singularity mpirun -np $NSLOTS singularity exec $SING_SPOOL/ubuntu-16.img java -Duser.home=$WORK -noverify -Xmx4g -Djava.library.path=/usr/local/lib -cp .:/usr/local/lib/mpi.jar -jar libs/com.smartesting.mesocentre.jar model=pkcs11_model.smtmodel nomerge=true groupSize=8