Diferencia entre revisiones de «RegIPSL/CompHDF NC»
(→HDF5) |
(→NETCDF) |
||
| Línea 53: | Línea 53: | ||
== NETCDF == | == NETCDF == | ||
Las librerías netCDF tienen 2 interfaces, una para c y otra para Fortran. Otra vez realizamos la instalación desde el directorio <code>$INSWORKDIR</code>. | |||
=== netcdf-c === | |||
Se descarga directamente de la ultima versión del repositorio (Nov 22) | |||
<pre style="shell"> | |||
$ cd $INSWORKDIR | |||
$ mkdir -p netcdf/intel/parallel | |||
$ cd netcdf/intel/parallel | |||
$ git clone https://github.com/Unidata/netcdf-c.git | |||
$ cd netcdf-c | |||
</pre> | |||
Se instalarán las librerías en <code>NETCDF=$INSWORKDIR/netcdf/intel/parallel/ins</code> | |||
<pre style="shell"> | <pre style="shell"> | ||
$ mkdir $INSWORKDIR/netcdf/intel/parallel/ins | |||
export NETCDF=$INSWORKDIR/netcdf/intel/parallel/ins | |||
CC=mpicc LDFLAGS=-L$HDF5/lib LIBS=-lhdf5 CPPFLAGS=-I$HDF5/include | |||
./configure --prefix=$NETCDF >& run_configure.log | |||
</pre> | |||
=== netcdf-Fortran === | |||
<pre style="shell"> | |||
$ wget https://github.com/Unidata/netcdf-fortran/archive/refs/tags/v4.6.1.tar.gz | $ wget https://github.com/Unidata/netcdf-fortran/archive/refs/tags/v4.6.1.tar.gz | ||
</pre> | </pre> | ||
Revisión del 18:38 22 nov 2023
Compilación en paralelo de HDF5 y netCDF en hydra
Se siguen estas instrucciones de acá
Descargamos los códigos en el $INSWORKDIR (en este caso INSWORKDIR=/home/lluis.fita/installs/):
Compilaremos con intel, así que cargamos el entorno correspondiente:
$ source /opt/load-libs.sh 1
HDF5
Código del HDF5 obtenido de la página HDF5source (archivo $INSWORKDIR/hdf5/1.14.3/hdf5-1.14.3.tar.gz)
$ cd $INSWORKDIR
$ mkdir hdf5
$ mkdir -p 1.14.3/intel/parallel
$ cd 1.14.3/intel/parallel
$ mkdir ins
$ cd hdf5-1.14.3
$ tar xvfz ../../hdf5-1.14.3.tar.gz
Compilamos el código en el directorio $HDF5 (estando en $INSWORKDIR/hdf5/1.14.3/intel/parallel/hdf5-1.14.3)
export HDF5=$INSWORKDIR/hdf5/1.14.3/intel/parallel/ins
CC=mpicc FC=mpif90 CFLAGS=-fPIC
./configure --enable-shared --enable-parallel --enable-fortran --enable-fortran2003 --prefix=$HDF5 >& ./run_configure.log
Se verifica que la configuración de la instalación no haya dado problemas (mirar el archivo run_configure.log). Si no hay problemas, ya se pude compilar:
make >& run_make.log
Se verifica que la compilación no haya dado problemas (mirar el archivo run_make.log). Si no hay problemas, ya se pude instalar:
make install >& run_make-ins.log
Si no hubo problemas tendríamos que tener en $HDF5/bin (sólo cómo ejemplo):
$ cd $HDF5/bin
$ ls
h5clear h5format_convert h5pcc h5repart
h5copy h5fuse.sh h5perf h5stat
h5debug h5import h5perf_serial h5tools_test_utils
h5delete h5jam h5pfc h5unjam
h5diff h5ls h5redeploy h5watch
h5dump h5mkgrp h5repack ph5diff
NETCDF
Las librerías netCDF tienen 2 interfaces, una para c y otra para Fortran. Otra vez realizamos la instalación desde el directorio $INSWORKDIR.
netcdf-c
Se descarga directamente de la ultima versión del repositorio (Nov 22)
$ cd $INSWORKDIR
$ mkdir -p netcdf/intel/parallel
$ cd netcdf/intel/parallel
$ git clone https://github.com/Unidata/netcdf-c.git
$ cd netcdf-c
Se instalarán las librerías en NETCDF=$INSWORKDIR/netcdf/intel/parallel/ins
$ mkdir $INSWORKDIR/netcdf/intel/parallel/ins
export NETCDF=$INSWORKDIR/netcdf/intel/parallel/ins
CC=mpicc LDFLAGS=-L$HDF5/lib LIBS=-lhdf5 CPPFLAGS=-I$HDF5/include
./configure --prefix=$NETCDF >& run_configure.log
netcdf-Fortran
$ wget https://github.com/Unidata/netcdf-fortran/archive/refs/tags/v4.6.1.tar.gz