Différences entre les versions de « Simulations2 »
Ligne 38 : | Ligne 38 : | ||
Dans le respect des consignes, vous pouvez démarrer un maximum de 2 simulations sur <tt>uranus</tt>, 3 sur <tt>jupiter</tt> et 1 seule sur <tt>cougar</tt>. | Dans le respect des consignes, vous pouvez démarrer un maximum de 2 simulations sur <tt>uranus</tt>, 3 sur <tt>jupiter</tt> et 1 seule sur <tt>cougar</tt>. | ||
+ | == Quelques procédures == | ||
+ | === Exécuter un processus en arrière-plan === | ||
− | + | Une fois branché à une machine, vous pouvez démarrer une simulation sur celle-ci en arrière-plan (''batch'') : de cette façon, votre programme continuera de fonctionner même lorsque vous serez débranché de la machine ou lorsque vous aurez quitté votre session de travail (''Log out''). Pour lancer votre simulation <tt><script></tt> en arrière-plan, entrez | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | Une fois branché à une machine | ||
<pre> | <pre> | ||
<programme> [options] <script> & | <programme> [options] <script> & | ||
</pre> | </pre> | ||
− | où <tt><programme></tt> est le programme exécutant votre script ([[R|R]], [[MATLAB|MATLAB]], etc.) et <tt>[options]</tt> sont les paramètres à passer au programme. À la toute fin, l'esperluette (« & ») indique à Linux d'exécuter le tout en arrière-plan. Lorsque la commande est entrée, un numéro d'identification correspondant à votre simulation est retourné : il s'agit du PID. Si vous souhaitez | + | où <tt><programme></tt> est le programme exécutant votre script ([[R|R]], [[MATLAB|MATLAB]], etc.) et <tt>[options]</tt> sont les paramètres à passer au programme. À la toute fin, l'esperluette (« & ») indique à Linux d'exécuter le tout en arrière-plan. Lorsque la commande est entrée, un numéro d'identification correspondant à votre simulation est retourné : il s'agit du [http://fr.wikipedia.org/wiki/Identifiant_de_processus PID]. Si vous souhaitez arrêter votre simulation, vous aurez besoin de ce numéro. |
Par exemple, pour démarrer le script [[R|R]] nommé <tt>prog.R</tt>, il suffit de taper | Par exemple, pour démarrer le script [[R|R]] nommé <tt>prog.R</tt>, il suffit de taper | ||
Ligne 65 : | Ligne 52 : | ||
R CMD BATCH prog.R & | R CMD BATCH prog.R & | ||
</pre> | </pre> | ||
− | Le système vous retourne ensuite | + | Le système vous retourne ensuite le PID associé : |
<pre> | <pre> | ||
[1] 10369 | [1] 10369 | ||
</pre> | </pre> | ||
− | + | ||
+ | === Retrouver le PID d'un processus === | ||
+ | |||
+ | Si vous avez perdu le PID associé à un processus s'exécutant en arrière-plan, vous pouvez toujours le récupérer à l'aide de la commande <code>ps</code>. | ||
+ | |||
<pre> | <pre> | ||
− | + | ps | |
</pre> | </pre> | ||
− | + | Cette commande vous retourne tous les processus en cours d'exécution et leur PID. Il vous suffit alors d'identifier le processus associé à votre simulation. | |
− | + | === Arrêter une simulation === | |
− | |||
− | Si | + | Si vous connaissez le PID d'un processus en cours d'exécution, vous pouvez toujours l'arrêter à l'aide de la commande <code>kill</code>. |
+ | |||
+ | Pour arrêter le processus ayant pour PID 10369, vous n'avez qu'à entrer | ||
+ | <pre> | ||
+ | kill 10369 | ||
+ | </pre> | ||
==== Remarques importantes ==== | ==== Remarques importantes ==== |
Version du 24 février 2014 à 14:51
Depuis l'avènement de l'informatique, les simulations numériques sont couramment utilisées en sciences, tant pour tester des hypothèses, qu'effectuer une analyse numérique, pour mettre un modèle à l'épreuve, etc. et l'environnement informatique du Département est conçu de façon à faciliter la mise en place de telles simulations.
Cette page contient des renseignements quant aux ressources disponibles, indique quelques procédures standards et offrent quelques conseils généraux.
Présentation des ressources
Les différentes machines
Le Département fourni plusieurs machines permettant d'effectuer d'imposants calculs qui sont partagées entre les usagers. Ces machines sont dispersées en 4 différents endroits : labomat, labodms, labostat et la salle des serveurs. Bien que l'on retrouve ces machines en des lieux différents, elles sont toutes connectées entres elles grâce à un réseau et l'on peut se connecter à chacune d'entre elles à l'aide de la commande ssh
. Veuillez prendre note qu'une politique d'utilisation régit l'utilisation du réseau.
Afin d'éviter de surcharger les machines et de ralentir vos calculs, vous devez choisir votre machine à l'aide de la commande simulation
. Il suffit d'entrer dans un terminal (icône ) :
simulation
Cette commande renvoie l'utilisation de la mémoire vive des machines disponibles : plus le rapport associé à une machine est grand, plus celle-ci est occupée. Évidemment, les machines les moins utilisées devraient être priorisées pour vos simulations.
Les différents logiciels
En plus de plusieurs logiciels libres, le Département détient certaines licences de logiciels de haute performance. La plupart de ces [[1]] sont installés sur toutes les machines.
Également, afin d'éviter les erreurs de mises à niveau, les anciennes versions des logiciels sont toujours disponibles.
Consignes à respecter
Par courtoisie pour les autres usagers, un maximum de 3 simulations (processus) par machine par usager est autorisé. De plus, l'utilisation moyenne d'une machine ne devrait jamais dépasser sa « capacité moins 1 ». Autrement dit, la machine devrait pouvoir exécuter au moins 1 nouveau processus indépendant.
Par exemple, supposons que vous ayez choisi, pour lancer vos simulations, les machines uranus, jupiter et cougar. Supposons également que leur utilisation moyenne, telle que renvoyée par la commande simulation, soit donnée par
Machine Utilisation -------------------------- uranus 5.05 / 8.00 jupiter 2.04 / 8.00 cougar 0.51 / 2.00
Dans le respect des consignes, vous pouvez démarrer un maximum de 2 simulations sur uranus, 3 sur jupiter et 1 seule sur cougar.
Quelques procédures
Exécuter un processus en arrière-plan
Une fois branché à une machine, vous pouvez démarrer une simulation sur celle-ci en arrière-plan (batch) : de cette façon, votre programme continuera de fonctionner même lorsque vous serez débranché de la machine ou lorsque vous aurez quitté votre session de travail (Log out). Pour lancer votre simulation <script> en arrière-plan, entrez
<programme> [options] <script> &
où <programme> est le programme exécutant votre script (R, MATLAB, etc.) et [options] sont les paramètres à passer au programme. À la toute fin, l'esperluette (« & ») indique à Linux d'exécuter le tout en arrière-plan. Lorsque la commande est entrée, un numéro d'identification correspondant à votre simulation est retourné : il s'agit du PID. Si vous souhaitez arrêter votre simulation, vous aurez besoin de ce numéro.
Par exemple, pour démarrer le script R nommé prog.R, il suffit de taper
R CMD BATCH prog.R &
Le système vous retourne ensuite le PID associé :
[1] 10369
Retrouver le PID d'un processus
Si vous avez perdu le PID associé à un processus s'exécutant en arrière-plan, vous pouvez toujours le récupérer à l'aide de la commande ps
.
ps
Cette commande vous retourne tous les processus en cours d'exécution et leur PID. Il vous suffit alors d'identifier le processus associé à votre simulation.
Arrêter une simulation
Si vous connaissez le PID d'un processus en cours d'exécution, vous pouvez toujours l'arrêter à l'aide de la commande kill
.
Pour arrêter le processus ayant pour PID 10369, vous n'avez qu'à entrer
kill 10369
Remarques importantes
- Après vous être déconnecté d'une machine où vous venez de démarrer une simulation, les messages que cette dernière pourrait afficher à l'écran sont perdus : vous devez donc prendre soin d'enregistrer les résultats de votre simulation dans un fichier, sur votre compte. De plus, si vous lancez plusieurs simulations à la fois, assurez-vous que chacune utilise un ensemble distinct de fichiers : ceci évitera de potentiels problèmes d'accès et de perte de données. Par exemple, la simulation script1 pourrait utiliser res_1.csv et dat_1.csv pour enregistrer ses résultats, alors que simul2 pourrait utiliser res_2.csv et dat_2.csv.
- Si vos calculs font appel à des nombres aléatoires, assurez-vous que chacune de vos simulations utilise des graines (seeds) différentes pour le générateur de nombre aléatoires, sinon vous obtiendrez des résultats identiques pour toutes vos simulations.
Calculs en parallèle
Lorsque vos calculs s'y prêtent (opérations sur matrices et vecteurs, boucle avec itérations indépendantes, etc.), l'exécution de votre script en parallèle peut être très avantageuse.
Plusieurs des logiciels les plus utilisés au Département pour les simulations comportent des extensions qui permettent la parallélisation, notamment R et MATLAB. Consultez les pages dédiées à ces logiciels pour plus de détails.
Arrêter une simulation
Pour arrêter une simulation, vous devez utiliser la commande kill suivie du numéro de processus (PID) de votre simulation :
kill 452
Si vous ne connaissez pas le PID de votre simulation, entrez la commande top dans un terminal :
top - 10:00:02 up 14 days, 11:22, 4 users, load average: 0.37, 0.24, 0.18 Tasks: 239 total, 2 running, 237 sleeping, 0 stopped, 0 zombie Cpu(s): 0.3%us, 0.2%sy, 0.0%ni, 99.3%id, 0.2%wa, 0.0%hi, 0.0%si, 0.0%st Mem: 2036352k total, 1959528k used, 76824k free, 51480k buffers Swap: 3071992k total, 21940k used, 3050052k free, 1202944k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10558 fedora 20 0 172m 29m 2960 R 24.2 1.5 0:00.29 R 10567 fedora 20 0 19380 1340 928 R 3.5 0.1 0:00.07 top 1880 root 20 0 272m 1008 804 S 1.7 0.0 0:07.39 ypbind 1 root 20 0 23556 848 636 S 0.0 0.0 0:14.94 init 2 root 20 0 0 0 0 S 0.0 0.0 0:01.63 kthreadd 3 root RT 0 0 0 0 S 0.0 0.0 0:00.14 migration/0
Appuyez sur « q » pour quitter. Pour arrêter la simulation R de PID 10558 qui s'exécute, il suffit d'entrer
kill 10558
N.B. : Seul l'usager ayant démarré le processus peut le terminer. Dans l'exemple précédent, seul fedora peut tuer 10558.
Travail à distance
Windows
Si votre ordinateur personnel utilise Windows, vous devrez d'abord télécharger PuTTY ainsi que FileZilla ou NetDrive. Le logiciel PuTTY sert à vous connecter au réseau du DMS et à émuler le terminal de commandes Linux. Les logiciels FileZilla et NetDrive sont deux logiciels vous permettant de transférer des fichiers de votre ordinateur personnel vers votre compte au DMS, et vice-versa.
En combinant ces programmes, vous pouvez ainsi travailler à distance sur votre script de simulation, télécharger celui-ci sur votre compte au DMS, le démarrer sur une (ou plusieurs) machine(s) du Département et ensuite télécharger les résultats de la simulation sur votre ordinateur personnel.
Consultez les pages PuTTY et FileZilla (ou NetDrive) pour les instructions de téléchargement, de configuration et d'utilisation.
Une fois branché au réseau, vous êtes prêt à démarrer une simulation.
Mac OS ou Linux
Si votre ordinateur personnel fonctionne sous Mac OS ou Linux, vous pouvez vous brancher au réseau grâce à la commande ssh :
ssh usager@ssh.dms.umontreal.ca
où usager est votre identifiant au DMS. Pour télécharger vos fichiers, vous pouvez employer une version Mac ou Linux de FileZilla ou encore utiliser la commande scp.
Une fois branché au réseau, vous êtes prêt à démarrer une simulation.
Plus d'espace
Si vous avez un grand besoin d'espace pour vos données, vous pouvez les placer dans le répertoire NOBACKUP où vous avez droit à une limite inférieure (quota) de 10 Go et une limite supérieure de 15 Go.
Comme son nom l'indique, aucune copie de sauvegarde n'est effectuée pour ce répertoire.