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
Some values were close to 0 instead of equal to 0, which caused some bad behaviors...
[simgrid.git]
/
src
/
surf
/
maxmin.c
diff --git
a/src/surf/maxmin.c
b/src/surf/maxmin.c
index
0c338e3
..
b266a3d
100644
(file)
--- a/
src/surf/maxmin.c
+++ b/
src/surf/maxmin.c
@@
-86,7
+86,6
@@
static void lmm_var_free(lmm_system_t sys, lmm_variable_t var)
{
lmm_variable_disable(sys, var);
- memset(var->cnsts,0,var->cnsts_size*sizeof(s_lmm_element_t));
free(var->cnsts);
xbt_mallocator_release(sys->variable_mallocator, var);
}
@@
-132,7
+131,7
@@
void lmm_constraint_free(lmm_system_t sys, lmm_constraint_t cnst)
}
static void* lmm_variable_mallocator_new_f(void) {
- return xbt_new
0
(s_lmm_variable_t, 1);
+ return xbt_new(s_lmm_variable_t, 1);
}
static void lmm_variable_mallocator_free_f(void *var) {
@@
-466,8
+465,8
@@
void lmm_solve(lmm_system_t sys)
elem = &var->cnsts[i];
cnst = elem->constraint;
if(cnst->shared) {
-
cnst->remaining -= elem->value * var->value
;
-
cnst->usage -= elem->value / var->weight
;
+
double_update(&(cnst->remaining), elem->value * var->value)
;
+
double_update(&(cnst->usage), elem->value / var->weight)
;
}
make_elem_inactive(elem);
}