VerticalVmScalingSimple is not working for RAM
Actual behavior
When running VerticalVmRamScalingExample, the following error is prompted and it does not scale according to ram usage.
INFO 160.22: VerticalVmScalingSimple: 0 Ram deallocated from Vm 0: new capacity is 800. Current resource usage is 100.0% Time 160.2: Vm 0 Ram Usage: 100.00% ( 800 of 800 MB) | Host Ram Allocation: 84.00% (16800 of 20000 MB). Running Cloudlets: 2 WARN 161.22: CloudletSchedulerTimeShared: Cloudlet 4 requested 1000 Mbps of Bandwidth but no amount is available., which delays Cloudlet processing. INFO 161.22: VerticalVmScalingSimple: 0 Ram deallocated from Vm 0: new capacity is 800. Current resource usage is 100.0%"
Expected behavior
Normal scaling behavior
Hey @henls
Available examples using UtilizationModelFull for such resources won't make sense if you have more than 1 Cloudlet by VM with a CloudletSchedulerTimeShared (for instance). That was a practice in CloudSim which I just changed in some examples. If two Cloudlets are running in parallel in the same VM, they both cannot use 100% of RAM or BW at the same time. After Virtual Memory and Bandwidth oversubscription were implemented, that will cause issues because just the first Cloudlet to run gets the required resources and the other one gets nothing.
I've changed the example to apply a UtilizationModelDynamic for such resources. Could you please check PR cloudsimplus/cloudsimplus-examples#3?
Hi,
Is this bug fixed? because when I run the Ram scaling example, the ram size still does not change. There is always a warning that ram resize failed due to unexpected error.