Tutorial SYMME

From Support-Applicatif

Jump to: navigation, search

Contents

Le portail lappuds3 / lappuds4

Les machines de portail lappuds3 / lappuds4 sont sous Scientific Linux 6 - 64 bits

>> Pour accéder au portail, vous devez demander un compte utilisateur :

Remplissez le formulaire électronique suivant : http://lappweb.in2p3.fr/informatique/Univ_Savoie/

Une fois rempli, imprimez le formulaire pdf généré. Lisez également la charte informatique du CNRS, signez le formulaire et faites-le contresigner par le directeur de votre laboratoire. Envoyez le formulaire complet à support-grid@lapp.in2p3.fr

>> Connexion to lappuds3 or lappuds4

Démarrer une session Putty et connectez vous sur la machine lappuds3.in2p3.fr ou lappuds4.in2p3.fr avec votre login/password.

>> Transfert de fichiers de Windows vers Linux

ATTENTION  : lorsque vous transférez un fichier texte de windows vers linux, ce dernier peut contenir des meta-caractères que linux ne peut interpréter

Après transfert d'un fichier de windows vers linux, utilisez la commande dos2unix pour supprimer ces caractères

>> Transfert de fichiers automatique de Linux vers Windows

recherche d'une solution en cours...

Commandes Linux de base

Variables d'environnement

Liste des variables d'environnement : env ou printenv

$HOME : home directory
$USER : votre user name
$PWD  : nom du répertoire courant

echo $HOME : affiche le nom de votre home directory
echo $USER : affiche votre user name

