[gmx-developers] GROMACS improvements

ryan johnson ryanphjohnson at gmail.com
Thu Sep 23 18:10:36 CEST 2010


Hello, my name is Ryan Johnson.  I've been working closely with my colleague
Roland Schulz on making various performance optimizations on GROMACS as
described in the previous mail:
http://lists.gromacs.org/pipermail/gmx-developers/2010-September/004711.html

We have added MPI-IO to allow parallel writing of XTC.  However we are
having an issue when it comes to gmx_ftell/fseek for checkpoints.  We have
two possible solutions to the problem and want to ask which one is better.

One of our ideas is to add wrapper functions around gmx_ftell/fseek called
gmx_fio_tell/seek and have the wrapper function call either the MPI function
(if compiled with MPI and the file is opened with MPI) or use
gmx_ftell/seek. We could either change all places to use the wrapper (than
we would have to change a lot of files including libxdrf.c and add
dependencies on gmx_fio) or only those which are involved with writing XTC
files.

The other solution is to use GMX_FILE instead of FILE everywhere in futil,
and set GMX_FILE to MPI_FILE if compiled with MPI and set it to FILE if
compiled without MPI. Then we would open all files with MPI (in general
still in serial - thus not changing the behavior just using the MPI-IO
functions) and all the futil function would use stdio/MPI-IO depending on
whether GROMACS is compiled with MPI or not.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://maillist.sys.kth.se/pipermail/gromacs.org_gmx-developers/attachments/20100923/f143a7f9/attachment.html>


More information about the gromacs.org_gmx-developers mailing list