Encapsulate gmx_wallclock_accounting_t into new timing module
authorMark Abraham <mark.j.abraham@gmail.com>
Sat, 28 Sep 2013 13:45:30 +0000 (15:45 +0200)
committerMark Abraham <mark.j.abraham@gmail.com>
Sat, 26 Oct 2013 11:25:20 +0000 (13:25 +0200)
commit690c59fdfd0f8cff4207fc7b61c2c284ab402566
tree3e8ec5a1ae0eeb5f55f31aa603ea861ee6693db8
parent577ffe3a7d0d21f6cbf346c1ad5108b759c3ef8b
Encapsulate gmx_wallclock_accounting_t into new timing module

Started a timing module where things like gmx_wallcycle.c and
gmx_cyclecounter.c will eventually also live.

Renamed s/runtime/wallclock_accounting/ to avoid ambiguity with
"compile time," "simulation time," etc.

This patch preserves the release-4-6 behaviour of the reported times
with all supported combinations of MPI, thread-MPI, GPUs, OpenMP.  I
think the old behaviour of -ntomp_pme != -ntomp was buggy with respect
to timing, and this patch fixes that.

Change-Id: I22cba17cdf866e17d9d0732de204b85b0ab31994
19 files changed:
CMakeLists.txt
src/config.h.cmakein
src/gromacs/CMakeLists.txt
src/gromacs/gmxana/gmx_membed.c
src/gromacs/gmxana/gmx_tune_pme.c
src/gromacs/gmxlib/nrnb.c
src/gromacs/legacyheaders/mdrun.h
src/gromacs/legacyheaders/pme.h
src/gromacs/legacyheaders/sim_util.h
src/gromacs/mdlib/minimize.c
src/gromacs/mdlib/pme.c
src/gromacs/mdlib/sim_util.c
src/gromacs/mdlib/tpi.c
src/gromacs/timing/CMakeLists.txt [new file with mode: 0644]
src/gromacs/timing/walltime_accounting.c [new file with mode: 0644]
src/gromacs/timing/walltime_accounting.h [new file with mode: 0644]
src/programs/mdrun/md.c
src/programs/mdrun/mdrun.cpp
src/programs/mdrun/runner.c