STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
List of all members | Public Member Functions | Public Types
stapl::overlap_view< View > Class Template Reference

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
 

Detailed Description

template<typename View>
class stapl::overlap_view< View >

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.

Example:
Domain to partition: [0..8]
left overlap (l): 2
non overlap (c): 3
right overlap (r): 1
Resulting partition: {[0..5],[3..8]}

Constructor & Destructor Documentation

◆ overlap_view() [1/4]

template<typename View >
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.

Parameters
vView to partition into overlapping partitions
partpartitioner describing the overlap partition to be used
mfgmapping function generator

◆ overlap_view() [2/4]

template<typename View >
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.

Parameters
cContainer of partitioned view components
domDomain of the partitions
mfMapping function generated for the view

◆ overlap_view() [3/4]

template<typename 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.

Parameters
cContainer of partitioned view components
domDomain of the partitions
mfMapping function generated for the view
otheroverlap_view instance from which state can be copied

◆ overlap_view() [4/4]

template<typename View >
template<typename Other >
stapl::overlap_view< View >::overlap_view ( Other const &  other,
View *  view 
)

Member Function Documentation

◆ nested_locality()

rmi_handle::reference stapl::segmented_view< View , overlap_partition< View::domain_type > , use_default , use_default >::nested_locality ( index_type const &  index)
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


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