Class StretchedUsageEvolver
- java.lang.Object
-
- de.uka.ipd.sdq.simulation.abstractsimengine.SimpleEventBasedSimEntity
-
- org.palladiosimulator.simulizar.simulationevents.PeriodicallyTriggeredSimulationEntity
-
- org.palladiosimulator.simulizar.usagemodel.PeriodicallyTriggeredUsageEvolver
-
- org.palladiosimulator.simulizar.usagemodel.StretchedUsageEvolver
-
- All Implemented Interfaces:
de.uka.ipd.sdq.simulation.abstractsimengine.IEntity
public class StretchedUsageEvolver extends PeriodicallyTriggeredUsageEvolver
Encapsulates a Usage evolver that stretches the DLIM curve to the simulation time.
-
-
Field Summary
-
Fields inherited from class org.palladiosimulator.simulizar.usagemodel.PeriodicallyTriggeredUsageEvolver
evolvedScenario
-
-
Constructor Summary
Constructors Constructor Description StretchedUsageEvolver(double firstOccurrence, double delay, EntityReference<org.palladiosimulator.pcm.usagemodel.UsageScenario> evolvedScenario, Optional<Double> maxSimTime, org.palladiosimulator.analyzer.workflow.blackboard.PCMResourceSetPartition pcmPartition, de.uka.ipd.sdq.simulation.abstractsimengine.ISimEventFactory simEventFactory, de.uka.ipd.sdq.simulation.abstractsimengine.ISimulationTimeProvider timeProvider)
Creates the stretching usage evolver.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected double
getNewRate(tools.descartes.dlim.generator.ModelEvaluator loadEvaluator)
Get the new rate of the Usage or workload parameter characterization.-
Methods inherited from class org.palladiosimulator.simulizar.usagemodel.PeriodicallyTriggeredUsageEvolver
evolveLoad, evolveWork, getCorrespondingUsage, getCurrentTime, getDLIMFinalDuration, getLoadEvaluator, getWorkEvaluators, stop, triggerInternal
-
Methods inherited from class org.palladiosimulator.simulizar.simulationevents.PeriodicallyTriggeredSimulationEntity
entityRoutine, getSimulationTimeOfNextEventTrigger, setDelay, stopScheduling
-
-
-
-
Constructor Detail
-
StretchedUsageEvolver
@AssistedInject public StretchedUsageEvolver(@Assisted double firstOccurrence, @Assisted double delay, @Assisted EntityReference<org.palladiosimulator.pcm.usagemodel.UsageScenario> evolvedScenario, @Named("maxSimTime") Optional<Double> maxSimTime, org.palladiosimulator.analyzer.workflow.blackboard.PCMResourceSetPartition pcmPartition, de.uka.ipd.sdq.simulation.abstractsimengine.ISimEventFactory simEventFactory, de.uka.ipd.sdq.simulation.abstractsimengine.ISimulationTimeProvider timeProvider)
Creates the stretching usage evolver.- Parameters:
rtState
- The SimuLizar runtime state.firstOccurrence
- The first point in time at which the usage evolution should be executed.delay
- The repeating interval in which usage evolution should be executed.evolvedScenario
- The scenario evolved bythis
.
-
-
Method Detail
-
getNewRate
protected double getNewRate(tools.descartes.dlim.generator.ModelEvaluator loadEvaluator)
Description copied from class:PeriodicallyTriggeredUsageEvolver
Get the new rate of the Usage or workload parameter characterization.- Specified by:
getNewRate
in classPeriodicallyTriggeredUsageEvolver
- Parameters:
loadEvaluator
- The DLIM evaluator used for the evaluation.- Returns:
- The new Usage or workload parameter characterization.
-
-