Utilisation des commandes run_aster, run_sbatch et run_ctest ============================================================= Contrairement à astk et as_run qui permettent d'adresser différentes versions de code_aster, run_aster et run_sbatch ne lancent que leur propre version. Il y a donc un script run_aster (et run_sbatch) par version. Utiliser run_aster est la méthode recommandée pour lancer un calcul code_aster sur le serveur local, et run_sbatch est la meilleure option sur les serveurs à distance. Comment lancer un calcul ? --------------------------- Commande run_aster ^^^^^^^^^^^^^^^^^^^ Sur le serveur local ~~~~~~~~~~~~~~~~~~~~ En local, seul run_aster est accessible (run_sbatch n'est pas disponible car il n'y a pas de gestionnaire de batch en général). Pour lancer les exécutables sur le serveur local, il faut d'abord se placer dans le terminal du conteneur. Une fois dedans, pour lancer l'étude d'un seul calcul, il faut exécuter : .. code-block:: bash run_aster [options] file[.export|.py] Ici, run_aster est un alias vers `/opt/salome_meca/V/tools/code_aster/bin/run_aster`. Il suffit de choisir le script run_aster de la version que l'on souhaite exécuter. Pour les développeurs, le chemin de l'exécutable sera fréquemment `$HOME/dev/codeaster/install/mpi/bin/run_aster`. Il est possible de récupérer les informations du terminal lors de la compilation en faisant : .. code-block:: bash run_aster [options] file[.export|.py] > path_to_output_file Si besoin, il est possible d'afficher l'aide de run_aster en faisant : .. code-block:: bash run_aster --help Sur les serveurs à distance ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Tout d'abord, il faut se connecter au serveur à distance via ssh : .. code-block:: bash ssh NNI@ssh.hpc.edf.fr Sur les serveurs d'EDF R&D, il est obligatoire de lancer les calculs sur les noeuds de calcul en batch (et donc avec run_sbatch) et pas sur la frontale. Remarque : run_aster s'exécute directement, il ne faut donc pas l'utiliser sur la frontale. Commande run_sbatch ^^^^^^^^^^^^^^^^^^^^ Cette commande sert à exécuter code_aster sur le serveur à distance. La manière plus simple de faire est la suivante : .. code-block:: bash run_sbatch --wckey=$SBATCH_WCKEY [options] file[.export|.py] Ici run_sbatch est un alias pour l'exécutable `/aster/install//bin/run_sbatch`. Il suffit de choisir le script run_sbatch de la version que l'on souhaite exécuter. Dans ce contexte, la clé *$SBATCH_WCKEY* est à demander à votre responsable du projet. Pour en savoir plus sur les autres options de lancement, la commande disponible est : .. code-block:: bash run_sbatch --help Une option recommandée est « --dry-run », qui permet de créer et de lire le script de soumission. Cela permet aux utilisateurs de valider les paramètres de calcul avant de le lancer. Voici un extrait de ce qu'on pourrait lire : .. code-block:: text #!/bin/bash #SBATCH --job-name=myfile # number of nodes #SBATCH --nodes=1 # number of MPI processes #SBATCH --ntasks=1 # number of threads per MPI process #SBATCH --cpus-per-task=1 --threads-per-core=1 # max walltime #SBATCH --time="01:00:00" # memory in MB #SBATCH --mem=11596M # add `--exclusive` if several nodes, define `--partition=...` #SBATCH Commande run_ctest ^^^^^^^^^^^^^^^^^^ Cette commande sert à lancer un ou plusieurs cas-tests. Sur le serveur local ~~~~~~~~~~~~~~~~~~~~ Il faut exécuter : .. code-block:: bash run_ctest --testlist=file[.txt] --resutest=folder [options] Par similitude, ici run_ctest est un alias pour l'exécutable `/opt/salome_meca/V/tools/code_aster/bin/run_ctest` (qui peut changer en fonction de la version installée). Pour les développeurs, le chemin de l'exécutable sera fréquemment `$HOME/dev/codeaster/install/mpi/bin/run_ctest`. Remarque : En local, la commande run_ctest exécute de manière linéaire le calcul des cas-tests dont le nom est dans le fichier file.txt (un cas-test après l'autre). Dans un serveur à distance, run_ctest exécute les calculs en parallèle (un job pour chaque cas-test). Dans cet exemple, le fichier file.txt contient les noms des fichiers export à exécuter. Par exemple : .. code-block:: text sdls118a sdls118b sdls118c sdls118d sdls118e sdnx100g Finalement, l'option resutest permet de changer le répertoire des résultats des cas-tests. Pour plus de détails sur les autres options disponibles, il faut exécuter sur le terminal : .. code-block:: bash run_ctest --help Sur les serveurs à distance ~~~~~~~~~~~~~~~~~~~~~~~~~~~ De manière très similaire au cas du serveur local, on exécute run_ctest par cette ligne de commande : .. code-block:: bash run_ctest --wckey=$SBATCH_WCKEY --testlist=file[.txt] --resutest=folder [options] --sbatch où on indique la clé WCKEY et l'option sbatch afin de lancer les différents cas-tests dans des jobs différents avec slurm.