Diferencia entre las páginas «Monitoreo» y «MATLAB»

De NLHPC
(Diferencia entre las páginas)
 
 
Línea 1: Línea 1:
== ¿Como listo las tareas? ==
== ¿Qué es? ==
Ejecuto el comando [https://slurm.schedmd.com/squeue.html squeue] para conocer por ejemplo el estado, tiempo de ejecución e identificador de los trabajos [https://wiki.nlhpc.cl/SISTEMA_GESTOR_DE_RECURSOS SLURM]
<pre>
[usuario@leftraru1 ~]$ squeue -o "%.15i %.6P %.8j %.20S %.11M %.11L %.20V %.2t %.10q %.4C %.2D %.7W %N " -S -t,-Q


JOBID    PARTIT  NAME    START_TIME          TIME      TIME_LEFT  SUBMIT_TIME        ST  QOS CPUS NO LICENSE NODELIST
MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es una herramienta de software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M).
12863561  slims  test04  2018-07-08T13:57:53  1-20:25:20 1-03:34:40 2018-07-08T13:57:26  R  120  5  1  (null) cn000
12864082  slims  test02  2018-07-09T10:44:15    23:38:58 2-00:21:02 2018-07-09T10:43:51  R  120  10  1  (null) cn001
12865333  slims  test01  2018-07-10T17:16:38        0:00 3-00:00:00 2018-07-10T09:30:22  PD 120  10  1  (null)
12865334  slims  test06  2018-07-10T17:49:42        0:00 3-00:00:00 2018-07-10T09:38:13  PD 120  10  1  (null) 
12865335  slims  test09  2018-07-11T07:42:16        0:00 3-00:00:00 2018-07-10T09:28:05  PD 120  20  1  (null)
</pre>


== ¿Como monitoreo los recursos utilizados por mi tarea? ==
== Modulos ==
=== Conectándose al nodo ===
Se encuentra disponible con el nombre '''Matlab/2017''' y el runtime esta agregado como '''MCR/R2017a''' en todas las particiones de leftraru.
Siempre y cuando tengamos tareas corriendo en un nodo, podemos entrar en este vía SSH.


