Dr.Axel,
With you answering so many people's vague questions like mine, you might be
able to crack the
stock market secret .
I do believe there is no escape from trying it myself but i wanted to take a
informed decision.
I did try what you said. Actually that is what i was doing all the time. I
use MPI + OpenMP
parallelization for my simulation and it gave me the minimum simulation
time.
Recently i got access to more number of systems/processors but unfortunately
i can't install
OpenMP in them due to user restrictions. I am just using MPI parallelization
OpenMP doesn't need to be installed.
all decent modern compilers support it.
and found that
for the minimization method (HFTN) i use the increase in number of
processors does not
necessarily mean decrease in simulation time.
yup. as strange as it may seem,
but bigger is not always better.
sometimes "less is more".
It would be helpful if you can suggest what factors to consider in general
to maximize the full use
of the resources while doing minimization.
there is no "silver bullet" that will give you
a simple answer. this is far to dependent
on the system at hand, its geometry and
its interactions. also, there are different
interpretations of "full use". whatever you
do, you will always have to make a compromise
and trade reduced parallel efficiency with
faster overall speed.
Thanks for your help.
Regards,
Freddie.
P.S. On an unrelated note, can anyone suggest me where to get proper
information of OpenMP regarding
launching of OpenMP+MPI jobs across multiple nodes. Is it possible that if
the launching command is not
proper the OpenMP jobs might launch across different nodes though it is a
shared memory parallelization?
this depends on the MPI launcher. the OpenMPI library has a
-npernode flag that will define how many MPI tasks per physical
node are launched. for other MPI libraries/implementations
similar things exist, but under different flags. on Cray XT/XE/XK
machines, you have a "distance" flag to aprun. you have to read
the documentation of the tools you use carefully. if you want
the most efficiency to you have to earn it.
there ain't no escape from the blues.
or will it automatically assign OpenMP jobs to corresponding node?
most of the time, no. an MPI launcher has no idea of OpenMP.
axel.