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