Parallel Build Problem [NF90_REAL]

Various technical topics such as parallelism and efficiency, netCDF problems, the Yambo code structure itself, are posted here.

Moderators: Davide Sangalli, andrea.ferretti, myrta gruning, andrea marini, Daniele Varsano, Conor Hogan, Nicola Spallanzani

Post Reply
firatyilmaz
Posts: 4
Joined: Fri Feb 10, 2017 2:30 pm

Parallel Build Problem [NF90_REAL]

Post by firatyilmaz » Fri Feb 24, 2017 7:54 am

This is my first Yambo build and i am not totally have knowledge on building so i would like to give some extra information about the parallel build i tried.
Parallel Build Commands

Code: Select all

 cat /etc/oracle-release 
Oracle Linux Server release 6.8

Code: Select all

uname -a
4.1.12-61.1.19.el6uek.x86_64 #2 SMP Fri Nov 18 16:54:22 PST 2016 x86_64 x86_64 x86_64 GNU/Linux


SZIP

Code: Select all

CC=mpicc F77=mpif77 ./configure --prefix=/home/xxxx/Yambo/build/ 
make
make check
make install
no error
--------------------------------------------------------------------------------------------------------------------------------------------------
HDF5

Code: Select all

CC=mpicc FC=mpifort ./configure --prefix=/home/xxxx/Yambo/build/ --with-szlib=/home/xxxx/Yambo/build/ --enable-parallel --enable-shared

SUMMARY OF THE HDF5 CONFIGURATION
=================================

General Information:
-------------------
HDF5 Version: 1.8.15
Configured on: Fri Feb 24 01:09:58 +03 2017
Configured by: root@cent1.xxxx.edu.tr
Configure mode: production
Host system: x86_64-unknown-linux-gnu
Uname information: Linux cent1.xxxx.edu.tr 4.1.12-61.1.19.el6uek.x86_64 #2 SMP Fri Nov 18 16:54:22 PST 2016 x86_64 x86_64 x86_64 GNU/Linux
Byte sex: little-endian
Libraries: static, shared
Installation point: /home/xxxx/Yambo/build

Compiling Options:
------------------
Compilation Mode: production
C Compiler: /opt/intel//impi/5.0.3.049/intel64/bin/mpicc ( built with gcc version 4.4.7 20120313 (Red Hat 4.4.7-17) (GCC))
CFLAGS:
H5_CFLAGS: -std=c99 -pedantic -Wall -Wextra -Wundef -Wshadow -Wpointer-arith -Wbad-function-cast -Wcast-qual -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs -Winline -Wno-long-long -Wfloat-equal -Wmissing-format-attribute -Wmissing-noreturn -Wpacked -Wdisabled-optimization -Wformat=2 -Wunreachable-code -Wendif-labels -Wdeclaration-after-statement -Wold-style-definition -Winvalid-pch -Wvariadic-macros -Wnonnull -Winit-self -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Wunused-macros -Wunsafe-loop-optimizations -Wc++-compat -Wstrict-overflow -Wlogical-op -Wlarger-than=2048 -Wvla -Wsync-nand -Wframe-larger-than=16384 -Wpacked-bitfield-compat -O3 -fomit-frame-pointer -finline-functions
AM_CFLAGS:
CPPFLAGS:
H5_CPPFLAGS: -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE -D_POSIX_C_SOURCE=200112L -DNDEBUG -UH5_DEBUG_API
AM_CPPFLAGS: -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -I/home/xxxx/Yambo/build//include
Shared C Library: yes
Static C Library: yes
Statically Linked Executables: no
LDFLAGS:
H5_LDF file not recognized: Is a directory
collect2: ld returned 1 exit status
LAGS:
AM_LDFLAGS: -L/home/xxxx/Yambo/build//lib
Extra libraries: -lsz -lz -ldl -lm
Archiver: ar
Ranlib: ranlib
Debugged Packages:
API Tracing: no

Languages:
----------
Fortran: no

