CECONEA
Computación de alto desempeño
FACENA
Universidad Nacional del Nordeste

Instalacion de Huayra

1 Sistema

ARM R2206 Server

Micros (2): Intel XEON QUADCORE 5620

Motherboard: S5500BC

Memory: 32 GB. DDR3 ECC 1333Mhz

Placa infiniband: HCA IB Mellanox QDR 40Gbs

2 Instalacion de SLES 11 SP1

Se bajo del sitio www.novell.com

SLES-11-SP1-DVD-x86_64-GM-DVD1.iso

SLES-11-SP1-DVD-x86_64-GM-DVD2.iso

SLE-11-SP1-SDK-DVD-x86_64-GM-DVD1.iso

La instalacion en los nodos se realizo a traves de autoyast LINK. La explicacion del procedimiento se encuentra en: LINK

El kernel que viene en la distribucion original, 2.6.32.12-0.7, tiene problemas con el ksoftirq proceso que ocupa un porcentaje considerable de varios cpus.

Se puso un nuevo kernel patcheado. 2.6.32.54-0.3. El kernel fue bajado de los patches del SUSE SLES.

3 Instalacion de los drivers Ofed Mellanox

Se bajo del sitio de Mellanox:

MLNX_OFED_LINUX-1.5.3-3.0.0-sles11sp1-x86_64.iso

Luego se tuvo que recompilar el ofed de mellanox para que sea consistente con el nuevo kernel.

Generandose una nueva imagen:

MLNX_OFED_LINUX-1.5.3-3.0.0-Kernel2.6.32.54-0.3-sles11sp1-x86_64.iso

Para recompilar y generar la nueva imagen necesita tener instalados los paquetes: kernel_source y el kernel_develop

Agregar en:

modprobe.conf.local

mlx4_ib # Mellanox ConnectX cards

rdma_ucm ib_umad ib_uverbs ib_ipoib ib_srp ib_sdp

4 Compiladores Fortran y C

4.1 Intel 2011

l_ccompxe_intel64_2011.10.319.tgz

l_fcompxe_intel64_2011.11.339.tgz

4.2 gcc/gfortran 4.3.62-198

Originales de la distribucion SUSE SLES 11 SP1

5 Instalacion de openmpi 1.5.3

source /usr/local/intel/composer_xe_2011_sp1.11.339/bin/ifortvars.sh intel64
source /usr/local/intel/composer_xe_2011_sp1.10.319/bin/iccvars.sh intel64
./configure –prefix=/usr/local/openmpi/1.5.3-intel2011openib –CC=icc –FC=ifort –CXX=icpc –with-openib
make
make check > make.check 2>&1
make install

6 Instalacion de Netcdf 3.6.2

Editar los files (de las fuentes):
netcdf-3.6.2/examples/CXX/sfc_pres_temp_rd.cpp
netcdf-3.6.2/cxx/ncvalues.cpp
Agregar en lso includes lo siguiente:

source /usr/local/intel/composer_xe_2011_sp1.11.339/bin/ifortvars.sh intel64
source /usr/local/intel/composer_xe_2011_sp1.10.319/bin/iccvars.sh intel64
export CC=icc
export CXX=icpc
export CFLAGS='-O3 -xT -ip -no-prec-div -static'
export CXXFLAGS='-O3 -xT -ip -no-prec-div -static'
export F77=ifort
export FC=ifort
export F90=ifort
export FFLAGS='-O3 -xT -ip -no-prec-div -static'
export CPP='icc -E'
export CXXCPP='icpc -E'
./configure –prefix=/usr/local/netcdf/3.6.2-intel2011/
make check
make install

7 Instalacion WRF V3.2.1

source /usr/local/intel/composer_xe_2011_sp1.10.319/bin/iccvars.sh intel64
source /usr/local/intel/compose\r_xe\_2011\_sp1.11.339/bin/ifortvars.sh intel64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openmpi/1.5.3-intel2011/lib:
export NETCDF=/usr/local/netcdf/3.6.2-intel2011
export PATH=/usr/local/openmpi/1.5.3-intel2011/bin/:$PATH
export WRFIO_NCD_LARGE_FILE_SUPPORT=1

./configure
Opcion 11 dmpar

mkdir ./buildlog
./compile em_real 2>&1 | tee ./buildlog/em_real.log

8 Test de performance con WRF

Para evaluar el funcionamiento de los equipos se utilizo el WRF benchmark

http://www.mmm.ucar.edu/wrf/WG2/bench/

El caso de estudio es el 12km CONUS, Oct. 2001

8.1 Los datos necesarios para realizar las simulaciones se encuentran en

8.2 Poner en el .bashrc:

source /usr/local/intel/composer_xe_2011_sp1.10.319/bin/iccvars.sh intel64
source /usr/local/intel/composer_xe_2011_sp1.11.339/bin/ifortvars.sh intel64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/openmpi/1.5.3-intel2011/lib:
export NETCDF=/usr/local/netcdf/3.6.2-intel2011
export PATH=/usr/local/openmpi/1.5.3-intel2011/bin/:$PATH
export WRFIO_NCD_LARGE_FILE_SUPPORT=1

Notar que cuando se ejecute en varios servidores es necesario que todos los servidores puedan ver el mismo environment

8.3 Generacion del directorio de la simulacion

8.4 Simulacion

WRF benchmarks en huayra.

times_1.png

Tiempo medio obtenido por paso de tiempo con el WRF CONUS 12 km caso de estudio. Las curvas infiniband y ethernet usan openmpi. El asterisco corresponde a una simulacion con intelmpi con 8 tiles.

times_2.png

Cantidad de procesos por segundo con el WRF CONUS 12 km caso de estudio. Las curvas infiniband y ethernet usan openmpi.

Date: 2012-08-27 15:55:36 ART

Author: Manuel Pulido

Org version 7.8.11 with Emacs version 22

Universidad Nacional del Nordeste   >   FaCENA   >   CECONEA