SkePU
1.2
|
Classes | |
struct | skepu::ExtraData |
Any extra information that User want to pass to the function wrapper for implementations can be specified here.... More... | |
struct | skepu::Point |
struct | skepu::Node |
class | skepu::Trainer |
end Node class... More... | |
struct | skepu::Tuner< StructType, type, StructType2 > |
Tuner class: generic definition.... Multiple class specializations are defined for this class, one for each skeleton type. It allows to avoid possible compiler errors considering differences in function arguments for different skeleton types. More... | |
struct | skepu::Tuner< StructType, MAPREDUCE, StructType2 > |
Tuner class specilization for MapReduce skeleton. More... | |
struct | skepu::Tuner< StructType, MAP, StructType > |
Tuner class specilization for Map skeleton. More... | |
struct | skepu::Tuner< StructType, REDUCE, StructType > |
Tuner class specilization for Reduce skeleton. More... | |
struct | skepu::Tuner< StructType, MAPARRAY, StructType > |
Tuner class specilization for MapArray skeleton. More... | |
struct | skepu::Tuner< StructType, MAPOVERLAP, StructType > |
Tuner class specilization for MapOverlap skeleton. More... | |
class | skepu::ExecPlan |
A class that describes an execution plan. More... | |
class | skepu::TuneData< Tx, Ty > |
A class that can be used to collect tuning data. More... | |
Functions | |
std::ostream & | skepu::operator<< (std::ostream &os, ExecPlanNew< 1 > &plan) |
std::ostream & | skepu::operator<< (std::ostream &os, ExecPlanNew< 2 > &plan) |
template<typename StructType , typename StructType2 > | |
void | skepu::cpu_tune_wrapper_map (void *arg) |
Do training execution for a single performance context for Map skeleton and sequential CPU implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cpu_tune_wrapper_reduce (void *arg) |
Do training execution for a single performance context for Reduce skeleton and sequential CPU implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cpu_tune_wrapper_mapoverlap (void *arg) |
Do training execution for a single performance context for MapOverlap skeleton and sequential CPU implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cpu_tune_wrapper_maparray (void *arg) |
Do training execution for a single performance context for MapArray skeleton and sequential CPU implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cpu_tune_wrapper_mapreduce (void *arg) |
Do training execution for a single performance context for MapReduce skeleton and sequential CPU implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::omp_tune_wrapper_map (void *arg) |
the following section contains function that can train OpenMP implementations. Only enabled when OpenMP is enabled in SkePU library More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::omp_tune_wrapper_reduce (void *arg) |
Do training execution for a single performance context for Reduce skeleton and parallel OpenMP implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::omp_tune_wrapper_mapoverlap (void *arg) |
Do training execution for a single performance context for MapOverlap skeleton and parallel OpenMP implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::omp_tune_wrapper_maparray (void *arg) |
Do training execution for a single performance context for MapArray skeleton and parallel OpenMP implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::omp_tune_wrapper_mapreduce (void *arg) |
Do training execution for a single performance context for MapReduce skeleton and parallel OpenMP implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cuda_tune_wrapper_map (void *arg) |
the following functions train for CUDA implementations for different skeletons... More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cuda_tune_wrapper_reduce (void *arg) |
Do training execution for a single performance context for Reduce skeleton and CUDA implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cuda_tune_wrapper_mapoverlap (void *arg) |
Do training execution for a single performance context for MapOverlap skeleton and CUDA implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cuda_tune_wrapper_maparray (void *arg) |
Do training execution for a single performance context for MapArray skeleton and CUDA implementation. More... | |
template<typename StructType , typename StructType2 > | |
void | skepu::cuda_tune_wrapper_mapreduce (void *arg) |
Do training execution for a single performance context for MapReduce skeleton and CUDA implementation. More... | |
void | skepu::createDefaultConfiguration (BackEndParams &bp) |
A helper function that creates the default configuration. More... | |
bool | skepu::loadExecPlan (std::string id, ExecPlan &plan) |
Loads an execution plan for a file into the structure passes as argument. More... | |
bool | skepu::storeExecPlan (std::string id, const ExecPlan &plan) |
Stores an execution plan for the structure passed as argument to a file. More... | |
bool | skepu::loadExecPlanArray (std::string id, ExecPlan *planArray) |
Loads execution plans for a file into the structure passes as argument. More... | |
bool | skepu::storeExecPlanArray (std::string id, const ExecPlan *planArray, unsigned int nImpls) |
Stores execution plans for the structure passed as argument to a file. More... | |
Functionality which helps with (auto) tuning of the library.
void skepu::cpu_tune_wrapper_map | ( | void * | arg | ) |
Do training execution for a single performance context for Map skeleton and sequential CPU implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::Map< MapFunc >::CPU(), skepu::Environment< T >::getInstance(), and skepu::Vector< T >::resize().
void skepu::cpu_tune_wrapper_maparray | ( | void * | arg | ) |
Do training execution for a single performance context for MapArray skeleton and sequential CPU implementation.
arg | a structure that includes information about performance context to train. |
TODO: fix it in future
to allow user control e.g. setting constant value etc..
References skepu::MapArray< MapArrayFunc >::CPU(), skepu::Environment< T >::getInstance(), and skepu::Vector< T >::resize().
void skepu::cpu_tune_wrapper_mapoverlap | ( | void * | arg | ) |
Do training execution for a single performance context for MapOverlap skeleton and sequential CPU implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::MapOverlap< MapOverlapFunc >::CPU(), skepu::Environment< T >::getInstance(), and skepu::Vector< T >::resize().
void skepu::cpu_tune_wrapper_mapreduce | ( | void * | arg | ) |
Do training execution for a single performance context for MapReduce skeleton and sequential CPU implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::MapReduce< MapFunc, ReduceFunc >::CPU(), skepu::Environment< T >::getInstance(), and skepu::Vector< T >::resize().
void skepu::cpu_tune_wrapper_reduce | ( | void * | arg | ) |
Do training execution for a single performance context for Reduce skeleton and sequential CPU implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::Reduce< ReduceFuncRowWise, ReduceFuncColWise >::CPU(), skepu::Environment< T >::getInstance(), and skepu::Vector< T >::resize().
void skepu::createDefaultConfiguration | ( | BackEndParams & | bp | ) |
A helper function that creates the default configuration.
bp | a structure that is written with default settings enabled in SkePU |
References skepu::Environment< T >::getInstance().
Referenced by skepu::Tuner< StructType, MAPREDUCE, StructType2 >::operator()(), skepu::Tuner< StructType, MAP, StructType >::operator()(), skepu::Tuner< StructType, REDUCE, StructType >::operator()(), skepu::Tuner< StructType, MAPARRAY, StructType >::operator()(), and skepu::Tuner< StructType, MAPOVERLAP, StructType >::operator()().
void skepu::cuda_tune_wrapper_map | ( | void * | arg | ) |
the following functions train for CUDA implementations for different skeletons...
Do training execution for a single performance context for Map skeleton and CUDA implementation
arg | a structure that includes information about performance context to train. |
measuring communication cost...
transfer all operands to the memory...
to allow user control e.g. setting constant value etc..
References skepu::Map< MapFunc >::CU(), skepu::Environment< T >::getInstance(), skepu::Vector< T >::resize(), and skepu::Vector< T >::updateDevice_CU().
void skepu::cuda_tune_wrapper_maparray | ( | void * | arg | ) |
Do training execution for a single performance context for MapArray skeleton and CUDA implementation.
arg | a structure that includes information about performance context to train. |
measuring communication cost...
transfer all operand to the memory...
to allow user control e.g. setting constant value etc..
References skepu::MapArray< MapArrayFunc >::CU(), skepu::Environment< T >::getInstance(), skepu::Vector< T >::resize(), and skepu::Vector< T >::updateDevice_CU().
void skepu::cuda_tune_wrapper_mapoverlap | ( | void * | arg | ) |
Do training execution for a single performance context for MapOverlap skeleton and CUDA implementation.
arg | a structure that includes information about performance context to train. |
measuring communication cost...
transfer all operand to the memory...
to allow user control e.g. setting constant value etc..
References skepu::MapOverlap< MapOverlapFunc >::CU(), skepu::Environment< T >::getInstance(), skepu::Vector< T >::resize(), and skepu::Vector< T >::updateDevice_CU().
void skepu::cuda_tune_wrapper_mapreduce | ( | void * | arg | ) |
Do training execution for a single performance context for MapReduce skeleton and CUDA implementation.
arg | a structure that includes information about performance context to train. |
measuring communication cost...
transfer all operand to the memory...
to allow user control e.g. setting constant value etc..
References skepu::MapReduce< MapFunc, ReduceFunc >::CU(), skepu::Environment< T >::getInstance(), skepu::Vector< T >::resize(), and skepu::Vector< T >::updateDevice_CU().
void skepu::cuda_tune_wrapper_reduce | ( | void * | arg | ) |
Do training execution for a single performance context for Reduce skeleton and CUDA implementation.
arg | a structure that includes information about performance context to train. |
measuring communication cost...
transfer all operand to the memory...
to allow user control e.g. setting constant value etc..
References skepu::Reduce< ReduceFuncRowWise, ReduceFuncColWise >::CU(), skepu::Environment< T >::getInstance(), skepu::Vector< T >::resize(), and skepu::Vector< T >::updateDevice_CU().
bool skepu::loadExecPlan | ( | std::string | id, |
ExecPlan & | plan | ||
) |
Loads an execution plan for a file into the structure passes as argument.
This functionality only for non-windows platform
id | The identifier for skeletonlet being tuned (skeleton type + user function). It defines the filename. |
plan | The execution plan where plan is loaded. |
References skepu::ExecPlan::calibrated, and skepu::trimSpaces().
Referenced by skepu::Tuner< StructType, MAPREDUCE, StructType2 >::operator()(), skepu::Tuner< StructType, MAP, StructType >::operator()(), skepu::Tuner< StructType, REDUCE, StructType >::operator()(), skepu::Tuner< StructType, MAPARRAY, StructType >::operator()(), and skepu::Tuner< StructType, MAPOVERLAP, StructType >::operator()().
bool skepu::loadExecPlanArray | ( | std::string | id, |
ExecPlan * | planArray | ||
) |
Loads execution plans for a file into the structure passes as argument.
id | The identifier for skeletonlet being tuned (skeleton type + user function). It defines the filename. |
planArray | The execution plan array where plans are loaded. |
References skepu::ExecPlan::calibrated, and skepu::trimSpaces().
Referenced by skepu::Tuner< StructType, MAPREDUCE, StructType2 >::operator()(), skepu::Tuner< StructType, MAP, StructType >::operator()(), skepu::Tuner< StructType, REDUCE, StructType >::operator()(), skepu::Tuner< StructType, MAPARRAY, StructType >::operator()(), and skepu::Tuner< StructType, MAPOVERLAP, StructType >::operator()().
void skepu::omp_tune_wrapper_map | ( | void * | arg | ) |
the following section contains function that can train OpenMP implementations. Only enabled when OpenMP is enabled in SkePU library
Do training execution for a single performance context for Map skeleton and parallel OpenMP implementation
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::Environment< T >::getInstance(), skepu::Map< MapFunc >::OMP(), and skepu::Vector< T >::resize().
void skepu::omp_tune_wrapper_maparray | ( | void * | arg | ) |
Do training execution for a single performance context for MapArray skeleton and parallel OpenMP implementation.
arg | a structure that includes information about performance context to train. |
TODO: fix it in future
to allow user control e.g. setting constant value etc..
References skepu::Environment< T >::getInstance(), skepu::MapArray< MapArrayFunc >::OMP(), and skepu::Vector< T >::resize().
void skepu::omp_tune_wrapper_mapoverlap | ( | void * | arg | ) |
Do training execution for a single performance context for MapOverlap skeleton and parallel OpenMP implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::Environment< T >::getInstance(), skepu::MapOverlap< MapOverlapFunc >::OMP(), and skepu::Vector< T >::resize().
void skepu::omp_tune_wrapper_mapreduce | ( | void * | arg | ) |
Do training execution for a single performance context for MapReduce skeleton and parallel OpenMP implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::Environment< T >::getInstance(), skepu::MapReduce< MapFunc, ReduceFunc >::OMP(), and skepu::Vector< T >::resize().
void skepu::omp_tune_wrapper_reduce | ( | void * | arg | ) |
Do training execution for a single performance context for Reduce skeleton and parallel OpenMP implementation.
arg | a structure that includes information about performance context to train. |
to allow user control e.g. setting constant value etc..
References skepu::Environment< T >::getInstance(), skepu::Reduce< ReduceFuncRowWise, ReduceFuncColWise >::OMP(), and skepu::Vector< T >::resize().
std::ostream& skepu::operator<< | ( | std::ostream & | os, |
ExecPlanNew< 1 > & | plan | ||
) |
The helper method that can print the ExecPlanNew<1> objects
std::ostream& skepu::operator<< | ( | std::ostream & | os, |
ExecPlanNew< 2 > & | plan | ||
) |
The helper method that can print the ExecPlanNew<2> objects
bool skepu::storeExecPlan | ( | std::string | id, |
const ExecPlan & | plan | ||
) |
Stores an execution plan for the structure passed as argument to a file.
id | The identifier for skeletonlet being tuned (skeleton type + user function). It defines the filename. |
planArray | The execution plan from where plan is stored. |
Referenced by skepu::Tuner< StructType, MAPREDUCE, StructType2 >::operator()(), skepu::Tuner< StructType, MAP, StructType >::operator()(), skepu::Tuner< StructType, REDUCE, StructType >::operator()(), skepu::Tuner< StructType, MAPARRAY, StructType >::operator()(), and skepu::Tuner< StructType, MAPOVERLAP, StructType >::operator()().
bool skepu::storeExecPlanArray | ( | std::string | id, |
const ExecPlan * | planArray, | ||
unsigned int | nImpls | ||
) |
Stores execution plans for the structure passed as argument to a file.
id | The identifier for skeletonlet being tuned (skeleton type + user function). It defines the filename. |
planArray | The execution plan array from where plans are stored. |
Referenced by skepu::Tuner< StructType, MAPREDUCE, StructType2 >::operator()(), skepu::Tuner< StructType, MAP, StructType >::operator()(), skepu::Tuner< StructType, REDUCE, StructType >::operator()(), skepu::Tuner< StructType, MAPARRAY, StructType >::operator()(), and skepu::Tuner< StructType, MAPOVERLAP, StructType >::operator()().