[aspect-devel] Writing output in parallel
Wolfgang Bangerth
bangerth at math.tamu.edu
Tue Feb 28 08:26:04 PST 2012
>> I have no idea how MPI would implement this sort of thing. I would
>> imagine that they give asynchronous sends lower priority, but then you
>> never know.
>
> I doubt it. You typically want to finish those writes as fast as
> possible too, so that it can be hidden behind local computation.
Right, but lower priority doesn't affect the speed with which something
is processed, just the order :-)
> Yes, that would be possible. It is a bit uglier, though. Right now I
> have a simple DataOut::write_vtu_in_parallel("filename",
> communicator); call, that does all the magic. Nonblocking would mean
> that I need to put that code into aspect and expose more internals of
> the vtu format (separate header/footer/main block), I fear.
> I am not sure it is a good idea to wait until the next I/O to close
> the file. I hope the file is valid and flushed before that. But that
> could work.
OK, then I'd say go with what you have right now. Out of curiosity, how
does MPI I/O work? If you have a parallel file system, is the target of
the write striped across multiple disks and servers? Or does everything
converge on a single node?
I'll write a paragraph on how to implement the scheme of writing locally
and copying later from the job script.
Best
W.
------------------------------------------------------------------------
Wolfgang Bangerth email: bangerth at math.tamu.edu
www: http://www.math.tamu.edu/~bangerth/
More information about the Aspect-devel
mailing list