==== * uptime ====
== Ejemplo SBATCH para [https://wiki.nlhpc.cl/SISTEMA_GESTOR_DE_RECURSOS#SLURM_Workload_Manager SLURM] ==
Para conocer la carga del nodo, cuantos procesos por core existen actualmente.
<pre>
<pre>
[usuario@leftraru1 ~]# ssh cn109
#!/bin/bash
usuario@cn000 s password:
#SBATCH --job-name=ejemplo
[usuario@cn000 ~]# uptime
#SBATCH --mail-user=usuario@correo.cl
10:40:59 up 27 days, 16:46,  1 user,  load average: 17.04, 13.76, 13.09
#SBATCH --mail-type=ALL
</pre>
#SBATCH --output=%j_%x.out
#SBATCH --error=%j_%x.err
#SBATCH --partition=slims
#SBATCH -n 1
#SBATCH --ntasks-per-node=1
#SBATCH --mem-per-cpu=2300
#SBATCH --license=matlab #agregar si se va a ocupar MATLAB


==== * User Stats ====
ml Matlab/2017
Este script permite revisar:
 
===== La memoria por core (en kb) =====
<pre>
[usuario@cn000 ~]$ /home/apps/nlhpc/bin/user_stats.sh mem
00 371695616
01 373268480
02 367038464
03 363290624
04 367382528
</pre>
 
===== Cantidad de procesos por core =====
<pre>
[usuario@cn000 ~]$ /home/apps/nlhpc/bin/user_stats.sh load
00 1
01 2
02 1
03 1
04 1
</pre>


==== * htop ====
matlab -nodisplay -nosplash -nodesktop < ejemplo.m
Es un visor de procesos en linux, basado en ncurses.
<pre>
[usuario@cn109 ~]# htop
</pre>
</pre>
(Sin paralelización)


[[Archivo:Htop.png|no|htop]]
== Licencias ==
Existen 50 licencias disponibles para el uso de MATLAB proporcionadas por el [http://www.cmm.uchile.cl/ CMM], pero es posible evitar esta restricción de licencias creando una [https://wiki.nlhpc.cl/MATLAB_Compilaci%C3%B3n compilación standalone] con el Toolbox Compiler. El gestor de recursos cancelara las tareas que no indiquen las licencias en el script SBATCH, todo esto para favorecer el uso entre los distintos usuarios.


== Toolbox ==
Tenemos disponibles los siguientes toolbox con su respectiva cantidad de licencias.


.
<p>&nbsp;</p>


=== A través de Ganglia ===
<table align="center" border="1" cellpadding="1" cellspacing="1" style="width:500px">
Ganglia es un sistema de monitoreo distribuido para sistemas HPC, por cada uno de los nodos de cómputo de las diferentes particiones están disponibles los gráficos de memoria, carga, porcentaje de cpu usada, tráfico, etc.
<tr>
<th scope="col">Nombre</th>
<th scope="col">Cantidad</th>
<th scope="col">Licencia Slurm</th>
</tr>
<tr>
<td>SIMULINK</td>
<td>2</td>
<td>matlab-simulink</td>
</tr>
<tr>
<td>Bioinformatics</td>
<td>1</td>
<td>matlab-bioinformatics</td>
</tr>
<tr>
<td>Control</td>
<td>20</td>
<td>matlab-control</td>
</tr>
<tr>
<td>Curve_Fitting</td>
<td>2</td>
<td>matlab-curve_fitting</td>
</tr>
<tr>
<td>Database</td>
<td>1</td>
<td>&nbsp;matlab-database</td>
</tr>
<tr>
<td>Econometrics</td>
<td>2</td>
<td>matlab-econometrics</td>
</tr>
<tr>
<td>Financial</td>
<td>2</td>
<td>matlab-financial</td>
</tr>
<tr>
<td>GADS</td>
<td>1</td>
<td>matlab-gads</td>
</tr>
<tr>
<td>Image</td>
<td>2</td>
<td>matlab-image</td>
</tr>
<tr>
<td>MATLAB_Coder</td>
<td>1</td>
<td>matlab-matlab_code</td>
</tr>
<tr>
<td>Compiler</td>
<td>1</td>
<td>matlab-compiler</td>
</tr>
<tr>
<td>Optimization</td>
<td>5</td>
<td>matlab-optimization</td>
</tr>
<tr>
<td>Distrib_Computing</td>
<td>2</td>
<td>matlab-distrib_computing</td>
</tr>
<tr>
<td>PDE</td>
<td>20</td>
<td>matlab-pde</td>
</tr>
<tr>
<td>Signal</td>
<td>2</td>
<td>matlab-signal</td>
</tr>
<tr>
<td>SimBiology</td>
<td>2</td>
<td>matlab-simbiology</td>
</tr>
<tr>
<td>Statistics</td>
<td>5</td>
<td>matlab-statistics</td>
</tr>
<tr>
<td>Identification</td>
<td>&nbsp;2 &nbsp;&nbsp;</td>
<td>&nbsp;matlab-identification</td>
</tr>
<tr>
<td>Wavelet</td>
<td>1</td>
<td>matlab-wavelet</td>
</tr>
</tbody>
</table>


[[Archivo:Ganglia.png|no|300px]]
<p><br />
<br />
&nbsp;</p>


=== A través de [http://dashboard.nlhpc.cl/ Dashboard] ===
<p>&nbsp;</p>
Panel de visualización del estado de los nodos. Muestra una vista rápida del estado de los nodos (de login y de cómputo) y uso general del cluster, ademas de encontrar el listado de tareas en ejecución, pendientes, históricos.
 
=== En el correo de notificación ===
Al terminar una tarea se adjuntan las siguientes gráficas:
 
==== Porcentaje de uso por core ====
[[Archivo:300px-Correo CPU.png|izquierda]]
 
==== Memoria utilizada por core ====
 
[[Archivo:300px-Correo MEMxCPU.png|izquierda]]
 
==== Archivo report.log ====
<pre>
job_id=12668XXX user=usuario mail=None start_time=2018-07-09T06:51:34 running_time=3:53:28 cores_total=10 nodes_raw=cn094 alarm_cpu=True alarm_memory=False watch|avg|std|ptotal=10800|30|20|50 ptcw=70 command=/home/usuario/tarea.sh nodes={'cn094': {'mem': '10000', 'cpu': [0, 2, 3, 4, 5, 6, 7, 8, 9, 10]}} alarm_count=1 last_time=1531147611 iter=2 job_cancel=None modules=[]
n=cn094
 
  mem max:3586 resv:10000
  cpu=10 avg=91.00 std=45.77 / all avg=0.00 std=0.00
  cpu= 0 avg=98.19 std=44.53 / all avg=0.00 std=0.00
* cpu= 3 avg=0.56 std=0.50 / all avg=0.47 std=0.50
* cpu= 2 avg=0.86 std=0.35 / all avg=0.66 std=0.47
* cpu= 5 avg=0.64 std=0.48 / all avg=0.49 std=0.50
* cpu= 4 avg=0.53 std=0.50 / all avg=0.40 std=0.49
  cpu= 7 avg=82.11 std=48.93 / all avg=0.00 std=0.00
* cpu= 6 avg=0.56 std=0.50 / all avg=0.45 std=0.50
* cpu= 9 avg=0.47 std=0.50 / all avg=0.36 std=0.48
* cpu= 8 avg=0.72 std=0.45 / all avg=0.79 std=0.41
</pre>


* En mem max:'''3586''' resv:10000 se destaca que el máximo de memoria utilizada por la tarea ha sido de 3568M
== Referencias ==
* Por cada una de los cores se despliega: el uso promedio de cada core, la desviación estándar en las últimas 3 horas / del total de tiempo de ejecución.
   
* [https://la.mathworks.com/help/matlab/language-fundamentals.html Language Fundamentals]
* [http://www.cas.mcmaster.ca/~cs4te3/tutorials/matlab_toolbox_quickref.pdf MATLAB Toolbox Quickref]
* [http://walkingrandomly.com/?p=5343 Checkpointing MATLAB Programs]

Revisión del 20:23 7 sep 2022

¿Qué es?

MATLAB (abreviatura de MATrix LABoratory, "laboratorio de matrices") es una herramienta de software matemático que ofrece un entorno de desarrollo integrado (IDE) con un lenguaje de programación propio (lenguaje M).

Modulos

Se encuentra disponible con el nombre Matlab/2017 y el runtime esta agregado como MCR/R2017a en todas las particiones de leftraru.

Ejemplo SBATCH para SLURM

#!/bin/bash
#SBATCH --job-name=ejemplo
#SBATCH --mail-user=usuario@correo.cl
#SBATCH --mail-type=ALL
#SBATCH --output=%j_%x.out
#SBATCH --error=%j_%x.err
#SBATCH --partition=slims
#SBATCH -n 1
#SBATCH --ntasks-per-node=1
#SBATCH --mem-per-cpu=2300
#SBATCH --license=matlab #agregar si se va a ocupar MATLAB

ml Matlab/2017

matlab -nodisplay -nosplash -nodesktop < ejemplo.m

(Sin paralelización)

Licencias

Existen 50 licencias disponibles para el uso de MATLAB proporcionadas por el CMM, pero es posible evitar esta restricción de licencias creando una compilación standalone con el Toolbox Compiler. El gestor de recursos cancelara las tareas que no indiquen las licencias en el script SBATCH, todo esto para favorecer el uso entre los distintos usuarios.

Toolbox

Tenemos disponibles los siguientes toolbox con su respectiva cantidad de licencias.

 

</tbody>
Nombre Cantidad Licencia Slurm
SIMULINK 2 matlab-simulink
Bioinformatics 1 matlab-bioinformatics
Control 20 matlab-control
Curve_Fitting 2 matlab-curve_fitting
Database 1  matlab-database
Econometrics 2 matlab-econometrics
Financial 2 matlab-financial
GADS 1 matlab-gads
Image 2 matlab-image
MATLAB_Coder 1 matlab-matlab_code
Compiler 1 matlab-compiler
Optimization 5 matlab-optimization
Distrib_Computing 2 matlab-distrib_computing
PDE 20 matlab-pde
Signal 2 matlab-signal
SimBiology 2 matlab-simbiology
Statistics 5 matlab-statistics
Identification  2     matlab-identification
Wavelet 1 matlab-wavelet



 

 

Referencias