A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[mc] Remove redundant 'mc_mode' global variable
[simgrid.git]
/
src
/
surf
/
fair_bottleneck.cpp
diff --git
a/src/surf/fair_bottleneck.cpp
b/src/surf/fair_bottleneck.cpp
index
2affd8d
..
7694c4c
100644
(file)
--- a/
src/surf/fair_bottleneck.cpp
+++ b/
src/surf/fair_bottleneck.cpp
@@
-39,7
+39,7
@@
void bottleneck_solve(lmm_system_t sys)
var_list = &(sys->variable_set);
XBT_DEBUG("Variable set : %d", xbt_swag_size(var_list));
xbt_swag_foreach(_var, var_list) {
var_list = &(sys->variable_set);
XBT_DEBUG("Variable set : %d", xbt_swag_size(var_list));
xbt_swag_foreach(_var, var_list) {
-
var = (lmm_variable_t)_var;
+ var = (lmm_variable_t)_var;
int nb = 0;
var->value = 0.0;
XBT_DEBUG("Handling variable %p", var);
int nb = 0;
var->value = 0.0;
XBT_DEBUG("Handling variable %p", var);
@@
-65,12
+65,12
@@
void bottleneck_solve(lmm_system_t sys)
cnst_list = &(sys->active_constraint_set);
XBT_DEBUG("Active constraints : %d", xbt_swag_size(cnst_list));
xbt_swag_foreach(_cnst, cnst_list) {
cnst_list = &(sys->active_constraint_set);
XBT_DEBUG("Active constraints : %d", xbt_swag_size(cnst_list));
xbt_swag_foreach(_cnst, cnst_list) {
-
cnst = (lmm_constraint_t)_cnst;
+ cnst = (lmm_constraint_t)_cnst;
xbt_swag_insert(cnst, &(sys->saturated_constraint_set));
}
cnst_list = &(sys->saturated_constraint_set);
xbt_swag_foreach(_cnst, cnst_list) {
xbt_swag_insert(cnst, &(sys->saturated_constraint_set));
}
cnst_list = &(sys->saturated_constraint_set);
xbt_swag_foreach(_cnst, cnst_list) {
-
cnst = (lmm_constraint_t)_cnst;
+ cnst = (lmm_constraint_t)_cnst;
cnst->remaining = cnst->bound;
cnst->usage = 0.0;
}
cnst->remaining = cnst->bound;
cnst->usage = 0.0;
}
@@
-91,18
+91,17
@@
void bottleneck_solve(lmm_system_t sys)
cnst = (lmm_constraint_t)_cnst;
int nb = 0;
XBT_DEBUG("Processing cnst %p ", cnst);
cnst = (lmm_constraint_t)_cnst;
int nb = 0;
XBT_DEBUG("Processing cnst %p ", cnst);
- elem_list = &(cnst->element_set);
+ elem_list = &(cnst->e
nabled_e
lement_set);
cnst->usage = 0.0;
xbt_swag_foreach(_elem, elem_list) {
cnst->usage = 0.0;
xbt_swag_foreach(_elem, elem_list) {
- elem = (lmm_element_t)_elem;
- if (elem->variable->weight <= 0)
- break;
+ elem = (lmm_element_t)_elem;
+ xbt_assert(elem->variable->weight > 0);
if ((elem->value > 0)
&& xbt_swag_belongs(elem->variable, var_list))
nb++;
}
XBT_DEBUG("\tThere are %d variables", nb);
if ((elem->value > 0)
&& xbt_swag_belongs(elem->variable, var_list))
nb++;
}
XBT_DEBUG("\tThere are %d variables", nb);
- if (nb > 0 && !cnst->shar
ed
)
+ if (nb > 0 && !cnst->shar
ing_policy
)
nb = 1;
if (!nb) {
cnst->remaining = 0.0;
nb = 1;
if (!nb) {
cnst->remaining = 0.0;
@@
-136,12
+135,11
@@
void bottleneck_solve(lmm_system_t sys)
xbt_swag_foreach_safe(_cnst, _cnst_next, cnst_list) {
cnst = (lmm_constraint_t)_cnst;
XBT_DEBUG("Updating cnst %p ", cnst);
xbt_swag_foreach_safe(_cnst, _cnst_next, cnst_list) {
cnst = (lmm_constraint_t)_cnst;
XBT_DEBUG("Updating cnst %p ", cnst);
- elem_list = &(cnst->element_set);
+ elem_list = &(cnst->e
nabled_e
lement_set);
xbt_swag_foreach(_elem, elem_list) {
elem = (lmm_element_t)_elem;
xbt_swag_foreach(_elem, elem_list) {
elem = (lmm_element_t)_elem;
- if (elem->variable->weight <= 0)
- break;
- if (cnst->shared) {
+ xbt_assert(elem->variable->weight > 0);
+ if (cnst->sharing_policy) {
XBT_DEBUG("\tUpdate constraint %p (%g) with variable %p by %g",
cnst, cnst->remaining, elem->variable,
elem->variable->mu);
XBT_DEBUG("\tUpdate constraint %p (%g) with variable %p by %g",
cnst, cnst->remaining, elem->variable,
elem->variable->mu);
@@
-154,7
+152,7
@@
void bottleneck_solve(lmm_system_t sys)
cnst->usage = MIN(cnst->usage, elem->value * elem->variable->mu);
}
}
cnst->usage = MIN(cnst->usage, elem->value * elem->variable->mu);
}
}
- if (!cnst->shar
ed
) {
+ if (!cnst->shar
ing_policy
) {
XBT_DEBUG("\tUpdate constraint %p (%g) by %g",
cnst, cnst->remaining, cnst->usage);
XBT_DEBUG("\tUpdate constraint %p (%g) by %g",
cnst, cnst->remaining, cnst->usage);