Class VmAllocationPolicyMigrationLocalRegressionRobust
java.lang.Object
org.cloudbus.cloudsim.allocationpolicies.VmAllocationPolicyAbstract
org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationAbstract
org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationDynamicUpperThresholdFirstFit
org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationLocalRegression
org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationLocalRegressionRobust
- All Implemented Interfaces:
VmAllocationPolicyMigration
,VmAllocationPolicyMigrationDynamicUpperThreshold
,VmAllocationPolicy
public class VmAllocationPolicyMigrationLocalRegressionRobust extends VmAllocationPolicyMigrationLocalRegression
A VM allocation policy that uses Local Regression Robust (LRR) to predict host utilization (load)
and define if a host is overloaded or not.
It's a Best Fit policy which selects the Host with most efficient power usage to place a given VM.
If you are using any algorithms, policies or workload included in the power package please cite the following paper:
- Since:
- CloudSim Toolkit 3.0
- Author:
- Anton Beloglazov
-
Field Summary
Fields inherited from class org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationAbstract
DEF_UNDER_UTILIZATION_THRESHOLD
Fields inherited from interface org.cloudbus.cloudsim.allocationpolicies.VmAllocationPolicy
DEF_HOST_COUNT_FOR_PARALLEL_SEARCH, LOGGER, NULL
Fields inherited from interface org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigration
NULL
-
Constructor Summary
Constructors Constructor Description VmAllocationPolicyMigrationLocalRegressionRobust(VmSelectionPolicy vmSelectionPolicy)
Creates a VmAllocationPolicyMigrationLocalRegressionRobust with asafety parameter
equals to 0 and nofallback policy
.VmAllocationPolicyMigrationLocalRegressionRobust(VmSelectionPolicy vmSelectionPolicy, double safetyParameter, VmAllocationPolicyMigration fallbackVmAllocationPolicy)
Creates a VmAllocationPolicyMigrationLocalRegressionRobust. -
Method Summary
Modifier and Type Method Description protected double[]
getParameterEstimates(double[] reversedUsageHistory)
Gets the utilization estimates.Methods inherited from class org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationLocalRegression
computeHostUtilizationMeasure, getMaximumVmMigrationTime, getOverUtilizationThreshold, getSchedulingInterval, isHostOverloaded, setSchedulingInterval
Methods inherited from class org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationDynamicUpperThresholdFirstFit
getFallbackVmAllocationPolicy, getSafetyParameter, setFallbackVmAllocationPolicy, setSafetyParameter
Methods inherited from class org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigrationAbstract
areHostsOverloaded, areHostsUnderloaded, defaultFindHostForVm, findHostForVmInternal, getHostCpuUsageArray, getMaxUtilizationAfterAllocation, getOptimizedAllocationMap, getPowerAfterAllocation, getPowerDifferenceAfterAllocation, getSwitchedOffHosts, getUnderUtilizationThreshold, getUtilizationOfCpuMips, getVmSelectionPolicy, getVmsToMigrateFromUnderUtilizedHost, isHostUnderloaded, isVmMigrationSupported, setUnderUtilizationThreshold, setVmSelectionPolicy
Methods inherited from class org.cloudbus.cloudsim.allocationpolicies.VmAllocationPolicyAbstract
allocateHostForVm, allocateHostForVm, allocateHostForVm, deallocateHostForVm, findHostForVm, getDatacenter, getHostCountForParallelSearch, getHostList, scaleVmVertically, setDatacenter, setFindHostForVmFunction, setHostCountForParallelSearch
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.cloudbus.cloudsim.allocationpolicies.VmAllocationPolicy
allocateHostForVm, allocateHostForVm, allocateHostForVm, deallocateHostForVm, findHostForVm, getDatacenter, getHostCountForParallelSearch, getHostList, getOptimizedAllocationMap, isParallelHostSearchEnabled, isVmMigrationSupported, scaleVmVertically, setDatacenter, setFindHostForVmFunction, setHostCountForParallelSearch
Methods inherited from interface org.cloudbus.cloudsim.allocationpolicies.migration.VmAllocationPolicyMigration
areHostsOverloaded, areHostsUnderloaded, areHostsUnderOrOverloaded, getUnderUtilizationThreshold, getVmSelectionPolicy, isHostUnderloaded, setUnderUtilizationThreshold, setVmSelectionPolicy
-
Constructor Details
-
VmAllocationPolicyMigrationLocalRegressionRobust
Creates a VmAllocationPolicyMigrationLocalRegressionRobust with asafety parameter
equals to 0 and nofallback policy
.- Parameters:
vmSelectionPolicy
- the policy that defines how VMs are selected for migration
-
VmAllocationPolicyMigrationLocalRegressionRobust
public VmAllocationPolicyMigrationLocalRegressionRobust(VmSelectionPolicy vmSelectionPolicy, double safetyParameter, VmAllocationPolicyMigration fallbackVmAllocationPolicy)Creates a VmAllocationPolicyMigrationLocalRegressionRobust.- Parameters:
vmSelectionPolicy
- the policy that defines how VMs are selected for migrationsafetyParameter
- the safety parameterfallbackVmAllocationPolicy
- the fallback VM allocation policy to be used when the over utilization host detection doesn't have data to be computed
-
-
Method Details
-
getParameterEstimates
protected double[] getParameterEstimates(double[] reversedUsageHistory)Gets the utilization estimates.- Overrides:
getParameterEstimates
in classVmAllocationPolicyMigrationLocalRegression
- Parameters:
reversedUsageHistory
- the utilization history in reverse order- Returns:
- the utilization estimates
-