#include "loba_makhoul.h"
#include "loba_makhoul2.h"
#include "loba_makhoul3.h"
+#include "loba_pstar.h"
#include "loba_simple.h"
#include "misc.h"
unsigned lb_maxiter = 0;
unsigned comp_maxiter = 0;
double time_limit = 0;
- int exit_on_convergence = 0;
+ unsigned exit_on_convergence = 0;
bool exit_on_close = true;
// Named parameters lists
loba_makhoul3);
NOL_INSERT("none", "no load-balancing (for testing only)",
process);
+ NOL_INSERT("pstar", "balance with pstar strategy",
+ loba_pstar);
NOL_INSERT("simple", "balance with least loaded neighbor",
loba_simple);
}
const char* opt_helper::descr(const char* str)
{
- std::string& res = descr_str;
- res = str;
- res.resize(DATA_DESCR_WIDTH, '.');
- return res.c_str();
+ descr_str = str;
+ descr_str.push_back(' ');
+ descr_str.resize(DATA_DESCR_WIDTH, '.');
+ return descr_str.c_str();
}
template <typename T>
const char* opt_helper::val_or_string(const T& val, const char* str,
const T& deflt)
{
- std::string& res = val_or_string_str;
if (val != deflt) {
std::ostringstream oss;
oss << val;
- res = oss.str();
+ val_or_string_str = oss.str();
} else {
- res = str;
+ val_or_string_str = str;
}
- return res.c_str();
+ return val_or_string_str.c_str();
}
template <typename T>
}
if (!opt::auto_depl::random_seed)
- opt::auto_depl::random_seed = time(NULL);
+ opt::auto_depl::random_seed = time(nullptr);
return result;
}
std::clog << "\nLogging support:\n"
<< " See SimGrid documentation on:\n"
- << " http://simgrid.gforge.inria.fr/doc/group__XBT__log.html#log_user\n"
+ << " http://simgrid.gforge.inria.fr/simgrid/latest/doc/outcomes_logs.html#log_user\n"
<< " Existing categories are:\n"
<< " simu : root of following categories\n"
<< " main : messages from global infrastructure\n"