xbt_dict_t gap_lookup = nullptr;
-static int factor_cmp(const void *pa, const void *pb)
-{
- return (((s_smpi_factor_t*)pa)->factor > ((s_smpi_factor_t*)pb)->factor) ? 1 :
- (((s_smpi_factor_t*)pa)->factor < ((s_smpi_factor_t*)pb)->factor) ? -1 : 0;
-}
-
-#include "src/surf/xml/platf.hpp" // FIXME: move that back to the parsing area
-
/*********
* Model *
*********/
namespace simgrid {
namespace surf {
- NetworkSmpiModel::NetworkSmpiModel()
- : NetworkCm02Model() {
- haveGap_=true;
+ NetworkSmpiModel::NetworkSmpiModel() : NetworkCm02Model()
+ {
+ haveGap_ = true;
}
- NetworkSmpiModel::~NetworkSmpiModel(){
+ NetworkSmpiModel::~NetworkSmpiModel()
+ {
xbt_dict_free(&gap_lookup);
}
- void NetworkSmpiModel::gapAppend(double size, Link* link, NetworkAction *act)
+ void NetworkSmpiModel::gapAppend(double size, LinkImpl* link, NetworkAction* act)
{
- const char *src = link->getName();
+ const char* src = link->cname();
xbt_fifo_t fifo;
NetworkCm02Action *action= static_cast<NetworkCm02Action*>(act);
void NetworkSmpiModel::gapRemove(Action *lmm_action)
{
- xbt_fifo_t fifo;
- size_t size;
NetworkCm02Action *action = static_cast<NetworkCm02Action*>(lmm_action);
- if (sg_sender_gap > 0.0 && action->senderLinkName_
- && action->senderFifoItem_) {
- fifo =
- (xbt_fifo_t) xbt_dict_get_or_null(gap_lookup,
- action->senderLinkName_);
+ if (sg_sender_gap > 0.0 && action->senderLinkName_ && action->senderFifoItem_) {
+ xbt_fifo_t fifo = (xbt_fifo_t)xbt_dict_get_or_null(gap_lookup, action->senderLinkName_);
xbt_fifo_remove_item(fifo, action->senderFifoItem_);
- size = xbt_fifo_size(fifo);
+ size_t size = xbt_fifo_size(fifo);
if (size == 0) {
xbt_fifo_free(fifo);
xbt_dict_remove(gap_lookup, action->senderLinkName_);
if (smpi_bw_factor.empty())
smpi_bw_factor = parse_factor(xbt_cfg_get_string("smpi/bw-factor"));
- double current=1.0;
- for (auto fact: smpi_bw_factor) {
+ double current = 1.0;
+ for (const auto& fact : smpi_bw_factor) {
if (size <= fact.factor) {
XBT_DEBUG("%f <= %zu return %f", size, fact.factor, current);
return current;
- }else
- current=fact.values.front();
+ } else
+ current = fact.values.front();
}
XBT_DEBUG("%f > %zu return %f", size, smpi_bw_factor.back().factor, current);
smpi_lat_factor = parse_factor(xbt_cfg_get_string("smpi/lat-factor"));
double current=1.0;
- for (auto fact: smpi_lat_factor) {
+ for (const auto& fact : smpi_lat_factor) {
if (size <= fact.factor) {
XBT_DEBUG("%f <= %zu return %f", size, fact.factor, current);
return current;