- int nhosts = MSG_get_host_number();
- m_host_t* host_list = MSG_get_host_table();
- VERB1("Got %d hosts.", nhosts);
+ using std::placeholders::_1;
+ using std::placeholders::_2;
+
+ xbt_dynar_t host_dynar = MSG_hosts_as_dynar();
+ int nhosts = xbt_dynar_length(host_dynar);
+ msg_host_t* host_list = static_cast<msg_host_t*>(xbt_dynar_to_array(host_dynar));
+ // only sort hosts for automatically created deployment
+ if (opt::auto_depl::enabled)
+ std::sort(host_list, host_list + nhosts,
+ std::bind(std::less<int>(),
+ std::bind(strcmp,
+ std::bind(MSG_host_get_name, _1),
+ std::bind(MSG_host_get_name, _2)), 0));
+ hosts.assign(host_list, host_list + nhosts);
+ xbt_free(host_list);
+
+ e_xbt_log_priority_t logp = xbt_log_priority_verbose;
+ if (!LOG_ISENABLED(logp))
+ return;
+ XBT_LOG(logp, "Got %zu hosts.", hosts.size());