An overlap view is a segmented view whose segments overlap by some number of elements in each dimension as specified by the user. More...
Public Member Functions | |
overlap_view (View const &v, partition_type const &part, map_fun_gen_t const &mfg=map_fun_gen_t()) | |
Constructs an overlap_view over the view v using the partition part . More... | |
overlap_view (view_container_type const &c, domain_type const &dom, map_func_type const &mf) | |
Construct an overlap_view from the components of an existing overlap_view. More... | |
overlap_view (view_container_type const &c, domain_type const &dom, map_func_type const &mf, overlap_view const &other) | |
Construct an overlap_view from the components of an existing overlap_view. More... | |
template<typename Other > | |
overlap_view (Other const &other, View *view) | |
rmi_handle::reference | nested_locality (index_type const &index) |
segmented_view needs to redefine the nested_locality as using the one in it's base type(core_view) creates a p_object(view_container) when creating a reference to an element of segmented_view which could cause unbalanced epochs and hanging. More... | |
Public Types | |
typedef view_traits< overlap_view >::map_fun_gen_t | map_fun_gen_t |
using | view_type = base_type |
using | value_type = typename traits_t::value_type |
using | domain_type = typename traits_t::domain_type |
using | index_type = typename traits_t::index_type |
using | view_container_type = part_container_t |
using | map_function = typename traits_t::map_function |
using | map_func_type = map_function |
using | partition_type = overlap_partition< View::domain_type > |
using | dimension_type = typename dimension_traits< view_container_type >::type |
An overlap view is a segmented view whose segments overlap by some number of elements in each dimension as specified by the user.
The overlap domains are defined specifying the number of elements that are overlapped to the left (l
), the number of elements that are not overlapped (c
) and the number of elements overlapped to the right (r
). Each subdomain has size: l+c+r.
stapl::overlap_view< View >::overlap_view | ( | View const & | v, |
partition_type const & | part, | ||
map_fun_gen_t const & | mfg = map_fun_gen_t() |
||
) |
Constructs an overlap_view over the view v
using the partition part
.
v | View to partition into overlapping partitions |
part | partitioner describing the overlap partition to be used |
mfg | mapping function generator |
stapl::overlap_view< View >::overlap_view | ( | view_container_type const & | c, |
domain_type const & | dom, | ||
map_func_type const & | mf | ||
) |
Construct an overlap_view from the components of an existing overlap_view.
This constructor is invoked during construction of a mix_view over the overlap view during view coarsening.
c | Container of partitioned view components |
dom | Domain of the partitions |
mf | Mapping function generated for the view |
stapl::overlap_view< View >::overlap_view | ( | view_container_type const & | c, |
domain_type const & | dom, | ||
map_func_type const & | mf, | ||
overlap_view< View > const & | other | ||
) |
Construct an overlap_view from the components of an existing overlap_view.
This constructor is invoked during construction of a mix_view over the overlap view during view coarsening.
c | Container of partitioned view components |
dom | Domain of the partitions |
mf | Mapping function generated for the view |
other | overlap_view instance from which state can be copied |
stapl::overlap_view< View >::overlap_view | ( | Other const & | other, |
View * | view | ||
) |
|
inherited |
segmented_view needs to redefine the nested_locality as using the one in it's base type(core_view) creates a p_object(view_container) when creating a reference to an element of segmented_view which could cause unbalanced epochs and hanging.
the index of the element we asked for it's locality