10 #ifndef WRENCH_PARALLELMODEL_H
11 #define WRENCH_PARALLELMODEL_H
27 static std::shared_ptr<ParallelModel>
AMDAHL(
double alpha);
29 static std::shared_ptr<ParallelModel>
CUSTOM(std::function<std::vector<double>(
double,
long)> lambda);
44 virtual std::vector<double> getWorkPerThread(
double total_work,
unsigned long num_threads) = 0;
57 #endif //WRENCH_PARALLELMODEL_H
static std::shared_ptr< ParallelModel > AMDAHL(double alpha)
Create an instance of an "Amdahl" parallel model.
Definition: ParallelModel.cpp:31
static std::shared_ptr< ParallelModel > CUSTOM(std::function< std::vector< double >(double, long)> lambda)
Create an instance of a "Custom" parallel model.
Definition: ParallelModel.cpp:52
A virtual class (with convenient static methods) to define parallel task performance models.
Definition: ParallelModel.h:23
static std::shared_ptr< ParallelModel > CONSTANTEFFICIENCY(double efficiency)
Create an instance of a "Constant Efficiency" parallel model.
Definition: ParallelModel.cpp:41