#include "network_interface.hpp"
#include "simgrid/sg_config.hpp"
+#include "src/instr/instr_private.hpp" // TRACE_is_enabled(). FIXME: remove by subscribing tracing to the surf signals
#include "src/surf/surf_interface.hpp"
+#include "surf/surf.hpp"
#ifndef NETWORK_INTERFACE_CPP_
#define NETWORK_INTERFACE_CPP_
/** @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"},
+ "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);
s4u::Link::onStateChange(this->piface_);
}
}
+
+void LinkImpl::on_bandwidth_change()
+{
+ if (TRACE_categorized() || TRACE_uncategorized() || TRACE_platform())
+ instr::Container::by_name(get_cname())
+ ->get_variable("bandwidth")
+ ->set_event(surf_get_clock(), sg_bandwidth_factor * bandwidth_.scale * bandwidth_.peak);
+ s4u::Link::on_bandwidth_change(this->piface_);
+}
+
void LinkImpl::setStateTrace(tmgr_trace_t trace)
{
xbt_assert(stateEvent_ == nullptr, "Cannot set a second state trace to Link %s", get_cname());