C++: no

Features:
---------
Parallel HDF5: yes
High Level library: yes
Threadsafety: no
Default API Mapping: v18
With Deprecated Public Symbols: yes
I/O filters (external): deflate(zlib),szip(encoder)
MPE:
Direct VFD: no
dmalloc: no
Clear file buffers before write: yes
Using memory checker: no
Function Stack Tracing: no
Strict File Format Checks: no
Optimization Instrumentation: no



Code: Select all

make
make check
make install
During make and make check following error occured

t_cache.c:1944: warning: will never be executed
t_chunk_alloc.c:135: warning: will never be executed
pio_engine.c:2285: warning: conversion to ‘long unsigned int’ from ‘off_t’ may change the sign of the result
pio_engine.c:2285: warning: conversion to ‘hssize_t’ from ‘long unsigned int’ may change the sign of the result
hdf2gif.c:197: warning: conversion to ‘BYTE’ from ‘int’ may alter its value



----------------------------------------------------------------------------------------------------------------------------------------------------------------
NETCDF

Code: Select all

CC=mpicc FC=mpifort ./configure --with-hdf5=/home/xxxx/Yambo/build/ --prefix=/home/xxxx/Yambo/build/ --with-szlib=/home/xxxx/Yambo/build/ --enable-netcdf
at the first run following error occured

./nc4file.c:2174: undefined reference to
> `H5Pset_fapl_mpiposix'



From the link

http://www.unidata.ucar.edu/mailing_lis ... 00188.html
on the page "libsrc4/nc4file.c" H5Pset_fapl_mpiposix value changed with H5Pset_fapl_mpio

then compile was ok

Code: Select all

make
make check install

Code: Select all

/home/xxxx/Yambo/build/bin/nc-config --all

This netCDF 4.1.2 has been built with the following features:

--cc -> mpicc
--cflags -> -I/home/xxxx/Yambo/build/include -I/home/xxxx/Yambo/build//include -I/home/xxxx/Yambo/build//include
--libs -> -L/home/xxxx/Yambo/build/lib -lnetcdf -L/home/xxxx/Yambo/build//lib -lhdf5_hl -lhdf5 -lz -L/home/xxxx/Yambo/build//lib -lsz -lcurl

--cxx -> c++
--has-c++ -> yes

--fc -> mpifort
--fflags -> -g -O2 -I/home/xxxx/Yambo/build/include
--flibs -> -L/home/xxxx/Yambo/build/lib -lnetcdff -lnetcdf
--has-f77 -> yes
--has-f90 -> yes

--has-dap -> yes
--has-nc2 -> yes
--has-nc4 -> yes
--has-hdf5 -> yes
--has-hdf4 -> no
--has-pnetcdf-> no
--has-szlib -> yes

--prefix -> /home/xxxx/Yambo/build
--includedir-> /home/xxxx/Yambo/build/include
--version -> netCDF 4.1.2





---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

YAMBO

On the Yambo build following setup used

Code: Select all

MPICC=mpicc LDFLAGS="-L/home/xxxx/Yambo/build/" ./configure --prefix=/home/xxxx/Yambo/yambo/ --enable-netcdf-hdf5 --with-netcdf-libs=/home/xxxx/Yambo/build/lib/
#
# [VER] 4.1.2 r.14024
#
# - GENERAL CONFIGURATIONS -
#
# [SYS] linux@x86_64
# [SRC] /home/xxxx/Yambo/yambo-4.1.2-rev120
# [BIN] /home/xxxx/Yambo/yambo-4.1.2-rev120/bin
# [-] Double precision
# [X] Redundant compilation
# [-] Run-Time timing profile
#
# - PARALLEL SUPPORT -
#
# [X] MPI
# [-] OpenMP
# [-] Blue-Gene specific procedures
#
# - LIBRARIES (E=external library; I=internal library; -=not used;) -
#
# I/O
# [ I ] IOTK : -liotk (QE 5.0)
# [ - ] ETSF_IO:
# [ E ] NETCDF : /home/xxxx/Yambo/build/lib/ (No large files support)
# [ - ] HDF5 :
#
# MATH
# [ I ] FFT : Internal Goedecker FFT with 0 cache
# [ I ] BLAS : -lblas
# [ I ] LAPACK : -llapack
# [ - ] SCALAPACK:
#
# OTHER
# [ I ] LibXC : -lxcf90 -lxc
# [ - ] MPI library:
#
# - COMPILERS, MAKE and EDITOR -
#
# [ CPP ] gcc -E -P -D_MPI -D_FFTSG
# [ FPP ] cpp -E -P -ansi -D_MPI -D_FFTSG
# [ C ] gcc -g -O2 -D_C_US -D_FORTRAN_US
# [MPICC] mpicc -g -O2 -D_C_US -D_FORTRAN_US
# [ F90 ] mpif90 -O
# [MPIF ] mpiifort -O
# [ F77 ] mpif90 -O
# [Cmain]
# [NoOpt] -O0
#
# [ MAKE ] make
# [EDITOR] vim

Code: Select all

make

After make command following error occured

cp: `/home/xxxx/Yambo/yambo-4.1.2-rev120/include/xc_version.h' and `include/xc_version.h' are the same file

