QMCPACK / miniqmc

QMCPACK miniapp: a simplified real space QMC code for algorithm development, performance portability testing, and computer science experiments
Other
26 stars 34 forks source link

Using miniqmc for 128 core MPI test gives output 128 times - expected behaviour? #260

Closed davedavemckay closed 3 years ago

davedavemckay commented 3 years ago

I'm testing miniqmc on a 1-node (128-core; 128-task) job. The job runs but gives the same output 128 times. Am I somehow missing a flag for MPI and running a serial calculation 128 times?

miniqmc git branch: develop
miniqmc git commit: 6a7795caa20c49049041fba1d0812d0bf29c8672-dirty

Build: CrayLinuxEnvironment with GNU C++ compiler wrapper with CrayPat-lite performance tools. Input: (mpi wrapper -n 128) miniqmc -g "2 2 2" > miniQMC_222.log 2> miniQMC.err Thanks

davedavemckay commented 3 years ago

My bad. Missed QMC_MPI=1 at build.

ye-luo commented 3 years ago

My bad. Missed QMC_MPI=1 at build.

It is good that you figured it out. miniQMC are more restrictive on dependencies so MPI is off by default. Please also keep in mind that MPI like OpenMP is used in weak scaling fashion namely the total workload proportionally increases as MPI ranks and threads.

davedavemckay commented 3 years ago

Good to know - Thank you Ye-luo.