itaps-parallel Asynchronous functions in parallel interface
Tim Tautges
tautges at mcs.anl.gov
Fri Oct 10 13:28:58 CDT 2008
Hi all,
Thinking more about Jason's proposal lead me to a really important
question about our parallel interface. If we're proposing to have
asynchronous functions like iMeshP_migrateEntity which return a request
handle, with the application calling the test or wait functions to test
whether a request has finished, where is the code which is executing
that request running? In the case of MPI, there is presumably some
interaction with the OS, which is acting autonomously to fill buffers,
transfer them to other processors, etc. On large parallel systems
that's handled by the OS-level parts of MPI; on workstations or
clusters, that's probably done by some other thread or process running
on each node (or asynchronous calls are really synchronous). For imesh,
though, are any of the implementations able to do that kind of forking?
I know MOAB never will. In that case, I think asynchronous calls to
iMeshP don't make sense, or they only make sense if they're just
pass-through functions to MPI, in which case they're superfluous. I
think it's down in the implementation where asynchronicity is used. For
example, when exchanging tags of owned entities, that function can
initiate and wait for multiple asynchronous messages. Comments?
- tim
--
================================================================
"You will keep in perfect peace him whose mind is
steadfast, because he trusts in you." Isaiah 26:3
Tim Tautges Argonne National Laboratory
(tautges at mcs.anl.gov) (telecommuting from UW-Madison)
phone: (608) 263-8485 1500 Engineering Dr.
fax: (608) 263-4499 Madison, WI 53706
More information about the itaps-parallel
mailing list