: NetworkModel(Model::UpdateAlgo::Full), hostModel_(hmodel)
{
set_maxmin_system(sys);
- loopback_ = NetworkL07Model::createLink("__loopback__", 498000000, 0.000015, SURF_LINK_FATPIPE);
+ loopback_ = NetworkL07Model::createLink("__loopback__", 498000000, 0.000015, s4u::Link::SharingPolicy::FATPIPE);
}
NetworkL07Model::~NetworkL07Model()
if ((action.latency_ <= 0.0) && (action.is_suspended() == 0)) {
action.updateBound();
get_maxmin_system()->update_variable_weight(action.get_variable(), 1.0);
+ action.set_last_update();
}
}
XBT_DEBUG("Action (%p) : remains (%g) updated by %g.", &action, action.get_remains(),
}
kernel::resource::LinkImpl* NetworkL07Model::createLink(const std::string& name, double bandwidth, double latency,
- e_surf_link_sharing_policy_t policy)
+ s4u::Link::SharingPolicy policy)
{
return new LinkL07(this, name, bandwidth, latency, policy);
}
CpuL07::~CpuL07()=default;
LinkL07::LinkL07(NetworkL07Model* model, const std::string& name, double bandwidth, double latency,
- e_surf_link_sharing_policy_t policy)
+ s4u::Link::SharingPolicy policy)
: LinkImpl(model, name, model->get_maxmin_system()->constraint_new(this, bandwidth))
{
bandwidth_.peak = bandwidth;
latency_.peak = latency;
- if (policy == SURF_LINK_FATPIPE)
+ if (policy == s4u::Link::SharingPolicy::FATPIPE)
get_constraint()->unshare();
- s4u::Link::onCreation(this->piface_);
+ s4u::Link::on_creation(this->piface_);
}
kernel::resource::Action* CpuL07::execution_start(double size)
void LinkL07::setBandwidth(double value)
{
bandwidth_.peak = value;
+ LinkImpl::on_bandwidth_change();
+
get_model()->get_maxmin_system()->update_constraint_bound(get_constraint(), bandwidth_.peak * bandwidth_.scale);
}