STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types
stapl::partitioner_details::rmi_allgather_obj Struct Reference

Object to broadcast a graph in CSR format used by METIS. More...

Public Member Functions

 rmi_allgather_obj (metis_graph const &local_graph, metis_graph &global_graph)
 
void operator() ()
 Execute the broadcast and store result in m_global_graph.
 
void append_metis_graph (metis_graph const &g)
 Append a piece of graph to the broadcast result m_global_graph. More...
 
metis_graph get_local_graph ()
 
runtime::location_md const & get_location_md (void) const noexcept
 Returns the location metadata of the location this object registered in.
 
runtime::location_mdget_location_md (void) noexcept
 Returns the location metadata of the location this object registered in. noexcept More...
 
Distributed Object Management
rmi_handle::const_reference const & get_rmi_handle (void) const noexcept
 Returns the associated rmi_handle.
 
rmi_handle::reference const & get_rmi_handle (void) noexcept
 Returns the associated rmi_handle.
 
size_type get_location_id (void) const noexcept
 Returns the location id of the local sub-object.
 
size_type get_num_locations (void) const noexcept
 Returns the number of locations of the gang of this p_object.
 
void advance_epoch (void)
 Advances the epoch of the object. More...
 
void unlock (void)
 Used by lock_guard functionality in method of derived classes to request atomicity with respect to incoming RMIs. More...
 
void lock (void)
 Used by lock_guard functionality in method of derived classes to request atomicity with respect to incoming RMIs. More...
 
bool try_lock (void)
 Attempt to maintain atomicity with respect to incoming RMIs. More...
 

Public Types

using size_type = rmi_handle::size_type
 

Detailed Description

Object to broadcast a graph in CSR format used by METIS.

Constructor & Destructor Documentation

◆ rmi_allgather_obj()

stapl::partitioner_details::rmi_allgather_obj::rmi_allgather_obj ( metis_graph const &  local_graph,
metis_graph &  global_graph 
)
Parameters
local_graphlocal piece of the graph.
globalgraph graph storing the result of the broadcast.

Assuming global graph is already allocated with the required memory to hold all concatenations of the local graphs.

Member Function Documentation

◆ append_metis_graph()

void stapl::partitioner_details::rmi_allgather_obj::append_metis_graph ( metis_graph const &  g)

Append a piece of graph to the broadcast result m_global_graph.

Parameters
gpiece of graph in CSR format used by METIS.

◆ get_location_md()

runtime::location_md& stapl::p_object::get_location_md ( void  )
noexceptinherited

Returns the location metadata of the location this object registered in. noexcept

noexcept

◆ advance_epoch()

void stapl::p_object::advance_epoch ( void  )
inherited

Advances the epoch of the object.

Advancing the epoch will flush any pending RMIs. It will also increase the epoch of the current gang if the object is not a named object.

◆ unlock()

void stapl::p_object::unlock ( void  )
inherited

Used by lock_guard functionality in method of derived classes to request atomicity with respect to incoming RMIs.

Mutates counter in the associated runqueue.

◆ lock()

void stapl::p_object::lock ( void  )
inherited

Used by lock_guard functionality in method of derived classes to request atomicity with respect to incoming RMIs.

Mutates counter in the associated runqueue.

◆ try_lock()

bool stapl::p_object::try_lock ( void  )
inherited

Attempt to maintain atomicity with respect to incoming RMIs.

Mutates counter in the associated runqueue.

Returns
true if the lock was able to be acquired. false if it is already locked.

The documentation for this struct was generated from the following file: