/* Update the vm location */
/* precopy migration makes the VM temporally paused */
- xbt_assert(vm_->getState() == SURF_VM_STATE_SUSPENDED);
+ xbt_assert(vm_->get_state() == s4u::VirtualMachine::state::SUSPENDED);
/* Update the vm location and resume it */
- vm_->setPm(dst_pm_);
+ vm_->set_pm(dst_pm_);
vm_->resume();
// Now the VM is running on the new host (the migration is completed) (even if the SRC crash)
- vm_->getImpl()->isMigrating = false;
+ vm_->get_impl()->is_migrating_ = false;
XBT_DEBUG("VM(%s) moved from PM(%s) to PM(%s)", vm_->get_cname(), src_pm_->get_cname(), dst_pm_->get_cname());
if (TRACE_vm_is_enabled()) {
{
XBT_DEBUG("mig: tx_start");
- double host_speed = vm_->getPm()->getSpeed();
- const sg_size_t ramsize = vm_->getRamsize();
+ double host_speed = vm_->get_pm()->getSpeed();
+ const sg_size_t ramsize = vm_->get_ramsize();
const double dp_rate =
host_speed ? (sg_vm_get_migration_speed(vm_) * sg_vm_get_dirty_page_intensity(vm_)) / host_speed : 1;
const sg_size_t dp_cap = sg_vm_get_working_set_memory(vm_);
static void onVirtualMachineShutdown(simgrid::s4u::VirtualMachine& vm)
{
- if (vm.getImpl()->isMigrating) {
+ if (vm.get_impl()->is_migrating_) {
vm.extension<simgrid::vm::VmMigrationExt>()->rx_->kill();
vm.extension<simgrid::vm::VmMigrationExt>()->tx_->kill();
vm.extension<simgrid::vm::VmMigrationExt>()->issuer_->kill();
- vm.getImpl()->isMigrating = false;
+ vm.get_impl()->is_migrating_ = false;
}
}
sg_vm_t vm = new simgrid::s4u::VirtualMachine(name, pm, coreAmount, static_cast<sg_size_t>(ramsize) * 1024 * 1024);
sg_vm_set_dirty_page_intensity(vm, dp_intensity / 100.0);
- sg_vm_set_working_set_memory(vm, vm->getRamsize() * 0.9); // assume working set memory is 90% of ramsize
+ sg_vm_set_working_set_memory(vm, vm->get_ramsize() * 0.9); // assume working set memory is 90% of ramsize
sg_vm_set_migration_speed(vm, mig_netspeed * 1024 * 1024.0);
XBT_DEBUG("migspeed : %f intensity mem : %d", mig_netspeed * 1024 * 1024.0, dp_intensity);
int sg_vm_is_migrating(simgrid::s4u::VirtualMachine* vm)
{
- return vm->getImpl()->isMigrating;
+ return vm->get_impl()->is_migrating_;
}
void sg_vm_migrate(simgrid::s4u::VirtualMachine* vm, simgrid::s4u::Host* dst_pm)
{
- simgrid::s4u::Host* src_pm = vm->getPm();
+ simgrid::s4u::Host* src_pm = vm->get_pm();
- if (src_pm->isOff())
+ if (src_pm->is_off())
THROWF(vm_error, 0, "Cannot migrate VM '%s' from host '%s', which is offline.", vm->get_cname(),
src_pm->get_cname());
- if (dst_pm->isOff())
+ if (dst_pm->is_off())
THROWF(vm_error, 0, "Cannot migrate VM '%s' to host '%s', which is offline.", vm->get_cname(), dst_pm->get_cname());
- if (vm->getState() != SURF_VM_STATE_RUNNING)
+ if (vm->get_state() != simgrid::s4u::VirtualMachine::state::RUNNING)
THROWF(vm_error, 0, "Cannot migrate VM '%s' that is not running yet.", vm->get_cname());
- if (vm->getImpl()->isMigrating)
+ if (vm->get_impl()->is_migrating_)
THROWF(vm_error, 0, "Cannot migrate VM '%s' that is already migrating.", vm->get_cname());
- vm->getImpl()->isMigrating = true;
+ vm->get_impl()->is_migrating_ = true;
std::string rx_name =
std::string("__pr_mig_rx:") + vm->get_cname() + "(" + src_pm->get_cname() + "-" + dst_pm->get_cname() + ")";
/* wait until the migration have finished or on error has occurred */
XBT_DEBUG("wait for reception of the final ACK (i.e. migration has been correctly performed");
- simgrid::s4u::MailboxPtr mbox_ctl = simgrid::s4u::Mailbox::byName(
+ simgrid::s4u::MailboxPtr mbox_ctl = simgrid::s4u::Mailbox::by_name(
std::string("__mbox_mig_ctl:") + vm->get_cname() + "(" + src_pm->get_cname() + "-" + dst_pm->get_cname() + ")");
delete static_cast<std::string*>(mbox_ctl->get());
tx->join();
rx->join();
- vm->getImpl()->isMigrating = false;
+ vm->get_impl()->is_migrating_ = false;
}