Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
Realm::ByFieldMicroOp< N, T, FT > Class Template Reference

#include <byfield.h>

Inheritance diagram for Realm::ByFieldMicroOp< N, T, FT >:
Collaboration diagram for Realm::ByFieldMicroOp< N, T, FT >:

Public Types

typedef T IDXTYPE
 
typedef FT FIELDTYPE
 
- Public Types inherited from Realm::PartitioningMicroOp
typedef IntrusiveList< PartitioningMicroOp, REALM_PMTA_USE(PartitioningMicroOp, uop_link), DummyLockMicroOpList
 

Public Member Functions

 ByFieldMicroOp (IndexSpace< N, T > _parent_space, IndexSpace< N, T > _inst_space, RegionInstance _inst, size_t _field_offset)
 
virtual ~ByFieldMicroOp (void)
 
void set_value_range (FT _lo, FT _hi)
 
void set_value_set (const std::vector< FT > &_value_set)
 
void add_sparsity_output (FT _val, SparsityMap< N, T > _sparsity)
 
virtual void execute (void)
 
void dispatch (PartitioningOperation *op, bool inline_ok)
 
- Public Member Functions inherited from Realm::PartitioningMicroOp
 PartitioningMicroOp (void)
 
virtual ~PartitioningMicroOp (void)
 
void mark_started (void)
 
void mark_finished (void)
 
template<int N, typename T >
void sparsity_map_ready (SparsityMapImpl< N, T > *sparsity, bool precise)
 
 REALM_PMTA_DEFN (PartitioningMicroOp, IntrusiveListLink< PartitioningMicroOp >, uop_link)
 

Static Public Attributes

static const int DIM = N
 

Protected Member Functions

template<typename S >
 REALM_ATTR_WARN_UNUSED (bool serialize_params(S &s) const)
 
template<typename S >
 ByFieldMicroOp (NodeID _requestor, AsyncMicroOp *_async_microop, S &s)
 
template<typename BM >
void populate_bitmasks (std::map< FT, BM * > &bitmasks)
 
- Protected Member Functions inherited from Realm::PartitioningMicroOp
 PartitioningMicroOp (NodeID _requestor, AsyncMicroOp *_async_microop)
 
void finish_dispatch (PartitioningOperation *op, bool inline_ok)
 

Protected Attributes

IndexSpace< N, T > parent_space
 
IndexSpace< N, T > inst_space
 
RegionInstance inst
 
size_t field_offset
 
bool value_range_valid
 
bool value_set_valid
 
FT range_lo
 
FT range_hi
 
std::set< FT > value_set
 
std::map< FT, SparsityMap< N, T > > sparsity_outputs
 
- Protected Attributes inherited from Realm::PartitioningMicroOp
atomic< int > wait_count
 
NodeID requestor
 
AsyncMicroOpasync_microop
 

Static Protected Attributes

static ActiveMessageHandlerReg< RemoteMicroOpMessage< ByFieldMicroOp< N, T, FT > > > areg
 

Friends

struct RemoteMicroOpMessage< ByFieldMicroOp< N, T, FT > >
 
class PartitioningMicroOp
 

Additional Inherited Members

- Public Attributes inherited from Realm::PartitioningMicroOp
IntrusiveListLink< PartitioningMicroOpuop_link
 
- Static Protected Member Functions inherited from Realm::PartitioningMicroOp
template<typename T >
static void forward_microop (NodeID target, PartitioningOperation *op, T *microop)
 

Member Typedef Documentation

◆ FIELDTYPE

template<int N, typename T , typename FT >
typedef FT Realm::ByFieldMicroOp< N, T, FT >::FIELDTYPE

◆ IDXTYPE

template<int N, typename T , typename FT >
typedef T Realm::ByFieldMicroOp< N, T, FT >::IDXTYPE

Constructor & Destructor Documentation

◆ ByFieldMicroOp() [1/2]

template<int N, typename T , typename FT >
Realm::ByFieldMicroOp< N, T, FT >::ByFieldMicroOp ( IndexSpace< N, T >  _parent_space,
IndexSpace< N, T >  _inst_space,
RegionInstance  _inst,
size_t  _field_offset 
)

◆ ~ByFieldMicroOp()

