ConstantEfficiencyParallelModel.h
1 
10 #ifndef WRENCH_CONSTANTEFFICIENCYPARALLELMODEL_H
11 #define WRENCH_CONSTANTEFFICIENCYPARALLELMODEL_H
12 
13 #include "wrench/workflow/parallel_model/ParallelModel.h"
14 
15 #include <vector>
16 
17 namespace wrench {
18 
23 
24  public:
25 
26  double getEfficiency();
27 
28  /***********************/
30  /***********************/
31 
32  std::vector<double> getWorkPerThread(double total_work, unsigned long num_threads) override;
33  ~ConstantEfficiencyParallelModel() override {}
34 
35  /***********************/
37  /***********************/
38 
39  private:
40  friend class ParallelModel;
41 
42  ConstantEfficiencyParallelModel(double efficiency);
43  double efficiency; // Parallel efficiency
44  };
45 
46 
47 }
48 
49 #endif //WRENCH_CONSTANTEFFICIENCYPARALLELMODEL_H
Definition: Alarm.cpp:20
A virtual class (with convenient static methods) to define parallel task performance models.
Definition: ParallelModel.h:23
A class the implemens a constant-efficiency parallel task performance model.
Definition: ConstantEfficiencyParallelModel.h:22
double getEfficiency()
Get the model's parallel efficiency.
Definition: ConstantEfficiencyParallelModel.cpp:35