[Pw_forum] Fatal Error: File 'mpif.h' not found.

Axel Kohlmeyer akohlmey at cmm.chem.upenn.edu
Wed Apr 25 17:13:03 CEST 2007


On Wed, 25 Apr 2007, Chao Cao wrote:

CC> That's good point...
CC> Another question is, for multi-core system, shouldn't we use OpenMP over 
CC> MPI, or we could easily by-pass MPI by enable thread in compilation? I 
CC> didn't do test though...

quantum espresso has no direct openmp support.
unless you have a _very_ much memory bandwidth
impaired machine (e.g. a old pentium4 based dual
core dual xeon processor) you will benefit _much_
more from MPI. i have not done any tests recently
with quantum espresso, but with another plane-wave
pseudopotential code on a dual-processor dual-core
intel (woodcrest) machine, it turned out that
using MPI with three (3!) mpi processes (i.e. let
one processor core be available to the operating
system) was the most efficient way to utilize the
machine. 

the only way to enable openmp for QE is by using a 
threaded BLAS/LAPACK. i've done a few tests many
years ago and it was successful on a cluster of
dual athlon MP machines. for the rest, just running
plain MPI was the best.

this will change in the future when well be 
have quad/oct/???? core cpus. where making 
efficient use of the cache (through multiple
threads doing overlapping access to the same 
block of physical memory will become an important
optimization strategy).

cheers,
   axel.
CC> 
CC> Chao Cao
CC> 
CC> wlyim at puccini.che.pitt.edu wrote:
CC> > If you are running linux system, check "/proc/cpuinfo"
CC> >
CC> > William
CC> >
CC> > On Wed, 25 Apr 2007, Marcel Mohr wrote:
CC> >
CC> >   
CC> >> It just calculates the faculty of 5000000 to keep the processor busy. So 
CC> >> you can estimate the number of processor (see my mail before).
CC> >> Just type 'bc' in a shell and copy the lines below.
CC> >>
CC> >>     
CC> >>>> A small calculation intensive task for the linux calculator "bc"
CC> >>>>
CC> >>>> -----
CC> >>>> $ bc
CC> >>>> define fac (x)
CC> >>>> {
CC> >>>>         res = 1
CC> >>>>         while (x > 1)
CC> >>>>         {
CC> >>>>                 res *=x;
CC> >>>>                 x -= 1;
CC> >>>>         }
CC> >>>>         return res;
CC> >>>> }
CC> >>>> fac (5000000)
CC> >>>> ------
CC> >>>>         
CC> >>> Some hints on performing the above codes, will you?
CC> >>> ---
CC> >>> Hongyi Zhao
CC> >>> GnuPG DSA: 0xD108493B
CC> >>> _______________________________________________
CC> >>> Pw_forum mailing list
CC> >>> Pw_forum at pwscf.org
CC> >>> http://www.democritos.it/mailman/listinfo/pw_forum
CC> >>>
CC> >>>       
CC> >> _______________________________________________
CC> >> Pw_forum mailing list
CC> >> Pw_forum at pwscf.org
CC> >> http://www.democritos.it/mailman/listinfo/pw_forum
CC> >>
CC> >>     
CC> >
CC> >   
CC> 
CC> _______________________________________________
CC> Pw_forum mailing list
CC> Pw_forum at pwscf.org
CC> http://www.democritos.it/mailman/listinfo/pw_forum
CC> 

-- 
=======================================================================
Axel Kohlmeyer   akohlmey at cmm.chem.upenn.edu   http://www.cmm.upenn.edu
   Center for Molecular Modeling   --   University of Pennsylvania
Department of Chemistry, 231 S.34th Street, Philadelphia, PA 19104-6323
tel: 1-215-898-1582,  fax: 1-215-573-6233,  office-tel: 1-215-898-5425
=======================================================================
If you make something idiot-proof, the universe creates a better idiot.




More information about the users mailing list