Changes between Version 8 and Version 9 of SMG


Ignore:
Timestamp:
Mar 2, 2016 2:09:46 PM (6 years ago)
Author:
carlos
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • SMG

    v8 v9  
    3535
    3636== Práctica 2 ==
    37 Una vez enviado nuestro primer job, ejecutaremos un job de tipo openMP usando el código del programa [http://moodle.unican.es/moodle27/pluginfile.php/96708/mod_resource/content/0/HelloWorldOpenMP.c HelloWorldOpenMP].
     37Una vez enviado nuestro primer job, ejecutaremos un job de tipo openMP usando el código del programa [http://moodle.unican.es/pluginfile.php/129616/mod_resource/content/0/omp_hello.c HelloWorldOpenMP].
    3838
    39 * Haciendo uso del programa '''module''' cargar el compilador ''gcc'':
    40 {{{
    41 [user@login1 ~]$ module load gcc
    42 load gcc/4.6.3 (PATH, MANPATH, LD_LIBRARY_PATH)
    43 }}}
    44 
    45 * Compilar el programa ''HelloWorldOpenMP.c'' y generar un ejecutable con el nombre ''HelloWorldOpenMP'':
     39* Haciendo uso del compilador ''gcc'', compilar el programa ''HelloWorldOpenMP.c'' y generar un ejecutable con el nombre ''HelloWorldOpenMP'':
    4640{{{
    47 [user@login1 ~]$ gcc HelloWorldOpenMP.c -fopenmp -o HelloWorldOpenMP
     41[user@ui ~]$ gcc HelloWorldOpenMP.c -fopenmp -o HelloWorldOpenMP
    4842}}}
    4943
     
    6559./HelloWorldOpenMP
    6660}}}
    67  Más información sobre las variables de entorno (${SLRUM_*}) en el [http://slurm.schedmd.com/sbatch.html#SECTION_OUTPUT%20ENVIRONMENT%20VARIABLES link].
    68 
     61 
    6962* Envió del job openMP:
    7063{{{
     
    7669
    7770* 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é?.
    78 
    79 == Práctica 3 ==
    80 Repita el envío del job de la práctica 3 modificando el número de ''threads'' a ejecutar, pero sin modificar la variable ''total_tasks''. Para ello, utilice la variable de entorno `OMP_NUM_THREADS`.
    81 * La plantilla a utilizar en ese caso será:
    82 {{{
    83 #!/bin/bash
    84 #@ job_name = openmp_%j
    85 #@ initialdir = .
    86 #@ output = openmp_%j.out
    87 #@ error = openmp_%j.err
    88 #@ total_tasks = 32
    89 #@ wall_clock_limit = 00:02:00
    90  
    91 export OMP_NUM_THREADS=XX
    92 
    93 echo "Numero de procesos: ${SLURM_NPROCS}"
    94 echo "Numero de nodos: ${SLURM_JOB_NUM_NODES}"
    95 echo "Numero de procesos por nodo: ${SLURM_JOB_CPUS_PER_NODE}"
    96 echo "Nodos: ${SLURM_JOB_NODELIST}"
    97 
    98 ./HelloWorldOpenMP
    99 }}}
    100  Donde '''XX''' es el número de ''threads'' a ejecutar.
    101 
    102 * Envíe 3 jobs con '''XX''' igual a 8, 16 y 32, y compruebe si los resultados son el esperados. 
     71