On Thu, Sep 30, 2010 at 09:00:31AM -0400, Richard Treumann wrote: > It is possible for MPI-IO to be implemented in a way that lets a single > process or the set of process on a node act as the disk i/O agents for the > entire job but someone else will need to tell you if OpenMPI can do this, > I think OpenMPI built on the ROMIO MPI-IO implementation and based on my > outdated knowledge of ROMIO, I would be a bit surprised if it has his > option.
SURPRISE!!! ROMIO has been able to do this since about 2002 (It was my first ROMIO project when I came to Argonne). now, if you do independent i/o or you do i/o on comm_self, then ROMIO can't really do anything for you. But... - if you use collective I/O - and you set the "cb_config_list" to contain the machine name of the one node with a disk (or if everyone has a disk, pick one to be the master) - and you set "romio_no_indep_rw" to "enable" then two things will happen. first, ROMIO will enter "deferred open" mode, meaning only the designated I/O aggregators will open the file. second, your collective MPI_File_*_all calls will all go through the one node you gave in the cb_config_list. Try it and if it does/doesn't work, I'd like to hear. ==rob -- Rob Latham Mathematics and Computer Science Division Argonne National Lab, IL USA