Realm
A distributed, event-based tasking library
Loading...
Searching...
No Matches
PRealm::RegionInstance Class Reference

#include <prealm.h>

Inheritance diagram for PRealm::RegionInstance:
Collaboration diagram for PRealm::RegionInstance:

Public Member Functions

 RegionInstance (void)
 
 RegionInstance (const RegionInstance &i)=default
 
 RegionInstance (RegionInstance &&i)=default
 
RegionInstanceoperator= (const RegionInstance &i)=default
 
RegionInstanceoperator= (RegionInstance &&i)=default
 
Event redistrict (RegionInstance &instance, const InstanceLayoutGeneric *layout, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
Event redistrict (RegionInstance *instances, const InstanceLayoutGeneric **layouts, size_t num_layouts, const ProfilingRequestSet *prs, Event wait_on=Event::NO_EVENT)
 
Event fetch_metadata (Processor target) const
 
template<int N, typename T >
IndexSpace< N, T > get_indexspace (void) const
 
template<int N>
IndexSpace< N, int > get_indexspace (void) const
 
- Public Member Functions inherited from Realm::RegionInstance
 RegionInstance ()=default
 
constexpr RegionInstance (id_t id)
 
constexpr operator id_t () const
 
bool operator< (const RegionInstance &rhs) const
 
bool operator== (const RegionInstance &rhs) const
 
bool operator!= (const RegionInstance &rhs) const
 
REALM_CUDA_HD bool exists (void) const
 
Memory get_location (void) const
 
const InstanceLayoutGenericget_layout (void) const
 
void read_untyped (size_t offset, void *data, size_t datalen) const
 
void write_untyped (size_t offset, const void *data, size_t datalen) const
 
void reduce_apply_untyped (size_t offset, ReductionOpID redop_id, const void *data, size_t datalen, bool exclusive=false) const
 
void reduce_fold_untyped (size_t offset, ReductionOpID redop_id, const void *data, size_t datalen, bool exclusive=false) const
 
void * pointer_untyped (size_t offset, size_t datalen) const
 
template<typename T >
read (size_t offset) const
 
template<typename T >
void write (size_t offset, T val) const
 
template<typename T >
void reduce_apply (size_t offset, ReductionOpID redop_id, T val, bool exclusive=false) const
 
template<typename T >
void reduce_fold (size_t offset, ReductionOpID redop_id, T val, bool exclusive=false) const
 
template<typename T >
T * pointer (size_t offset) const
 
Event redistrict (RegionInstance &instance, const InstanceLayoutGeneric *layout, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
Event redistrict (RegionInstance *instances, const InstanceLayoutGeneric **layouts, size_t num_layouts, const ProfilingRequestSet *prs, Event wait_on=Event::NO_EVENT)
 
 REALM_ATTR_DEPRECATED ("use RegionInstance::create_instance with layout reference instead", static Event create_instance(RegionInstance &inst, Memory memory, InstanceLayoutGeneric *ilg, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT))
 
 REALM_ATTR_DEPRECATED ("use RegionInstance::create_external_instance with layout reference instead", static Event create_external_instance(RegionInstance &inst, Memory memory, InstanceLayoutGeneric *ilg, const ExternalInstanceResource &resource, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT))
 
template<int N, typename T >
 REALM_ATTR_DEPRECATED ("use RegionInstance::create_external_instance instead", static Event create_file_instance(RegionInstance &inst, const char *file_name, const IndexSpace< N, T > &space, const std::vector< FieldID > &field_ids, const std::vector< size_t > &field_sizes, realm_file_mode_t file_mode, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT))
 
 REALM_ATTR_DEPRECATED ("use RegionInstance::create_external_instance instead", static Event create_external(RegionInstance &inst, Memory memory, uintptr_t base, InstanceLayoutGeneric *ilg, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT))
 
void destroy (Event wait_on=Event::NO_EVENT) const
 
AddressSpace address_space (void) const
 
Event fetch_metadata (Processor target) const
 
template<int N, typename T >
IndexSpace< N, T > get_indexspace (void) const
 
template<int N>
IndexSpace< N, int > get_indexspace (void) const
 
REALM_INTERNAL_API_EXTERNAL_LINKAGE bool increment_accessor_count (void)
 
REALM_INTERNAL_API_EXTERNAL_LINKAGE bool decrement_accessor_count (void)
 
void destroy (const std::vector< DestroyedField > &destroyed_fields, Event wait_on=Event::NO_EVENT) const
 
bool can_get_strided_access_parameters (size_t start, size_t count, ptrdiff_t field_offset, size_t field_size)
 
void get_strided_access_parameters (size_t start, size_t count, ptrdiff_t field_offset, size_t field_size, intptr_t &base, ptrdiff_t &stride)
 
void report_instance_fault (int reason, const void *reason_data, size_t reason_size) const
 
template<int N, typename T >
REALM_INTERNAL_API_EXTERNAL_LINKAGE const PieceLookup::Instructionget_lookup_program (FieldID field_id, unsigned allowed_mask, uintptr_t &field_offset)
 
template<int N, typename T >
REALM_INTERNAL_API_EXTERNAL_LINKAGE const PieceLookup::Instructionget_lookup_program (FieldID field_id, const Rect< N, T > &subrect, unsigned allowed_mask, uintptr_t &field_offset)
 
ExternalInstanceResourcegenerate_resource_info (bool read_only) const
 
ExternalInstanceResourcegenerate_resource_info (const IndexSpaceGeneric &space, span< const FieldID > fields, bool read_only) const
 

Static Public Member Functions

static Event create_instance (RegionInstance &inst, Memory memory, InstanceLayoutGeneric *ilg, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
static Event create_instance (RegionInstance &inst, Memory memory, const InstanceLayoutGeneric &ilg, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
static Event create_external_instance (RegionInstance &inst, Memory memory, InstanceLayoutGeneric *ilg, const ExternalInstanceResource &resource, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
static Event create_external_instance (RegionInstance &inst, Memory memory, const InstanceLayoutGeneric &ilg, const ExternalInstanceResource &resource, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
static Event create_external (RegionInstance &inst, Memory memory, uintptr_t base, InstanceLayoutGeneric *ilg, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const IndexSpace< N, T > &space, const std::vector< size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const IndexSpace< N, T > &space, const std::map< FieldID, size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const Rect< N, T > &rect, const std::vector< size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const Rect< N, T > &rect, const std::map< FieldID, size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_file_instance (RegionInstance &inst, const char *file_name, const IndexSpace< N, T > &space, const std::vector< FieldID > &field_ids, const std::vector< size_t > &field_sizes, realm_file_mode_t file_mode, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
- Static Public Member Functions inherited from Realm::RegionInstance
static Event create_instance (RegionInstance &inst, Memory memory, const InstanceLayoutGeneric &ilg, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
static Event create_external_instance (RegionInstance &inst, Memory memory, const InstanceLayoutGeneric &ilg, const ExternalInstanceResource &resource, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const Rect< N, T > &rect, const std::vector< size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const Rect< N, T > &rect, const std::map< FieldID, size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const IndexSpace< N, T > &space, const std::vector< size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 
template<int N, typename T >
static Event create_instance (RegionInstance &inst, Memory memory, const IndexSpace< N, T > &space, const std::map< FieldID, size_t > &field_sizes, size_t block_size, const ProfilingRequestSet &prs, Event wait_on=Event::NO_EVENT)
 

Public Attributes

Event unique_event
 
- Public Attributes inherited from Realm::RegionInstance
id_t id
 

Static Public Attributes

static const RegionInstance NO_INST
 
- Static Public Attributes inherited from Realm::RegionInstance
static const RegionInstance NO_INST
 

Additional Inherited Members

- Public Types inherited from Realm::RegionInstance
typedef ::realm_id_t id_t
 

Constructor & Destructor Documentation

◆ RegionInstance() [1/3]

PRealm::RegionInstance::RegionInstance ( void  )
inline

◆ RegionInstance() [2/3]

PRealm::RegionInstance::RegionInstance ( const RegionInstance i)
default

◆ RegionInstance() [3/3]

PRealm::RegionInstance::RegionInstance ( RegionInstance &&  i)
default

Member Function Documentation

◆ create_external()

static Event PRealm::RegionInstance::create_external ( RegionInstance inst,
Memory  memory,
uintptr_t  base,
InstanceLayoutGeneric ilg,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_external_instance() [1/2]

static Event PRealm::RegionInstance::create_external_instance ( RegionInstance inst,
Memory  memory,
const InstanceLayoutGeneric ilg,
const ExternalInstanceResource resource,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_external_instance() [2/2]

static Event PRealm::RegionInstance::create_external_instance ( RegionInstance inst,
Memory  memory,
InstanceLayoutGeneric ilg,
const ExternalInstanceResource resource,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_file_instance()

template<int N, typename T >
static Event PRealm::RegionInstance::create_file_instance ( RegionInstance inst,
const char *  file_name,
const IndexSpace< N, T > &  space,
const std::vector< FieldID > &  field_ids,
const std::vector< size_t > &  field_sizes,
realm_file_mode_t  file_mode,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_instance() [1/6]

template<int N, typename T >
static Event PRealm::RegionInstance::create_instance ( RegionInstance inst,
Memory  memory,
const IndexSpace< N, T > &  space,
const std::map< FieldID, size_t > &  field_sizes,
size_t  block_size,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_instance() [2/6]

template<int N, typename T >
static Event PRealm::RegionInstance::create_instance ( RegionInstance inst,
Memory  memory,
const IndexSpace< N, T > &  space,
const std::vector< size_t > &  field_sizes,
size_t  block_size,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_instance() [3/6]

static Event PRealm::RegionInstance::create_instance ( RegionInstance inst,
Memory  memory,
const InstanceLayoutGeneric ilg,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_instance() [4/6]

template<int N, typename T >
static Event PRealm::RegionInstance::create_instance ( RegionInstance inst,
Memory  memory,
const Rect< N, T > &  rect,
const std::map< FieldID, size_t > &  field_sizes,
size_t  block_size,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_instance() [5/6]

template<int N, typename T >
static Event PRealm::RegionInstance::create_instance ( RegionInstance inst,
Memory  memory,
const Rect< N, T > &  rect,
const std::vector< size_t > &  field_sizes,
size_t  block_size,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ create_instance() [6/6]

static Event PRealm::RegionInstance::create_instance ( RegionInstance inst,
Memory  memory,
InstanceLayoutGeneric ilg,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)
static

◆ fetch_metadata()

Event PRealm::RegionInstance::fetch_metadata ( Processor  target) const

◆ get_indexspace() [1/2]

template<int N, typename T >
IndexSpace< N, T > PRealm::RegionInstance::get_indexspace ( void  ) const

◆ get_indexspace() [2/2]

template<int N>
IndexSpace< N, int > PRealm::RegionInstance::get_indexspace ( void  ) const

◆ operator=() [1/2]

RegionInstance & PRealm::RegionInstance::operator= ( const RegionInstance i)
default

◆ operator=() [2/2]

RegionInstance & PRealm::RegionInstance::operator= ( RegionInstance &&  i)
default

◆ redistrict() [1/2]

Event PRealm::RegionInstance::redistrict ( RegionInstance instance,
const InstanceLayoutGeneric layout,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)

◆ redistrict() [2/2]

Event PRealm::RegionInstance::redistrict ( RegionInstance instances,
const InstanceLayoutGeneric **  layouts,
size_t  num_layouts,
const ProfilingRequestSet prs,
Event  wait_on = Event::NO_EVENT 
)

Member Data Documentation

◆ NO_INST

const RegionInstance PRealm::RegionInstance::NO_INST
static

◆ unique_event

Event PRealm::RegionInstance::unique_event

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