|
SimGrid
3.18
Versatile Simulation of Distributed Systems
|
LMM variable.
When something prevents us from enabling a variable, we "stage" the weight that we would have like to set, so that as soon as possible we enable the variable with desired weight
#include <maxmin.hpp>
Public Member Functions | |
| void | initialize (simgrid::surf::Action *id_value, double sharing_weight_value, double bound_value, int number_of_constraints, unsigned visited_value) |
| double | get_value () const |
| Get the value of the variable after the last lmm solve. More... | |
| double | get_bound () const |
| Get the maximum value of the variable (-1.0 if no maximum value) More... | |
| void | set_concurrency_share (short int value) |
| Set the concurrent share of the variable. More... | |
| lmm_constraint_t | get_constraint (unsigned num) const |
| Get the numth constraint associated to the variable. More... | |
| double | get_constraint_weight (unsigned num) const |
| Get the weigth of the numth constraint associated to the variable. More... | |
| int | get_number_of_constraint () const |
| Get the number of constraint associated to a variable. More... | |
| simgrid::surf::Action * | get_id () const |
| Get the data associated to a variable. More... | |
| double | get_weight () const |
| Get the weight of a variable. More... | |
| int | get_min_concurrency_slack () const |
| Measure the minimum concurrency slack across all constraints where the given var is involved. More... | |
| int | can_enable () const |
| Check if a variable can be enabled Make sure to set staged_weight before, if your intent is only to check concurrency. More... | |
Public Attributes | |
| boost::intrusive::list_member_hook | variable_set_hook |
| boost::intrusive::list_member_hook | saturated_variable_set_hook |
| std::vector< Element > | cnsts |
| double | sharing_weight |
| double | staged_weight |
| double | bound |
| double | value |
| short int | concurrency_share |
| simgrid::surf::Action * | id |
| int | id_int |
| unsigned | visited |
| double | mu |
| double | new_mu |
| double(* | func_f )(const Variable &var, double x) |
| double(* | func_fp )(const Variable &var, double x) |
| double(* | func_fpi )(const Variable &var, double x) |
| void simgrid::kernel::lmm::Variable::initialize | ( | simgrid::surf::Action * | id_value, |
| double | sharing_weight_value, | ||
| double | bound_value, | ||
| int | number_of_constraints, | ||
| unsigned | visited_value | ||
| ) |
|
inline |
Get the value of the variable after the last lmm solve.
|
inline |
Get the maximum value of the variable (-1.0 if no maximum value)
|
inline |
Set the concurrent share of the variable.
| value | The new concurrency share |
|
inline |
Get the numth constraint associated to the variable.
| num | The rank of constraint we want to get |
|
inline |
Get the weigth of the numth constraint associated to the variable.
| num | The rank of constraint we want to get |
|
inline |
Get the number of constraint associated to a variable.
|
inline |
Get the data associated to a variable.
|
inline |
Get the weight of a variable.
| int simgrid::kernel::lmm::Variable::get_min_concurrency_slack | ( | ) | const |
Measure the minimum concurrency slack across all constraints where the given var is involved.
|
inline |
Check if a variable can be enabled Make sure to set staged_weight before, if your intent is only to check concurrency.
| boost::intrusive::list_member_hook simgrid::kernel::lmm::Variable::variable_set_hook |
| boost::intrusive::list_member_hook simgrid::kernel::lmm::Variable::saturated_variable_set_hook |
| std::vector<Element> simgrid::kernel::lmm::Variable::cnsts |
| double simgrid::kernel::lmm::Variable::sharing_weight |
| double simgrid::kernel::lmm::Variable::staged_weight |
| double simgrid::kernel::lmm::Variable::bound |
| double simgrid::kernel::lmm::Variable::value |
| short int simgrid::kernel::lmm::Variable::concurrency_share |
| simgrid::surf::Action* simgrid::kernel::lmm::Variable::id |
| int simgrid::kernel::lmm::Variable::id_int |
| unsigned simgrid::kernel::lmm::Variable::visited |
| double simgrid::kernel::lmm::Variable::mu |
| double simgrid::kernel::lmm::Variable::new_mu |
| double(* simgrid::kernel::lmm::Variable::func_f) (const Variable &var, double x) |
| double(* simgrid::kernel::lmm::Variable::func_fp) (const Variable &var, double x) |
| double(* simgrid::kernel::lmm::Variable::func_fpi) (const Variable &var, double x) |