qsim::
ParallelForT
#include <parfor.h>
Helper struct for executing for-loops in parallel across multiple threads.
Summary
Constructors and Destructors
|
ParallelForT
(unsigned num_threads)
|
Public functions
|
GetIndex0
(uint64_t size, unsigned thread_id) const
|
uint64_t
|
GetIndex1
(uint64_t size, unsigned thread_id) const
|
uint64_t
|
Run
(uint64_t size, Function && func, Args &&... args) const
|
void
|
RunReduce
(uint64_t size, Function && func, Op && op, Args &&... args) const
|
Op::result_type
|
RunReduceP
(uint64_t size, Function && func, Op && op, Args &&... args) const
|
std::vector< typename Op::result_type >
|
Public attributes
num_threads
unsigned qsim::ParallelForT::num_threads
Public functions
GetIndex0
uint64_t qsim::ParallelForT::GetIndex0(
uint64_t size,
unsigned thread_id
) const
GetIndex1
uint64_t qsim::ParallelForT::GetIndex1(
uint64_t size,
unsigned thread_id
) const
ParallelForT
qsim::ParallelForT::ParallelForT(
unsigned num_threads
)
Run
void qsim::ParallelForT::Run(
uint64_t size,
Function && func,
Args &&... args
) const
RunReduce
Op::result_type qsim::ParallelForT::RunReduce(
uint64_t size,
Function && func,
Op && op,
Args &&... args
) const
RunReduceP
std::vector< typename Op::result_type > qsim::ParallelForT::RunReduceP(
uint64_t size,
Function && func,
Op && op,
Args &&... args
) const