WRENCH  1.11
Cyberinfrastructure Simulation Workbench
Overview Installation Getting Started WRENCH 101 WRENCH 102
AmdahlParallelModel.h
1 
10 #ifndef WRENCH_AMDAHLPARALLELMODEL_H
11 #define WRENCH_AMDAHLPARALLELMODEL_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 getAlpha();
27 
28  /***********************/
30  /***********************/
31 
32  std::vector<double> getWorkPerThread(double total_work, unsigned long num_threads) override;
33  ~AmdahlParallelModel() override {}
34 
35  /***********************/
37  /***********************/
38 
39  protected:
40 
41  private:
42  friend class ParallelModel;
43 
44  AmdahlParallelModel(double alpha);
45  double alpha; // Fraction of the work that's parallelizable
46  };
47 
48 
49 }
50 
51 #endif //WRENCH_AMDAHLPARALLELMODEL_H
wrench
Definition: Action.cpp:28
wrench::AmdahlParallelModel::getAlpha
double getAlpha()
Get the.
Definition: AmdahlParallelModel.cpp:38
wrench::AmdahlParallelModel::getWorkPerThread
std::vector< double > getWorkPerThread(double total_work, unsigned long num_threads) override
Returns the amount of work each thread much perform.
Definition: AmdahlParallelModel.cpp:48
wrench::ParallelModel
A virtual class (with convenient static methods) to define parallel task performance models.
Definition: ParallelModel.h:23
wrench::AmdahlParallelModel
A class that defines an Amdahl's Law-based parallel task performance model.
Definition: AmdahlParallelModel.h:22