Base Executor class.
Definition at line 36 of file Executor.h.
Public Types | |
| template<class F , class... T> | |
| using | noReferenceCond | 
Public Member Functions | |
| Executor () | |
| Default constructor of TMVA Executor class if ROOT::EnableImplicitMT has not been called then by default a serial executor will be created A user can create a thread pool and enable multi-thread excution by calling.   | |
| Executor (int nthreads) | |
| Constructor of TMVA Executor class Explicit specify the number of threads.   | |
| template<class Function , class INTEGER > | |
| void | Foreach (Function func, ROOT::TSeq< INTEGER > args, unsigned nChunks=0) | 
| template<class Function , class T > | |
| void | Foreach (Function func, std::vector< T > &args, unsigned nChunks=0) | 
| template<class Function > | |
| void | Foreach (Function func, unsigned int nTimes, unsigned nChunks=0) | 
| wrap TExecutor::Foreach   | |
| ROOT::TThreadExecutor * | GetMultiThreadExecutor () | 
| unsigned int | GetPoolSize () const | 
| template<class F , class INTEGER , class Cond = noReferenceCond<F, INTEGER>> | |
| auto | Map (F func, ROOT::TSeq< INTEGER > args) -> std::vector< InvokeResult_t< F, INTEGER > > | 
| template<class F , class Cond = noReferenceCond<F>> | |
| auto | Map (F func, unsigned nTimes) -> std::vector< InvokeResult_t< F > > | 
| Wrap TExecutor::Map functions.   | |
| template<class F , class INTEGER , class R , class Cond = noReferenceCond<F, INTEGER>> | |
| auto | MapReduce (F func, ROOT::TSeq< INTEGER > args, R redfunc) -> InvokeResult_t< F, INTEGER > | 
| Wrap TExecutor::MapReduce functions.   | |
| template<class F , class INTEGER , class R , class Cond = noReferenceCond<F, INTEGER>> | |
| auto | MapReduce (F func, ROOT::TSeq< INTEGER > args, R redfunc, unsigned nChunks) -> InvokeResult_t< F, INTEGER > | 
| template<class T , class R > | |
| auto | Reduce (const std::vector< T > &objs, R redfunc) -> decltype(redfunc(objs)) | 
| Wrap Reduce function.   | |
Public Attributes | |
| std::unique_ptr< ROOT::TThreadExecutor > | fMTExecImpl | 
| std::unique_ptr< ROOT::TSequentialExecutor > | fSeqExecImpl | 
Private Types | |
| template<typename F , typename... Args> | |
| using | InvokeResult_t = ROOT::TypeTraits::InvokeResult_t<F, Args...> | 
#include <TMVA/Executor.h>
      
  | 
  private | 
Definition at line 39 of file Executor.h.
Definition at line 43 of file Executor.h.
      
  | 
  inline | 
Default constructor of TMVA Executor class if ROOT::EnableImplicitMT has not been called then by default a serial executor will be created A user can create a thread pool and enable multi-thread excution by calling.
For releasing the thread pool used by TMVA one can do it by calling
TMVA::Config::Instance()::%DisableMT();
Definition at line 59 of file Executor.h.
      
  | 
  inlineexplicit | 
Constructor of TMVA Executor class Explicit specify the number of threads.
In this case if nthreads is > 1 a multi-threaded executor will be created and TMVA will run in MT. If nthreads = 1 instead TMVA will run in sequential mode If nthreads = 0 TMVA will use the default thread pool size
Definition at line 80 of file Executor.h.
      
  | 
  inline | 
Definition at line 128 of file Executor.h.
      
  | 
  inline | 
Definition at line 122 of file Executor.h.
wrap TExecutor::Foreach
Definition at line 117 of file Executor.h.
      
  | 
  inline | 
Definition at line 96 of file Executor.h.
      
  | 
  inline | 
Definition at line 106 of file Executor.h.
      
  | 
  inline | 
Definition at line 146 of file Executor.h.
      
  | 
  inline | 
Wrap TExecutor::Map functions.
Definition at line 140 of file Executor.h.
      
  | 
  inline | 
Wrap TExecutor::MapReduce functions.
Definition at line 154 of file Executor.h.
      
  | 
  inline | 
Definition at line 160 of file Executor.h.
      
  | 
  inline | 
Wrap Reduce function.
Definition at line 168 of file Executor.h.
| std::unique_ptr<ROOT::TThreadExecutor> TMVA::Executor::fMTExecImpl | 
Definition at line 175 of file Executor.h.
| std::unique_ptr<ROOT::TSequentialExecutor> TMVA::Executor::fSeqExecImpl | 
Definition at line 179 of file Executor.h.