Comment filtrer le résultat d'une commande : grep
env | grep -i user : n'affiche que les variables d'environnement contenant la chaine "user"
( la barre de pipe "|" signifir que l'output de la commande env est envoyée en input de la commande grep)

Fichiers et répertoires

pwd : nom du répertoire courant
ls  : liste des fichiers du répertoire courant
ls -la : commande plus complète => visualisation des ACL, des propriétaires des fichiers, des noms, ...
ls -lrt : affichage complet, fichiers triés par date cd  : changement de répertoire ( cd .. : répertoire parent )

. : est le nom du répertoire courant
.. : est le nom du répertoire parent

cp <file1> <file2> : copie file1 dans file2
mv <file1> <file2> : déplace file1 dans file2
rm <file> : effacement de file
more <nom_fichier> : affiche le contenu d'un fichier (barre espace: suite / esc : stop)

mkdir <directory> : creation d'un nouveau répertoire
rmdir <directory> : effacement d'un répertoire

Process

ps -u <user_name>  : liste des processus linux appartenant à l'utilisateur user
kill -9 <process_id> : kill d'un processus unix ( ne marche pas pour stopper un job)

Historique

La commande history donne la liste des dernières commandes executées, à chaque commande est assocíée un identifiant (première colonne)

history  : historique des dernières commandes

!<identifiant>  : la ligne de commande ayant cet identifiant est executée à nouveau
rappel de commande  : les flèches haut/bas du clavier permettent d'afficher une à une les commandes de l'historique

Autocomplétion

Lorsque vous tapez une commande ou un nom de fichier, une fois les premières lettre tapées vous pouvez utiliser la touche tab pour obtenir automatiquement la liste des commandes / nom de fichier correspondants.
Cette option vous évite par exemple de taper les noms complets des fichiers.

Script shell

Un script shell est un script contenant les lignes de commandes linux que l'on souhaite exécuter. Ces shells sont utilisés pour la soumission de jobs sur la ferme de calcul MUST, ils contiennent l'ensemble des instructions à exécuter par le job.

Il existe plusieurs types de langage shells (csh, tcsh, sh ,zsh,...) : le shell par défaut de la machine lappuds2 est tcsh (echo $SHELL permet de voir quel est le shell par défaut utilisé sur une machine). Le tutoriel présenté ici est entièrement basé sur tcsh.

Help / Linux tutorials

man <command> : affiche une page expliquant la commande et ses options (esc : quit)

Quelques liens vers des tutoriels Linux :

Editeurs de textes

  • editeur basique disponible sur lappuds3 : pico
  • pour les connaisseurs : emacs -nw
  • pour les cas désespérés : vi

Ferme de calcul

Infrastructure

Sont désignées par WN (Worker Node) les machines composant la ferme de calcul, chacune étant équipée de plusieurs processeurs eux-mêmes incluant plusieurs coeurs (cores).

1 job (calcul) simple utilise alors l'équivalent d'1 coeur.

Une UI (User Interface) est une machine à partir de laquelle un utilisateur accède à la ferme de calcul : les machines lappuds3 et lappuds4 sont des UI.

Organisation des zones de travail

Chaque personne ayant un compte sur MUST dispose d'un répertoire personnel d'une dimension de 10 Go.
Une zone software est également à disposition de chaque laboratoire, zone dans laquelle sont installés des logiciels et outils partagés. Pour des raisons d'efficacité informatique, cette zone sera la plus petite possible. Si besoin des logiciels spécifiques peuvent être installés (Mathematica, Abaqus,...) sous réserve d'accès à un serveur de jetons/licence propre au laboratoire demandant. Des zones de stockage de données sont également mises à disposition sous certaines conditions.

Chaque job soumis sur un WN dispose également d'environ 15 Go d'espace disque dédié sur le WN ainsi qu'un processeur (2 Go RAM) dédié.

Les compilateurs et librairies MPI sont installées sur le cluster : un job peut demander de 2 à 32 processeurs maximum.

Pour plus de précisions, vous pouvez contacter l'équipe du support MUST

Soumission de jobs

Tous les jobs proposés dans les exercices sont soumis avec l'option -q flash. Cette option est réservée pour des jobs courts (<3 mn) de test et de debugage et ne doit en aucun cas être utilisée de façon standard.

Organisation des répertoires

Chaque laboratoire dispose d'une zone software partagée et chaque utilisateur dispose d'un répertoire de travail ($HOME) d'une dimension de 1Gb. Ce répertoire de travail est visible depuis l'ensemble des WN de la ferme de calcul.

Soumettre un job, signifie donc executer un script/executable sur un WN :

  • CPU : le CPU utilisé est celui du WN (2Gb/WN)
  • espace disque : il est possible de travailler dans ses répertoires personnels ainsi que sur le disque attaché au WN
  • espace disque software : cet espace est accessible en lecture

Exercices 1 et 2

Gestion des jobs

Les commandes de monitoring/gestion des jobs depuis la machine lappuds2 sont :

  • showq  : visualisation de la liste des jobs qui tournent sur la ferme MUST ( -r running, -i idle, -b blocked )
  • diagnose  : visualisation des priorités

Exercice 3

Execution d'un job : disque local / WN

Disque local WN
- vous pouvez visualiser les fichiers résultats en temps réel - vous ne pouvez pas visualiser les fichiers résultats en temps réel
- lenteur si vous faites beaucoup d'I/O - plus rapide si vous faites beaucoup d'I/O
 : ne pas modifier/effacer les répertoires pendant que le job tourne  : ne pas oublier de récupérer ses fichiers résultats en fin de job, ils seront effacés du WN et non récupérables une fois le job fini.

Exercice 4


Paramétrage des jobs (voir les exercices)

  • comment passer des valeurs de paramètres via l'option -v de qsub.
  • comment éviter que deux jobs n'écrivent dans un même répertoire et/ou un même fichier

Exercice 5

Exemple simple Mathematica

Exercice simple de soumission d'un job Mathematica : exercice8

Exercices du tutoriel MUST

Ces exercices sont disponibles sur la machine lappuds2 et sont présentés lors des différents tutoriels que nous avons réalisés précédemment.

L'exercice de type benchmark et la soumission d'un job MPI sont détaillés dans les exercices 6 et 7

Liens vers des présentations plus anciennes

L'ensemble des présentations du tutoriel réalisé le 22 janvier 2009 au LAMA (Bourget du Lac) sont disponibles ici :

  • MUST batch farm [1]
  • MUST batch farm - Exercises [2]
  • Application porting : from batch/interactive to EGEE [3]
Personal tools