Changes between Version 18 and Version 19 of Enviamatlab


Ignore:
Timestamp:
Oct 5, 2011 6:37:02 PM (11 years ago)
Author:
gutierjm
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Enviamatlab

    v18 v19  
    1 El acceso al cluster por ssh es 'mar.macc.unican.es' y los trabajos en Matlab hay que lanzarlos utilizando 'enviamatlab.sh', que se encarga de mandar el trabajo a la cola 'estadistica', que es la cola por defecto para los trabajos de Matlab; esta cola puede ejecutar hasta 24 trabajos a la vez: nodos WN10, WN11 y WN12 ('nodes'), con 8 procesadores cada uno ('ppn'). En la versión 2009  (que es la que usa el cluster actualmente) Matlab puede consumir mas CPU de la asignada si no se usa correctamente. Esto está resuelto en el script 'enviamatlab', pero para sesiones interactivas hay que habilitar una opción especial de la sesión ('help maxNumCompThreads', para más detalles), por lo que no deben utilizarse sesiones interactivas para enviar trabajos en Matlab salvo que se haga con la ayuda de Antonio o Sixto.
     1El acceso al cluster por ssh es '''mar.macc.unican.es''' y los trabajos en Matlab hay que lanzarlos utilizando '''enviamatlab.sh''', que se encarga de mandar el trabajo a la cola 'estadística' (que es la cola por defecto para los trabajos de Matlab; esta cola puede ejecutar hasta 24 trabajos a la vez: nodos WN10, WN11 y WN12, con 8 procesadores cada uno). En la versión 2009  (que es la que usa el cluster actualmente) Matlab puede consumir más CPU de la asignada si no se usa correctamente. Por tanto, sólo debe utilizarse 'enviamatlab' para ejecutar trabajos matlab en el cluster, salvo que se haga en sesiones interactivas con la ayuda de Antonio o Sixto (en este caso hay que habilitar una opción especial de la sesión 'help maxNumCompThreads', que no es trivial utilizar).
    22
    3 El script 'enviamatlab.sh' se ha añadido en un directorio del cluster ({{{/software/MachineIndependent/bin/}}}) accesible por todos los usuarios. Por tanto, si os logueais en mar y poneis '{{{which enviamatlab.sh}}}' (es decir, busca la ruta donde está '{{{enviamatlab.sh}}}') todos deberíais ver (sino hablar con Antonio o Sixto):
     3El script 'enviamatlab.sh' se ha añadido en un directorio del cluster ({{{/software/MachineIndependent/bin/}}}) accesible por todos los usuarios. Por tanto, si os logueais en mar y poneis '{{{which enviamatlab.sh}}}' (es decir, busca la ruta donde está '{{{enviamatlab.sh}}}') todos deberíais ver (sino es así, hablar con Antonio o Sixto):
    44
    55 {{{
     
    1515
    1616De este modo, se generarán en la carpeta dos ficheros:
    17  * '''matlabqsub.20091123T105716:''' este fichero lo genera el enviamatlab y será el que arranque matlab y ejecute el srcipt.m. El final del nombre es la fecha de ejecución.
    18  * '''script.20091123T105716.log:''' en este fichero se recoge la salida por pantalla de Matlab.
     17 * matlabqsub.20091123T105716: este fichero lo genera el enviamatlab y será el que arranque matlab y ejecute el srcipt.m. El final del nombre es la fecha de ejecución.
     18 * script.20091123T105716.log: en este fichero se recoge la salida por pantalla de Matlab.
    1919
    20 Al final de la ejecución del script.m se genera un nuevo fichero '''script.o114037''', donde el número indica el identificador del job ejecutado.
     20Al final de la ejecución del script.m se genera un nuevo fichero 'script.o114037', donde el número indica el identificador del job ejecutado.
    2121
    22 Una vez ejecutamos la función nos aparecerá por pantalla una serie de mensajes con la información del trabajo enviado. En la última línea se muestra el identificador del trabajo ('''!JobId''', en el ejemplo '''121176''') seguido del nombre de la máquina, ce01.macc.unican.es (esta máquina es el submitting machine, pero no es la que ejecuta el job; para monitorizar los jobs ver la sección de monitorización) .
    23 
     22Una vez ejecutamos la función nos aparecerá por pantalla una serie de mensajes con la información del trabajo enviado.
    2423{{{
    25 [rodri@mar ~]$ ./enviamatlab.sh test.m
    26 #!/bin/bash
    27 #PBS -N test
    28 #PBS -q macc
    29 #PBS -l nodes=1:ppn=1
    30 #PBS -l walltime=48:00:00 
    31 #PBS -m ea
    32 #PBS -M rmanzanas@ifca.unican.es
    33 #PBS -r n
    34 export LD_ASSUME_KERNEL=2.6.18
    35 export PATH=/software/Matlab_R2009a/bin:$PATH
    36 matlab -logfile /vols/mar/users/rodri/ejemplo/logs/log_20091209181811.err -r "cd /vols/mar/users/rodri/ejemplo;test;" -nosplash -nodesktop
    37 exit 0   
    38 121176.ce01.macc.unican.es
     24[gutierjm@mar ~]$ enviamatlab.sh script.m
     25+ mfile=script
     26+ mlscript=matlabqsub.20111005T182930
     27+ mfilepath=/oceano/gmeteo/users/gutierjm/.
     28Scientific Linux CERN SLC release 4.6 (Beryllium)
     29482820.ce01.macc.unican.es
     30}}}
     31 En la última línea se muestra el identificador del trabajo ('''!JobId''', en el ejemplo '''482820''') seguido del nombre de la máquina 'ce01.macc.unican.es'; esta máquina es el submitting machine, pero no es la que ejecuta el job; para monitorizar los jobs ver la sección de monitorización; por ejemplo, los trabajos que están corriendo en la cola 'estadística' se pueden ver con:
     32{{{
     33gutierjm@mar dynamicReservoir_Basic]$ qstat -n1 | grep estad
     34482820.ce01.macc.uni gutierjm estadist simulation  29340     1  --  750mb   --  R   --    wn011/0
    3935}}}
    4036