STAPL API Reference          
Overview   Containers   Algorithms   Views   Skeletons   Run-Time System
Modules     Classes    
Classes | Typedefs | Functions
+ Collaboration diagram for Utility Methods:

Classes

struct  stapl::coarse_identity< T, dims >
 A workaround for the cases that a multidimensional coarsened view is passed to stapl::identity<T>. This struct brings a multidimensional coarsened view to PARAGRAPH environment. More...
 
struct  stapl::skeletons::coarse_identity_op< T >
 A workaround for the cases that a coarsened view is passed to stapl::identity<T>. This struct brings a coarsened view to PARAGRAPH environment. More...
 
struct  stapl::dynamic_wf
 Used to indicate that a work function deriving from this class should be provided the paragraph_impl::paragraph_view as the first argument to its function operator to allow it to add additional tasks to the PARAGRAPH. More...
 
struct  stapl::add_task_helper< WF, dynamic >
 Functor used to call paragraph_impl::paragraph_view::add_task() from PARAGRAPH factories. More...
 
struct  stapl::add_task_helper< WF, true >
 Specialization for dynamic work functions that adds the paragraph_impl::paragraph_view as the first view in the task specification. More...
 
struct  stapl::skeletons::filters::filter< i, Indices >
 Filters are used in the skeleton library in order to reduce the size of the coordinate vectors being passed around. More...
 
struct  stapl::identity_selector< WF, has_result_type >
 An identity workfunction used in the skeleton framework can be both typed and typeless. In most of the cases if the workfunction used in a parametric dependency is strictly typed, meaning that it has defined result_type, the corresponding identity workfunction should be typed with the same type. More...
 
class  stapl::skeletons::input_lazysize
 Log lazy size is used in skeletons where the size is defined as the logarithm of the inputs. A good example is an n-ary tree. More...
 
class  stapl::skeletons::log_lazysize< i >
 Log lazy size is used in skeletons where the size is defined as the logarithm of the inputs. A good example is an n-ary tree. More...
 
class  stapl::skeletons::log_ceil_lazysize< i >
 Log ceiling lazy size is used in skeletons where the size is defined as the ceiling of the logarithm of the input size. Hillis Steele or any other pointer jumping algorithm use this lazy size evaluator. More...
 
class  stapl::skeletons::lazysize
 The basic lazy size evaluator which returns a predefined size upon evaluation. More...
 
struct  stapl::skeletons::matrix_lazysize
 The lazy size evaluator for matrix which returns a predefined size upon evaluation. More...
 
class  stapl::skeletons::lazy_divide_and_conquer_size
 Lazy size evaluation for divide-and-conquer algorithms. More...
 
struct  stapl::lightweight_multiarray_base< T, dims, Init >
 A base class for lightweight sequential containers used in the skeleton framework applications such as the NAS IS and FT benchmarks. This class wraps an std::vector and keeps a shared_ptr to the underlying std::vector. More...
 
struct  stapl::lightweight_vector< T >
 This container is lightweight wrapper around std::vector and keeps a shared_ptr to the underlying std::vector. More...
 
class  stapl::skeletons::skeletons_impl::tagged_skeleton< Skeleton, Tag >
 Tags a skeleton with a given Tag. More...
 
struct  stapl::skeletons::is_domain_scalar< Factory, ViewsTuple, is_sk >
 Finding the domain type of a factory. More...
 
struct  stapl::skeletons::is_output_scalar< Factory, ViewSet, is_sk >
 Finding if the output of a factory is reduced to an scalar value or is an aggregated value. More...
 
struct  stapl::view_index_iterator_base
 Base class used to allow view_index_iterator instances over different view types to be stored in an std::vector in a factory that performs incremental task generation. More...
 
struct  stapl::view_index_iterator< View >
 Iterator that traverses a disjoint partition of the indices of a view's elements. More...
 
class  stapl::wf_iter_compare< V >
 Helper class template that performs iterator comparison against an end iterator. The iterators are selected from a single view of a list of input views. The first view with a finite domain is selected for use in the comparison. More...
 
class  stapl::part_id_size< V >
 Helper class template that dispatches call to get_num_local_subviews to the first view parameter that has a finite domain. More...
 

Typedefs

template<typename VDomains >
using stapl::skeletons::first_finite_domain_index = stapl::find_first_index< VDomains, is_finite_domain >
 Type metafunction returning the index of the first element (i.e., domain) of the tuple parameter View domains which is finite.
 

Functions

template<typename V >
view_index_iterator< typename std::remove_reference< V >::type > stapl::make_index_view_iterator (V &&v, std::size_t num_subviews, bool b_replicated_aware=false)
 Constructs a ref stapl::view_index_iterator instances for the given view. More...
 
template<bool b_replicated_aware, typename... V>
tuple< view_index_iterator< typename std::remove_reference< V >::type >... > stapl::partition_id_set (V &&... v)
 Constructs a set of stapl::view_index_iterator instances, one for each of the input views. More...
 
template<typename... V>
tuple< view_index_iterator< typename std::remove_reference< V >::type >... > stapl::partition_id_set (V &&... v)
 The default case of partition_id_set which assumes that replication awareness is set to false. More...
 

Detailed Description

Function Documentation

◆ make_index_view_iterator()

template<typename V >
view_index_iterator<typename std::remove_reference<V>::type> stapl::make_index_view_iterator ( V &&  v,
std::size_t  num_subviews,
bool  b_replicated_aware = false 
)

Constructs a ref stapl::view_index_iterator instances for the given view.

Parameters
vThe view whose elements will be processed by tasks generated in the factory that invoked this method.
Returns
ref view_index_iterator instance of the given view that have been partitioned based on the number of local elements of the first view on each location.

◆ partition_id_set() [1/2]

template<bool b_replicated_aware, typename... V>
tuple<view_index_iterator<typename std::remove_reference<V>::type>...> stapl::partition_id_set ( V &&...  v)

Constructs a set of stapl::view_index_iterator instances, one for each of the input views.

Parameters
vViews whose elements will be processed by tasks generated in the factory that invoked this method.
Returns
A tuple of view_index_iterator instances that have been partitioned based on the number of local elements of the first view on each location.

◆ partition_id_set() [2/2]

template<typename... V>
tuple<view_index_iterator<typename std::remove_reference<V>::type>...> stapl::partition_id_set ( V &&...  v)

The default case of partition_id_set which assumes that replication awareness is set to false.

Parameters
vViews whose elements will be processed by tasks generated in the factory that invoked this method.
Returns
A tuple of view_index_iterator instances that have been partitioned based on the number of local elements of the first view on each location.