Class NestableLoadProfileEstimator
java.lang.Object
org.apache.wayang.core.optimizer.costs.NestableLoadProfileEstimator
- All Implemented Interfaces:
LoadProfileEstimator
LoadProfileEstimator that can host further LoadProfileEstimators.-
Constructor Summary
ConstructorsConstructorDescriptionNestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator) Creates an new instance.NestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator, LoadEstimator diskLoadEstimator, LoadEstimator networkLoadEstimator) Creates an new instance.NestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator, LoadEstimator diskLoadEstimator, LoadEstimator networkLoadEstimator, FunctionDescriptor.SerializableToDoubleBiFunction<long[], long[]> resourceUtilizationEstimator, long overheadMillis) Creates an new instance.NestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator, LoadEstimator diskLoadEstimator, LoadEstimator networkLoadEstimator, FunctionDescriptor.SerializableToDoubleBiFunction<long[], long[]> resourceUtilizationEstimator, long overheadMillis, String configurationKey) Creates an new instance. -
Method Summary
Modifier and TypeMethodDescriptioncopy()Optional operation. Copy this instance.estimate(EstimationContext context) Estimates aLoadProfile.Retrieve theConfigurationkey for this instance.Retrieve nested instances.voidnest(LoadProfileEstimator nestedEstimator) Nest aLoadProfileEstimatorin this instance.toString()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.wayang.core.optimizer.costs.LoadProfileEstimator
getConfigurationKeys, getTemplateKey, getTemplateKeys
-
Constructor Details
-
NestableLoadProfileEstimator
Creates an new instance.- Parameters:
cpuLoadEstimator- estimates CPU load in terms of cyclesramLoadEstimator- estimates RAM load in terms of MB
-
NestableLoadProfileEstimator
public NestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator, LoadEstimator diskLoadEstimator, LoadEstimator networkLoadEstimator) Creates an new instance.- Parameters:
cpuLoadEstimator- estimates CPU load in terms of cyclesramLoadEstimator- estimates RAM load in terms of bytesdiskLoadEstimator- estimates disk accesses in terms of bytesnetworkLoadEstimator- estimates network in terms of bytes
-
NestableLoadProfileEstimator
public NestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator, LoadEstimator diskLoadEstimator, LoadEstimator networkLoadEstimator, FunctionDescriptor.SerializableToDoubleBiFunction<long[], long[]> resourceUtilizationEstimator, long overheadMillis) Creates an new instance.- Parameters:
cpuLoadEstimator- estimates CPU load in terms of cyclesramLoadEstimator- estimates RAM load in terms of bytesdiskLoadEstimator- estimates disk accesses in terms of bytesnetworkLoadEstimator- estimates network in terms of bytesresourceUtilizationEstimator- degree to which the load profile can utilize available resourcesoverheadMillis- overhead that this load profile incurs
-
NestableLoadProfileEstimator
public NestableLoadProfileEstimator(LoadEstimator cpuLoadEstimator, LoadEstimator ramLoadEstimator, LoadEstimator diskLoadEstimator, LoadEstimator networkLoadEstimator, FunctionDescriptor.SerializableToDoubleBiFunction<long[], long[]> resourceUtilizationEstimator, long overheadMillis, String configurationKey) Creates an new instance.- Parameters:
cpuLoadEstimator- estimates CPU load in terms of cyclesramLoadEstimator- estimates RAM load in terms of bytesdiskLoadEstimator- estimates disk accesses in terms of bytesnetworkLoadEstimator- estimates network in terms of bytesresourceUtilizationEstimator- degree to which the load profile can utilize available resourcesoverheadMillis- overhead that this load profile incursconfigurationKey- from that this instances was perceived
-
-
Method Details
-
nest
Nest aLoadProfileEstimatorin this instance. No artifact will be available to it, though.- Specified by:
nestin interfaceLoadProfileEstimator- Parameters:
nestedEstimator- theLoadProfileEstimatorthat should be nested
-
estimate
Description copied from interface:LoadProfileEstimatorEstimates aLoadProfile.- Specified by:
estimatein interfaceLoadProfileEstimator- Parameters:
context- provides parameters for the estimation- Returns:
- the
LoadProfile
-
getNestedEstimators
Description copied from interface:LoadProfileEstimatorRetrieve nested instances.- Specified by:
getNestedEstimatorsin interfaceLoadProfileEstimator- Returns:
- the nested instances
-
getConfigurationKey
Description copied from interface:LoadProfileEstimatorRetrieve theConfigurationkey for this instance.- Specified by:
getConfigurationKeyin interfaceLoadProfileEstimator- Returns:
- the key or
nullif none
-
copy
Description copied from interface:LoadProfileEstimatorOptional operation. Copy this instance.- Specified by:
copyin interfaceLoadProfileEstimator- Returns:
- the copy
-
toString
-