本文整理汇总了C++中partition_data类的典型用法代码示例。如果您正苦于以下问题:C++ partition_data类的具体用法?C++ partition_data怎么用?C++ partition_data使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了partition_data类的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: partition_data
// Create a partition which acts as a proxy to a part of the embedded array.
// The proxy is assumed to refer to either the left or the right boundary
// element.
partition_data(partition_data const& base, std::size_t min_index)
: data_(base.data_.data()+min_index, 1, buffer_type::reference),
size_(base.size()),
min_index_(min_index)
{
HPX_ASSERT(min_index < base.size());
}
开发者ID:hkaiser,项目名称:hpx,代码行数:10,代码来源:1d_stencil_8.cpp
示例2: partition_data
// Create a partition which acts as a proxy to a part of the embedded array.
// The proxy is assumed to refer to either the left or the right boundary
// element.
partition_data(partition_data const& base, std::size_t min_index)
: data_(base.data_.data()+min_index, 1, buffer_type::reference,
hold_reference(base.data_)), // keep referenced partition alive
size_(base.size()),
min_index_(min_index)
{
HPX_ASSERT(min_index < base.size());
}
开发者ID:Bcorde5,项目名称:hpx,代码行数:11,代码来源:1d_stencil_8.cpp
示例3: heat_part
// The partitioned operator, it invokes the heat operator above on all
// elements of a partition.
static partition_data heat_part(partition_data const& left,
partition_data const& middle, partition_data const& right)
{
std::size_t size = middle.size();
partition_data next(size);
next[0] = heat(left[size-1], middle[0], middle[1]);
for (std::size_t i = 1; i != size-1; ++i)
next[i] = heat(middle[i-1], middle[i], middle[i+1]);
next[size-1] = heat(middle[size-2], middle[size-1], right[0]);
return next;
}
开发者ID:Bcorde5,项目名称:hpx,代码行数:17,代码来源:1d_stencil_3.cpp
示例4: heat_part
// The partitioned operator, it invokes the heat operator above on all
// elements of a partition.
static partition_data heat_part(partition_data const& left,
partition_data const& middle, partition_data const& right)
{
std::size_t size = middle.size();
partition_data next(size);
next[0] = heat(left[size-1], middle[0], middle[1]);
// Visual Studio requires OMP loop variables to be signed :/
# pragma omp parallel for
for (boost::int64_t i = 1; i < boost::int64_t(size-1); ++i)
next[i] = heat(middle[i-1], middle[i], middle[i+1]);
next[size-1] = heat(middle[size-2], middle[size-1], right[0]);
return next;
}
开发者ID:dmarce1,项目名称:hpx,代码行数:19,代码来源:1d_stencil_3_omp.cpp
示例5: heat_part
// The partitioned operator, it invokes the heat operator above on all
// elements of a partition.
static partition_data heat_part(partition_data const& left,
partition_data const& middle, partition_data const& right)
{
std::size_t size = middle.size();
partition_data next(size);
typedef boost::counting_iterator<std::size_t> iterator;
next[0] = heat(left[size-1], middle[0], middle[1]);
using namespace hpx::parallel;
for_each(par, iterator(1), iterator(size-1),
[&next, &middle](std::size_t i)
{
next[i] = heat(middle[i-1], middle[i], middle[i+1]);
});
next[size-1] = heat(middle[size-2], middle[size-1], right[0]);
return next;
}
开发者ID:Bcorde5,项目名称:hpx,代码行数:23,代码来源:1d_stencil_4_parallel.cpp
注:本文中的partition_data类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论