vSMC
vSMC: Scalable Monte Carlo
Classes | Public Member Functions | Protected Member Functions | List of all members
vsmc::MonitorEvalTBB< T, Derived > Class Template Reference

Monitor<T>::eval_type subtype using Intel Threading Building Blocks. More...

#include <vsmc/smp/backend_tbb.hpp>

Classes

class  work_type
 

Public Member Functions

void operator() (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r)
 
- Public Member Functions inherited from vsmc::MonitorEvalBase< T, Derived >
void eval_post (std::size_t iter, Particle< T > &particle)
 
void eval_pre (std::size_t iter, Particle< T > &particle)
 
void eval_sp (std::size_t iter, std::size_t dim, SingleParticle< T > sp, double *r)
 

Protected Member Functions

 MonitorEvalTBB ()=default
 
 MonitorEvalTBB (const MonitorEvalTBB< T, Derived > &)=default
 
 MonitorEvalTBB (MonitorEvalTBB< T, Derived > &&)=default
 
 ~MonitorEvalTBB ()
 
MonitorEvalTBB< T, Derived > & operator= (MonitorEvalTBB< T, Derived > &&)=default
 
MonitorEvalTBB< T, Derived > & operator= (MonitorEvalTBB< T, Derived > &)=default
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range)
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range, const ::tbb::auto_partitioner &partitioner)
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range, const ::tbb::simple_partitioner &partitioner)
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range,::tbb::affinity_partitioner &partitioner)
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range, const ::tbb::auto_partitioner &partitioner,::tbb::task_group_context &context)
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range, const ::tbb::simple_partitioner &partitioner,::tbb::task_group_context &context)
 
void parallel_run (std::size_t iter, std::size_t dim, Particle< T > &particle, double *r, const ::tbb::blocked_range< typename Particle< T >::size_type > &range,::tbb::affinity_partitioner &partitioner,::tbb::task_group_context &context)
 
- Protected Member Functions inherited from vsmc::MonitorEvalBase< T, Derived >
 MonitorEvalBase ()=default
 
 MonitorEvalBase (const MonitorEvalBase< T, Derived > &)=default
 
 MonitorEvalBase (MonitorEvalBase< T, Derived > &&)=default
 
virtual ~MonitorEvalBase ()
 
MonitorEvalBase< T, Derived > & operator= (const MonitorEvalBase< T, Derived > &)=default
 
MonitorEvalBase< T, Derived > & operator= (MonitorEvalBase< T, Derived > &&)=default
 

Detailed Description

template<typename T, typename Derived>
class vsmc::MonitorEvalTBB< T, Derived >

Monitor<T>::eval_type subtype using Intel Threading Building Blocks.

Definition at line 62 of file backend_tbb.hpp.

Constructor & Destructor Documentation

template<typename T, typename Derived>
vsmc::MonitorEvalTBB< T, Derived >::MonitorEvalTBB ( )
protecteddefault
template<typename T, typename Derived>
vsmc::MonitorEvalTBB< T, Derived >::MonitorEvalTBB ( const MonitorEvalTBB< T, Derived > &  )
protecteddefault
template<typename T, typename Derived>
vsmc::MonitorEvalTBB< T, Derived >::MonitorEvalTBB ( MonitorEvalTBB< T, Derived > &&  )
protecteddefault
template<typename T, typename Derived>
vsmc::MonitorEvalTBB< T, Derived >::~MonitorEvalTBB ( )
inlineprotected

Definition at line 403 of file backend_tbb.hpp.

Member Function Documentation

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::operator() ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r 
)
inline

Definition at line 394 of file backend_tbb.hpp.

template<typename T, typename Derived>
MonitorEvalTBB<T, Derived>& vsmc::MonitorEvalTBB< T, Derived >::operator= ( MonitorEvalTBB< T, Derived > &  )
protecteddefault
template<typename T, typename Derived>
MonitorEvalTBB<T, Derived>& vsmc::MonitorEvalTBB< T, Derived >::operator= ( MonitorEvalTBB< T, Derived > &&  )
protecteddefault
template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range 
)
inlineprotected

Definition at line 432 of file backend_tbb.hpp.

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range,
const ::tbb::auto_partitioner &  partitioner 
)
inlineprotected

Definition at line 439 of file backend_tbb.hpp.

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range,
const ::tbb::simple_partitioner &  partitioner 
)
inlineprotected

Definition at line 448 of file backend_tbb.hpp.

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range,
::tbb::affinity_partitioner &  partitioner 
)
inlineprotected

Definition at line 457 of file backend_tbb.hpp.

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range,
const ::tbb::auto_partitioner &  partitioner,
::tbb::task_group_context &  context 
)
inlineprotected

Definition at line 467 of file backend_tbb.hpp.

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range,
const ::tbb::simple_partitioner &  partitioner,
::tbb::task_group_context &  context 
)
inlineprotected

Definition at line 477 of file backend_tbb.hpp.

template<typename T, typename Derived>
void vsmc::MonitorEvalTBB< T, Derived >::parallel_run ( std::size_t  iter,
std::size_t  dim,
Particle< T > &  particle,
double *  r,
const ::tbb::blocked_range< typename Particle< T >::size_type > &  range,
::tbb::affinity_partitioner &  partitioner,
::tbb::task_group_context &  context 
)
inlineprotected

Definition at line 487 of file backend_tbb.hpp.