20#ifndef REALM_DEPPART_IMAGE_H
21#define REALM_DEPPART_IMAGE_H
28 template <
int N,
typename T,
int N2,
typename T2>
31 static const int DIM = N;
33 static const int DIM2 = N2;
63 template <
typename BM>
66 template <
typename BM>
69 template <
typename BM>
72 template <
typename BM>
87 template <
int N,
typename T,
int N2,
typename T2>
103 virtual void print(std::ostream& os)
const;
115 template <
int N,
typename T,
int N2,
typename T2>
Definition activemsg.h:303
Definition partitions.h:85
Definition indexspace.h:214
unsigned gen_t
Definition event_impl.h:87
Definition event_impl.h:198
ImageMicroOp(IndexSpace< N, T > _parent_space, IndexSpace< N2, T2 > _inst_space, RegionInstance _inst, size_t _field_offset, bool _is_ranged)
T IDXTYPE
Definition image.h:32
std::vector< IndexSpace< N2, T2 > > sources
Definition image.h:80
intptr_t approx_output_op
Definition image.h:84
RegionInstance inst
Definition image.h:77
IndexSpace< N, T > parent_space
Definition image.h:75
void dispatch(PartitioningOperation *op, bool inline_ok)
REALM_ATTR_WARN_UNUSED(bool serialize_params(S &s) const)
static const int DIM2
Definition image.h:33
void add_sparsity_output(IndexSpace< N2, T2 > _source, SparsityMap< N, T > _sparsity)
std::vector< SparsityMap< N, T > > sparsity_outputs
Definition image.h:82
void add_approx_output(int index, PartitioningOperation *op)
void populate_bitmasks_ptrs(std::map< int, BM * > &bitmasks)
int approx_output_index
Definition image.h:83
void populate_bitmasks_ranges(std::map< int, BM * > &bitmasks)
void populate_approx_bitmask_ranges(BM &bitmask)
ImageMicroOp(NodeID _requestor, AsyncMicroOp *_async_microop, S &s)
std::vector< IndexSpace< N, T > > diff_rhss
Definition image.h:81
void populate_approx_bitmask_ptrs(BM &bitmask)
void add_sparsity_output_with_difference(IndexSpace< N2, T2 > _source, IndexSpace< N, T > _diff_rhs, SparsityMap< N, T > _sparsity)
static ActiveMessageHandlerReg< RemoteMicroOpMessage< ImageMicroOp< N, T, N2, T2 > > > areg
Definition image.h:53
virtual void execute(void)
virtual ~ImageMicroOp(void)
T2 IDXTYPE2
Definition image.h:34
size_t field_offset
Definition image.h:78
IndexSpace< N2, T2 > inst_space
Definition image.h:76
static const int DIM
Definition image.h:31
bool is_ranged
Definition image.h:79
std::vector< IndexSpace< N2, T2 > > sources
Definition image.h:110
virtual void set_overlap_tester(void *tester)
virtual ~ImageOperation(void)
IndexSpace< N, T > parent
Definition image.h:108
std::vector< IndexSpace< N, T > > diff_rhss
Definition image.h:111
ImageOperation(const IndexSpace< N, T > &_parent, const DomainTransform< N, T, N2, T2 > &_domain_transform, const ProfilingRequestSet &reqs, GenEventImpl *_finish_event, EventImpl::gen_t _finish_gen)
std::vector< SparsityMap< N, T > > images
Definition image.h:112
IndexSpace< N, T > add_source_with_difference(const IndexSpace< N2, T2 > &source, const IndexSpace< N, T > &diff_rhs)
DomainTransform< N, T, N2, T2 > domain_transform
Definition image.h:109
virtual void print(std::ostream &os) const
IndexSpace< N, T > add_source(const IndexSpace< N2, T2 > &source)
virtual void execute(void)
Definition partitions.h:98
Definition partitions.h:153
Definition profiling.h:363
StructuredImageMicroOp(const IndexSpace< N, T > &_parent, const StructuredTransform< N, T, N2, T2 > &_transform)
virtual void execute(void)
void dispatch(PartitioningOperation *op, bool inline_ok)
std::vector< IndexSpace< N2, T2 > > sources
Definition image.h:134
virtual ~StructuredImageMicroOp(void)
virtual void populate(std::map< int, HybridRectangleList< N, T > * > &bitmasks)
StructuredTransform< N, T, N2, T2 > transform
Definition image.h:133
void add_sparsity_output(IndexSpace< N2, T2 > _source, SparsityMap< N, T > _sparsity)
IndexSpace< N, T > parent_space
Definition image.h:132
std::vector< SparsityMap< N, T > > sparsity_outputs
Definition image.h:135
Definition activemsg.h:38
int NodeID
Definition nodeset.h:40
Definition indexspace.h:323
Definition partitions.h:230