45 | | * Haciendo uso del compilador ''gcc'', compilar el programa ''HelloWorldOpenMP.c'' y generar un ejecutable con el nombre ''HelloWorldOpenMP'': |
46 | | {{{ |
47 | | [user@ui ~]$ gcc HelloWorldOpenMP.c -fopenmp -o HelloWorldOpenMP |
48 | | }}} |
49 | | |
50 | | * Plantilla a ejecutar en el supercomputador: |
51 | | {{{ |
52 | | #!/bin/bash |
53 | | #@ job_name = openmp_%j |
54 | | #@ initialdir = . |
55 | | #@ output = openmp_%j.out |
56 | | #@ error = openmp_%j.err |
57 | | #@ total_tasks = 32 |
58 | | #@ wall_clock_limit = 00:02:00 |
59 | | |
60 | | echo "Numero de procesos: ${SLURM_NPROCS}" |
61 | | echo "Numero de nodos: ${SLURM_JOB_NUM_NODES}" |
62 | | echo "Numero de procesos por nodo: ${SLURM_JOB_CPUS_PER_NODE}" |
63 | | echo "Nodos: ${SLURM_JOB_NODELIST}" |
64 | | |
65 | | ./HelloWorldOpenMP |
66 | | }}} |
67 | | |
68 | | * Envió del job openMP: |
69 | | {{{ |
70 | | $ module load gcc |
71 | | load gcc/4.6.3 (PATH, MANPATH, LD_LIBRARY_PATH) |
72 | | $ mnsubmit HelloWorldOpenMP_template |
73 | | Submitted batch job 621342 |
74 | | }}} |
75 | | |
76 | | * Una vez finalizado el job, compruebe el resultado obtenido en los ficheros '''output''' (openmp_%j.out) y '''error''' (openmp_%j.err). ¿ El resultado obtenido es el esperado? ¿Por qué?. |