qmcpack/examples/attic/sc12_qmc/hydrogen
Paul Kent 10074dc323 Set driver_version in inputs 2025-01-08 13:53:45 -05:00
..
README Move older example files to attic archive 2015-05-29 16:16:10 +00:00
h.4x4x4.wfs.xml Move older example files to attic archive 2015-05-29 16:16:10 +00:00
input.xml Set driver_version in inputs 2025-01-08 13:53:45 -05:00
qmc.log Move older example files to attic archive 2015-05-29 16:16:10 +00:00
qmc.xml Set driver_version in inputs 2025-01-08 13:53:45 -05:00
ref.analysis.out Move older example files to attic archive 2015-05-29 16:16:10 +00:00
ref.s000.scalar.dat Move older example files to attic archive 2015-05-29 16:16:10 +00:00
ref.s001.dmc.dat Move older example files to attic archive 2015-05-29 16:16:10 +00:00
ref.s001.scalar.dat Move older example files to attic archive 2015-05-29 16:16:10 +00:00

README

Goal: optimize the time-to-solution of a basic QMC workflow
The total DMC projection time, blocks*steps of a dmc block, is fixed.

Definitions
* NP = # of MPI tasks
* OMP_NUM_THREADS = # of OpenMP threads per MPI task

How to run
* Modify these variables in qmc.xml
** DMCWALKERS : total number of samples for the main DMC block
** VMCWALKERS : number of walkers per MPI tasks for the VMC block to generate DMCWALKERS samples
** VMCBLOCKS  : number of VMC blocks needed to generate DMCWALKERS samples
* One can use any number of parallel processing units
** CPU: NP * OMP_NUM_THREADS 
** GPU: NP (= # of GPUs)
* DMCWALKERS has to be equal to or larger than 8000.
* Choose VMCWALKERS and VMCBLOCKS for a given DMCWALKERS using this formula
  VMCBLOCKS=DMCWALKERS/VMCWALKERS/NP
* VMCWALKERS is a tuning parameter
* The number of DMC blocks and steps are fixed

Metrics
* DMC energy and its errorbar
   $qmcpack/utils/energy.pl bench.s001.dmc.dat 200
* Time to solution: total run time
* Efficiency defined as the number of samples generated per step excluding communication cost
   $qmcpack/utils/energy.pl bench.s001.scalar.dat 20 | grep Efficiency

Reference run 
* input.xml: 128 MPI tasks and 8 threads, DMCWALKERS=8192
* output files
** ref.s000.scalar.dat
** ref.s001.scalar.dat
** ref.s001.dmc.dat
** qmc.log
** ref.analysis.out : reference metrics, the key metrics marked by <<<<