}
}
-static void _sg_cfg_cb__surf_network_crosstraffic(const char *name)
-{
- sg_network_crosstraffic = xbt_cfg_get_boolean(name);
-}
-
/* build description line with possible values */
static void describe_model(char *result,int resultsize,
const s_surf_model_description_t model_description[],
"Synchronization mode to use when running contexts in parallel (either futex, posix or busy_wait)");
#endif
- xbt_cfg_register_boolean("network/crosstraffic", "yes", _sg_cfg_cb__surf_network_crosstraffic,
- "Activate the interferences between uploads and downloads for fluid max-min models (LV08, CM02)");
-
// For smpi/bw-factor and smpi/lat-factor
// SMPI model can be used without enable_smpi, so keep this out of the ifdef.
xbt_cfg_register_string("smpi/bw-factor",
double sg_bandwidth_factor = 1.0; /* default value; can be set by model or from command line */
double sg_weight_S_parameter = 0.0; /* default value; can be set by model or from command line */
-int sg_network_crosstraffic = 0;
-
/************************************************************************/
/* New model based on optimizations discussed during Pedro Velho's thesis*/
/************************************************************************/
if (link->is_off())
failed = 1;
- if (sg_network_crosstraffic == 1) {
+ if (cfg_crosstraffic == 1) {
dst->routeTo(src, back_route, nullptr);
for (auto const& link : back_route)
if (link->is_off())
for (auto const& link : route)
get_maxmin_system()->expand(link->get_constraint(), action->get_variable(), 1.0);
- if (not back_route.empty()) { // sg_network_crosstraffic was activated
+ if (not back_route.empty()) { // cfg_crosstraffic was activated
XBT_DEBUG("Crosstraffic active adding backward flow using 5%%");
for (auto const& link : back_route)
get_maxmin_system()->expand(link->get_constraint(), action->get_variable(), .05);
namespace simgrid {
namespace surf {
- /** Value of the command-line option 'network/TCP-gamma' -- see \ref options_model_network_gamma */
+ /** @brief Command-line option 'network/TCP-gamma' -- see \ref options_model_network_gamma */
simgrid::config::Flag<double> NetworkModel::cfg_tcp_gamma(
{"network/TCP-gamma", "network/TCP_gamma"},
"Size of the biggest TCP window (cat /proc/sys/net/ipv4/tcp_[rw]mem for recv/send window; "
"Use the last given value, which is the max window size)",
4194304.0);
+ /** @brief Command-line option 'network/crosstraffic' -- see \ref options_model_network_crosstraffic */
+ simgrid::config::Flag<bool> NetworkModel::cfg_crosstraffic(
+ "network/crosstraffic",
+ "Activate the interferences between uploads and downloads for fluid max-min models (LV08, CM02)", "yes");
+
NetworkModel::~NetworkModel() = default;
double NetworkModel::latencyFactor(double /*size*/) {
class NetworkModel : public kernel::resource::Model {
public:
static simgrid::config::Flag<double> cfg_tcp_gamma;
+ static simgrid::config::Flag<bool> cfg_crosstraffic;
explicit NetworkModel(kernel::resource::Model::UpdateAlgo algo) : Model(algo) {}
~NetworkModel() override;
extern XBT_PRIVATE double sg_latency_factor;
extern XBT_PRIVATE double sg_bandwidth_factor;
extern XBT_PRIVATE double sg_weight_S_parameter;
-extern XBT_PRIVATE int sg_network_crosstraffic;
extern XBT_PRIVATE std::vector<std::string> surf_path;
extern XBT_PRIVATE std::unordered_map<std::string, tmgr_trace_t> traces_set_list;
extern XBT_PRIVATE std::set<std::string> watched_hosts;