Legion Runtime
Public Member Functions | Public Attributes | List of all members
Legion::AcquireLauncher Struct Reference

#include <legion.h>

Public Member Functions

 AcquireLauncher (LogicalRegion logical_region, LogicalRegion parent_region, PhysicalRegion physical_region=PhysicalRegion(), Predicate pred=Predicate::TRUE_PRED, MapperID id=0, MappingTagID tag=0, UntypedBuffer map_arg=UntypedBuffer(), const char *provenance="")
 
void add_field (FieldID f)
 
void add_grant (Grant g)
 
void add_wait_barrier (PhaseBarrier pb)
 
void add_arrival_barrier (PhaseBarrier pb)
 
void add_wait_handshake (LegionHandshake handshake)
 
void add_arrival_handshake (LegionHandshake handshake)
 

Public Attributes

LogicalRegion logical_region
 
LogicalRegion parent_region
 
std::set< FieldID > fields
 
PhysicalRegion physical_region
 
std::vector< Grantgrants
 
std::vector< PhaseBarrierwait_barriers
 
std::vector< PhaseBarrierarrive_barriers
 
Predicate predicate
 
MapperID map_id
 
MappingTagID tag
 
UntypedBuffer map_arg
 
std::string provenance
 
const std::vector< StaticDependence > * static_dependences
 
bool silence_warnings
 

Detailed Description

An AcquireLauncher is a class that is used for supporting user-level software coherence when working with logical regions held in simultaneous coherence mode. By default simultaneous mode requires all users to use the same physical instance. By acquiring coherence on the physical region, a parent task can launch sub-tasks which are not required to use the same physical instance. Synchronization primitives are allowed to specify what must occur before the acquire operation is performed.


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