template<int N, typename T , typename FT >
virtual Realm::ByFieldMicroOp< N, T, FT >::~ByFieldMicroOp ( void  )
virtual

◆ ByFieldMicroOp() [2/2]

template<int N, typename T , typename FT >
template<typename S >
Realm::ByFieldMicroOp< N, T, FT >::ByFieldMicroOp ( NodeID  _requestor,
AsyncMicroOp _async_microop,
S &  s 
)
protected

Member Function Documentation

◆ add_sparsity_output()

template<int N, typename T , typename FT >
void Realm::ByFieldMicroOp< N, T, FT >::add_sparsity_output ( FT  _val,
SparsityMap< N, T >  _sparsity 
)

◆ dispatch()

template<int N, typename T , typename FT >
void Realm::ByFieldMicroOp< N, T, FT >::dispatch ( PartitioningOperation op,
bool  inline_ok 
)

◆ execute()

template<int N, typename T , typename FT >
virtual void Realm::ByFieldMicroOp< N, T, FT >::execute ( void  )
virtual

◆ populate_bitmasks()

template<int N, typename T , typename FT >
template<typename BM >
void Realm::ByFieldMicroOp< N, T, FT >::populate_bitmasks ( std::map< FT, BM * > &  bitmasks)
protected

◆ REALM_ATTR_WARN_UNUSED()

template<int N, typename T , typename FT >
template<typename S >
Realm::ByFieldMicroOp< N, T, FT >::REALM_ATTR_WARN_UNUSED ( bool serialize_params(S &s) const  )
protected

◆ set_value_range()

template<int N, typename T , typename FT >
void Realm::ByFieldMicroOp< N, T, FT >::set_value_range ( FT  _lo,
FT  _hi 
)

◆ set_value_set()

template<int N, typename T , typename FT >
void Realm::ByFieldMicroOp< N, T, FT >::set_value_set ( const std::vector< FT > &  _value_set)

Friends And Related Symbol Documentation

◆ PartitioningMicroOp

template<int N, typename T , typename FT >
friend class PartitioningMicroOp ( void  )
friend

◆ RemoteMicroOpMessage< ByFieldMicroOp< N, T, FT > >

template<int N, typename T , typename FT >
friend struct RemoteMicroOpMessage< ByFieldMicroOp< N, T, FT > >
friend

Member Data Documentation

◆ areg

template<int N, typename T , typename FT >
ActiveMessageHandlerReg<RemoteMicroOpMessage<ByFieldMicroOp<N,T,FT> > > Realm::ByFieldMicroOp< N, T, FT >::areg
staticprotected

◆ DIM

template<int N, typename T , typename FT >
const int Realm::ByFieldMicroOp< N, T, FT >::DIM = N
static

◆ field_offset

template<int N, typename T , typename FT >
size_t Realm::ByFieldMicroOp< N, T, FT >::field_offset
protected

◆ inst

template<int N, typename T , typename FT >
RegionInstance Realm::ByFieldMicroOp< N, T, FT >::inst
protected

◆ inst_space

template<int N, typename T , typename FT >
IndexSpace<N,T> Realm::ByFieldMicroOp< N, T, FT >::inst_space
protected

◆ parent_space

template<int N, typename T , typename FT >
IndexSpace<N,T> Realm::ByFieldMicroOp< N, T, FT >::parent_space
protected

◆ range_hi

template<int N, typename T , typename FT >
FT Realm::ByFieldMicroOp< N, T, FT >::range_hi
protected

◆ range_lo

template<int N, typename T , typename FT >
FT Realm::ByFieldMicroOp< N, T, FT >::range_lo
protected

◆ sparsity_outputs

template<int N, typename T , typename FT >
std::map<FT, SparsityMap<N,T> > Realm::ByFieldMicroOp< N, T, FT >::sparsity_outputs
protected

◆ value_range_valid

template<int N, typename T , typename FT >
bool Realm::ByFieldMicroOp< N, T, FT >::value_range_valid
protected

◆ value_set

template<int N, typename T , typename FT >
std::set<FT> Realm::ByFieldMicroOp< N, T, FT >::value_set
protected

◆ value_set_valid

template<int N, typename T , typename FT >
bool Realm::ByFieldMicroOp< N, T, FT >::value_set_valid
protected

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