TY - GEN
T1 - Efficiently scheduling multi-core guest virtual machines on multi-core hosts in network simulation
AU - Yoginath, Srikanth B.
AU - Perumalla, Kalyan S.
PY - 2011
Y1 - 2011
N2 - Virtual machine (VM)-based simulation is a method used by network simulators to incorporate realistic application behaviors by executing actual VMs as high-fidelity surrogates for simulated end-hosts. A critical requirement in such a method is the simulation time-ordered scheduling and execution of the VMs. Prior approaches such as time dilation are less efficient due to the high degree of multiplexing possible when multiple multi-core VMs are simulated on multi-core host systems. We present a new simulation time-ordered scheduler to efficiently schedule multi-core VMs on multi-core real hosts, with a virtual clock realized on each virtual core. The distinguishing features of our approach are: (1) customizable granularity of the VM scheduling time unit on the simulation time axis, (2) ability to take arbitrary leaps in virtual time by VMs to maximize the utilization of host (real) cores when guest virtual cores idle, and (3) empirically determinable optimality in the tradeoff between total execution (real) time and time-ordering accuracy levels. Experiments show that it is possible to get nearly perfect time-ordered execution, with a slight cost in total run time, relative to optimized non-simulation VM schedulers. Interestingly, with our time-ordered scheduler, it is also possible to reduce the time-ordering error from over 50% of non-simulation scheduler to less than 1% realized by our scheduler, with almost the same run time efficiency as that of the highly efficient non-simulation VM schedulers.
AB - Virtual machine (VM)-based simulation is a method used by network simulators to incorporate realistic application behaviors by executing actual VMs as high-fidelity surrogates for simulated end-hosts. A critical requirement in such a method is the simulation time-ordered scheduling and execution of the VMs. Prior approaches such as time dilation are less efficient due to the high degree of multiplexing possible when multiple multi-core VMs are simulated on multi-core host systems. We present a new simulation time-ordered scheduler to efficiently schedule multi-core VMs on multi-core real hosts, with a virtual clock realized on each virtual core. The distinguishing features of our approach are: (1) customizable granularity of the VM scheduling time unit on the simulation time axis, (2) ability to take arbitrary leaps in virtual time by VMs to maximize the utilization of host (real) cores when guest virtual cores idle, and (3) empirically determinable optimality in the tradeoff between total execution (real) time and time-ordering accuracy levels. Experiments show that it is possible to get nearly perfect time-ordered execution, with a slight cost in total run time, relative to optimized non-simulation VM schedulers. Interestingly, with our time-ordered scheduler, it is also possible to reduce the time-ordering error from over 50% of non-simulation scheduler to less than 1% realized by our scheduler, with almost the same run time efficiency as that of the highly efficient non-simulation VM schedulers.
KW - Hypervisors
KW - Network Emulation
KW - Network Simulation
KW - Scheduling
KW - Virtual Clocks
KW - Virtual Machines
UR - http://www.scopus.com/inward/record.url?scp=79960685832&partnerID=8YFLogxK
U2 - 10.1109/PADS.2011.5936746
DO - 10.1109/PADS.2011.5936746
M3 - Conference contribution
AN - SCOPUS:79960685832
SN - 9781457713668
T3 - Proceedings - Workshop on Principles of Advanced and Distributed Simulation, PADS
BT - 2011 25th ACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, PADS 2011
T2 - 25th ACM/IEEE/SCS Workshop on Principles of Advanced and Distributed Simulation, PADS 2011
Y2 - 14 June 2011 through 17 June 2011
ER -