[Pw_forum] MareNostrum

Emmanuel Clouet emmanuel.clouet at cea.fr
Sat Mar 9 15:44:19 CET 2013


Dear Jose,

I have concluded that there was a memory leak problem because my jobs 
are swapping. Tanks to the help of MareNostrum support, we have seen 
that the swapping does not occur at the beginning of the calculation but 
after some time. In a NEB calculation for instance, the first NEB 
iteration runs perfectly well, but there is a strong increase of memory 
when the program starts the second NEB iteration. I think this is a 
problem with my compilation, because the same kind of calculation run 
perfectly well on other HPC platforms.
I attached to this Email a copy of a typical make.sys file I used. This 
corresponds to the 5.0 version of QE compiled with Intel compiler 
(v13.0.1) using MKL (13.0.1), FFTW3 (3.3) and intel MPI (4.1.0.024) 
libraries. I also tried with QE 5.0.3 version, with internal FFT instead 
of external FFTW3 library, as well as with open MPI (1.5.4) instead of 
Intel MPI, without any success.
Is it possible that you send me your make.sys file so I can test it and 
see if it solves my problem.
Best regards,

Emmanuel Clouet

On 08/03/2013 23:31, Jose C. Conesa wrote:
> Hi Emmanuel,
> I did compile it. I use only pw.x, so I can tell nothing about the 
> behaviour of neb.x, although it was generated. I am also not sure if I 
> would be able to spot a memory leak problem. How did you observe it?
> Regards,
> José Carlos Conesa
>
> El 08/03/2013 21:30, Emmanuel Clouet escribió:
>> Dear all,
>>
>> Does anybody manage to compile QE (the pw and neb parts) on 
>> MareNostrum III (Barcelona Supercomputing Center)? I am encountering 
>> some memory leak problems with my compiled version and I am looking 
>> for somebody who is using QE on this platform and can help me with 
>> the compilation.
>> Best regards,
>>
>> Emmanuel 


-- 
Emmanuel CLOUET
SRMP - Bat. 520
CEA - Saclay
91191 Gif sur Yvette cedex
tel. +33 (0)1 69 08 66 63
http://emmanuel.clouet.free.fr

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20130309/c2e361d7/attachment.html>
-------------- next part --------------
# make.sys.  Generated from make.sys.in by configure.

# compilation rules

.SUFFIXES :
.SUFFIXES : .o .c .f .f90

# most fortran compilers can directly preprocess c-like directives: use
# 	$(MPIF90) $(F90FLAGS) -c $<
# if explicit preprocessing by the C preprocessor is needed, use:
# 	$(CPP) $(CPPFLAGS) $< -o $*.F90 
#	$(MPIF90) $(F90FLAGS) -c $*.F90 -o $*.o
# remember the tabulator in the first column !!!

.f90.o:
	$(MPIF90) $(F90FLAGS) -c $<

# .f.o and .c.o: do not modify

.f.o:
	$(F77) $(FFLAGS) -c $<

.c.o:
	$(CC) $(CFLAGS)  -c $<


# DFLAGS  = precompilation options (possible arguments to -D and -U)
#           used by the C compiler and preprocessor
# FDFLAGS = as DFLAGS, for the f90 compiler
# See include/defs.h.README for a list of options and their meaning
# With the exception of IBM xlf, FDFLAGS = $(DFLAGS)
# For IBM xlf, FDFLAGS is the same as DFLAGS with separating commas 

DFLAGS         =  -D__INTEL -D__FFTW3 -D__MPI -D__PARA -D__SCALAPACK
FDFLAGS        = $(DFLAGS)

# IFLAGS = how to locate directories where files to be included are
# In most cases, IFLAGS = -I../include

IFLAGS         = -I../include

# MOD_FLAGS = flag used by f90 compiler to locate modules
# Each Makefile defines the list of needed modules in MODFLAGS

MOD_FLAG      = -I

# Compilers: fortran-90, fortran-77, C
# If a parallel compilation is desired, MPIF90 should be a fortran-90 
# compiler that produces executables for parallel execution using MPI
# (such as for instance mpif90, mpf90, mpxlf90,...);
# otherwise, an ordinary fortran-90 compiler (f90, g95, xlf90, ifort,...)
# If you have a parallel machine but no suitable candidate for MPIF90,
# try to specify the directory containing "mpif.h" in IFLAGS
# and to specify the location of MPI libraries in MPI_LIBS

