itaps-parallel Updated ghost function syntax
Tim Tautges
tautges at mcs.anl.gov
Mon Jun 16 21:15:40 CDT 2008
See below.
Question about exchanging ghost data: I think the majority of usage will
be parts pushing data for entities they own to other parts having ghosts
of those entities. However, it would be short-sighted to leave out
copying data from ghost entities back to the owning part if there's a
foreseeable need for that. Comments?
I could see wanting functions to accumulate data (max, sum, etc.) on
interface entities.
Finally, should the functions for exchanging ghost data rather be for
exchanging data for owned+shared entities, or have the exchange
controlled by arguments so that you can choose interface/ghost/both?
/* \brief Exchange ghost entities between parts/processors
* Ghost entities are specified similar to 2nd-order adjacencies, i.e.
* through a "bridge" dimension. Number of layers is measured from
* the inter-processor interfaces. For example, to get 2 layers of hex
* entities in the ghost layer, measured from faces on the interface,
* use ghost_dim=3, bridge_dim=2, and num_layers=2.
*
* Ghost information is cached on the partition.
*
* \param instance iMesh instance
* \param partition_handle Partition on which to exchange ghosts
* \param ghost_dim Dimension of entities ghosted
* \param bridge_dim Dimension through which bridge adjacencies are found
* \param num_layers Number of layers of ghost entities
* \param err Error returned from function
* COMMUNICATION: Collective. Blocking.
*/
iMeshP_exchangeGhostEnts(/*in*/ iMesh_Instance instance,
/*in*/ iMeshP_PartitionHandle partition_handle,
/*in*/ int ghost_dim,
/*in*/ int bridge_dim,
/*in*/ int num_layers,
/*out*/ int *err);
/* \brief Delete all ghost entities between parts/processors
* \param instance iMesh instance
* \param partition_handle Partition on which ghost entities are deleted
* \param err Error returned from function
* COMMUNICATION: None.
*/
iMeshP_deleteGhostEnts(/*in*/ iMesh_Instance instance,
/*in*/ iMeshP_PartitionHandle partition_handle,
/*out*/ int *err);
/* \brief Return information about ghosting on a partition
* \param instance iMesh instance
* \param partition_handle Partition on which ghost entities are deleted
* \param ghost_dim Dimension of ghost entities
* \param bridge_dim Dimension of bridge entities
* \param num_layers Number of layers of ghost entities
* \param err Error returned from function
* COMMUNICATION: None.
*/
iMeshP_deleteGhostEnts(/*in*/ iMesh_Instance instance,
/*in*/ iMeshP_PartitionHandle partition_handle,
/*out*/ int *ghost_dim,
/*out*/ int *bridge_dim,
/*out*/ int *num_layers,
/*out*/ int *err);
--
================================================================
"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