>>>[Making external_c]<<<
cp: `/home/xxxx/Yambo/yambo-4.1.2-rev120/src/external_c/.objects' and `src/external_c/.objects' are the same file
<command-line>: warning: missing whitespace after the macro name
make[1]: Entering directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/src/external_c'
ar: creating libexternal_c.a
make[1]: Leaving directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/src/external_c'

>>>[Making modules]<<<
cp: `/home/xxxx/Yambo/yambo-4.1.2-rev120/src/modules/.objects' and `src/modules/.objects' are the same file
<command-line>: warning: missing whitespace after the macro name
make[1]: Entering directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/src/modules'
mod_pars.f90(26): error #7013: This module file was not generated by any release of this compiler. [NETCDF]
use netcdf
-----^
mod_pars.f90(48): error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [NF90_REAL]
integer, parameter :: nf90_SP = nf90_real
---------------------------------^
mod_pars.f90(48): error #6404: This name does not have a type, and must have an explicit type. [NF90_REAL]
integer, parameter :: nf90_SP = nf90_real
---------------------------------^
compilation aborted for mod_pars.f90 (code 1)
make[1]: *** [mod_pars.o] Error 1
make[1]: Leaving directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/src/modules'
make: *** [yambo] Error 2


I searched on the net about the errors but coul not succed on building

secondly

Code: Select all

make clean_all
and yambo installation folder deleted and replaced with a new one

Code: Select all

cp -r zip/yambo-4.1.2-rev120/ .

cd yambo-4.1.2-rev120/

on the second compile the compile command was the same but the error was different

>>>[Linking yambo]<<<
cp: `/home/xxxx/Yambo/yambo-4.1.2-rev120/driver/.objects' and `driver/.objects' are the same file
make[1]: Entering directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/driver'
cd /home/xxxx/Yambo/yambo-4.1.2-rev120/driver; /home/xxxx/Yambo/yambo-4.1.2-rev120/sbin/moduledep.sh yambo_driver.o > /home/xxxx/Yambo/yambo-4.1.2-rev120/driver/make.dep
make[1]: Leaving directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/driver'
make[1]: Entering directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/driver'
yambo_driver.F
/home/xxxx/Yambo/build/lib/: file not recognized: Is a directory
collect2: ld returned 1 exit status
make[1]: *** [yambo] Error 1
make[1]: Leaving directory `/home/xxxx/Yambo/yambo-4.1.2-rev120/driver'
make: *** [yambo] Error 2


Thank You.

Firat Yilmaz
You do not have the required permissions to view the files attached to this post.
Firat Yilmaz

Physics Engineer
Hacettepe University

Post Reply