MPIF90         = mpif90
#F90           = ifort
CC             = icc
F77            = ifort

# C preprocessor and preprocessing flags - for explicit preprocessing, 
# if needed (see the compilation rules above)
# preprocessing flags must include DFLAGS and IFLAGS

CPP            = cpp
CPPFLAGS       = -P -traditional $(DFLAGS) $(IFLAGS)

# compiler flags: C, F90, F77
# C flags must include DFLAGS and IFLAGS
# F90 flags must include MODFLAGS, IFLAGS, and FDFLAGS with appropriate syntax

CFLAGS         = -O3 $(DFLAGS) $(IFLAGS)
F90FLAGS       = $(FFLAGS) -nomodule -fpp $(FDFLAGS) $(IFLAGS) $(MODFLAGS)
FFLAGS         = -O2 -assume byterecl -g -traceback -par-report0 -vec-report0

# compiler flags without optimization for fortran-77
# the latter is NEEDED to properly compile dlamch.f, used by lapack

FFLAGS_NOOPT   = -O0 -assume byterecl -g -traceback

# compiler flag needed by some compilers when the main is not fortran
# Currently used for Yambo

FFLAGS_NOMAIN   = -nofor_main

# Linker, linker-specific flags (if any)
# Typically LD coincides with F90 or MPIF90, LD_LIBS is empty

LD             = mpif90
LDFLAGS        = -static-intel 
LD_LIBS        = 

# External Libraries (if any) : blas, lapack, fft, MPI

# If you have nothing better, use the local copy :
# BLAS_LIBS = /your/path/to/espresso/BLAS/blas.a
# BLAS_LIBS_SWITCH = internal

BLAS_LIBS      = -L/apps/INTEL/composerxe//mkl/lib/intel64/ -lmkl_intel_lp64  -lmkl_sequential -lmkl_core
BLAS_LIBS_SWITCH = external

# If you have nothing better, use the local copy :
# LAPACK_LIBS = /your/path/to/espresso/lapack-3.2/lapack.a
# LAPACK_LIBS_SWITCH = internal
# For IBM machines with essl (-D__ESSL): load essl BEFORE lapack !
# remember that LAPACK_LIBS precedes BLAS_LIBS in loading order

LAPACK_LIBS    = 
LAPACK_LIBS_SWITCH = external

# SCALAPACK_LIBS = -lmkl_scalapack_lp64 -lmkl_blacs_openmpi_lp64
SCALAPACK_LIBS = -lmkl_scalapack_lp64 -lmkl_blacs_intelmpi_lp64

# nothing needed here if the the internal copy of FFTW is compiled
# (needs -D__FFTW in DFLAGS)

FFT_LIBS       = -L/apps/FFTW/3.3/lib -lfftw3 

# For parallel execution, the correct path to MPI libraries must
# be specified in MPI_LIBS (except for IBM if you use mpxlf)

MPI_LIBS       = 

# IBM-specific: MASS libraries, if available and if -D__MASS is defined in FDFLAGS

MASS_LIBS      = 

# ar command and flags - for most architectures: AR = ar, ARFLAGS = ruv

AR             = ar
ARFLAGS        = ruv

# ranlib command. If ranlib is not needed (it isn't in most cases) use
# RANLIB = echo

RANLIB         = ranlib

# all internal and external libraries - do not modify

FLIB_TARGETS   = all

LIBOBJS        = ../flib/ptools.a ../flib/flib.a ../clib/clib.a ../iotk/src/libiotk.a 
LIBS           = $(SCALAPACK_LIBS) $(LAPACK_LIBS) $(FFT_LIBS) $(BLAS_LIBS) $(MPI_LIBS) $(MASS_LIBS) $(LD_LIBS)

# wget or curl - useful to download from network
WGET = wget -O

# topdir for linking espresso libs with plugins
TOPDIR = /gpfs/projects/pr1e4300/Espresso/espresso-5.0_impi4.1_mkl13.0.1_fftw3.3
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3892 bytes
Desc: S/MIME Cryptographic Signature
URL: <http://lists.quantum-espresso.org/pipermail/users/attachments/20130309/c2e361d7/attachment.p7s>


More information about the users mailing list