cloudsim中的分时如何工作,没有表示时间片或量子的变量,那么如何在cloudim中验证循环的概念?
如果我们有50个cloudlet,则有10个VM
答案 0 :(得分:0)
实际上, CloudSim中的CloudletSchedulerTimeShared没有实现时间片/量子的概念。考虑一下,我们有一个VM,其中有1个CPU(PE)为1000 MIPS和2个Cloudlets。 CloudSim的CloudletSchedulerTimeShared提供了一种过于简化的实现,该实现为每个Cloudlet分配500 MIPS,从而使它们在同一CPU上同时运行。
如果VM仅具有一个长度为5000 MI的Cloudlet,则Cloudlet将需要5秒钟才能完成。由于有2个Cloudlet,因此在该单核VM的时间共享调度程序中,每个Cloudlet将需要10秒才能完成。为2个Cloudlet中的每一个仅分配一半的CPU容量(500 MIPS)将产生完全相同的结果:每个Cloudlet在10秒内完成。
重点是,没有任何Cloudlet的等待时间。这些Cloudlet的运行就像虚拟机有2个CPU,每个CPU 500 MIPS。如果您在模拟中评估Cloudlets的等待时间,那么这样的结果就是错误的。如果不必担心等待时间,那么结果很好。
如果您真的需要评估Cloudlets的抢占过程,可以查看CloudSim Plus,它是功能齐全,技术先进,经过全面重新设计并积极维护的CloudSim分支。它提供了完全公平的Linux Scheduler的实现,该实现执行实际的抢占并考虑运行Cloudlets的时间片。检查CloudletSchedulerCompletelyFair和LinuxCompletelyFairSchedulerExample。
如果答案有帮助,请投票并给我们一个星标,{@ {3}}
答案 1 :(得分:-1)
[如果我们有50个cloudlet,则有10个VM。 cloudsim中的CloudChedular和VmSchedular(时间共享)类将根据要执行的作业总数(cloudlets)分配资源。例如,当请求的容量超过当前容量时,将发生故障并导致违反SLA。