hu.mta.sztaki.lpds.cloud.simulator.energy
Class DirectEnergyMeter
java.lang.Object
hu.mta.sztaki.lpds.cloud.simulator.Timed
hu.mta.sztaki.lpds.cloud.simulator.energy.EnergyMeter
hu.mta.sztaki.lpds.cloud.simulator.energy.DirectEnergyMeter
- All Implemented Interfaces:
- PowerState.PowerCharacteristicsChange, ResourceSpreader.PowerBehaviorChangeListener, Comparable<Timed>
public class DirectEnergyMeter
- extends EnergyMeter
- implements ResourceSpreader.PowerBehaviorChangeListener, PowerState.PowerCharacteristicsChange
Direct energy meters can monitor a single resource spreader and can convert
their processed consumption values to a continuously updated energy figure.
- Author:
- "Gabor Kecskemeti, Distributed and Parallel Systems Group, University of Innsbruck (c) 2013"
Methods inherited from class hu.mta.sztaki.lpds.cloud.simulator.Timed |
compareTo, fire, getFireCount, getFrequency, getNextEvent, getNextFire, isSubscribed, jumpTime, nextEventDistance, resetTimed, setBackPreference, simulateUntil, simulateUntilLastEvent, skipEventsTill, subscribe, unsubscribe, updateFrequency |
measuredResource
private ResourceSpreader measuredResource
usedPowerState
private PowerState usedPowerState
previousProcessingReport
private double previousProcessingReport
maxProcessable
private double maxProcessable
DirectEnergyMeter
public DirectEnergyMeter(ResourceSpreader spreader)
toString
public String toString()
- Overrides:
toString
in class Timed
startMeter
public boolean startMeter(long interval,
boolean dropPriorReading)
- Description copied from class:
EnergyMeter
- Initiates an energy metering session.
- Overrides:
startMeter
in class EnergyMeter
- Parameters:
interval
- The meter refresh frequency.dropPriorReading
-
False: the totalConsumption values will accumulate from a
previous metering session True: the totalconsumption
values will start from 0 after the completion of this
function.
- Returns:
- False: if a metering session is already underway
- True: if the metering session was successfully initiated
stopMeter
public void stopMeter()
- Description copied from class:
EnergyMeter
- Terminates the metering session, the totalconsumption values will no longer be
updated!
- Overrides:
stopMeter
in class EnergyMeter
behaviorChanged
public void behaviorChanged(ResourceSpreader onSpreader,
PowerState newState)
- Specified by:
behaviorChanged
in interface ResourceSpreader.PowerBehaviorChangeListener
prePowerChangeEvent
public void prePowerChangeEvent(PowerState onMe)
- Specified by:
prePowerChangeEvent
in interface PowerState.PowerCharacteristicsChange
updateFieldsUsingNewInterval
private void updateFieldsUsingNewInterval(long interval)
collectProcessingReport
private double collectProcessingReport()
tick
public void tick(long fires)
- Maintains the totalconsumption value in every desired time interval
- Specified by:
tick
in class Timed
Copyright © 2012–2015 University of Innsbruck & MTA SZTAKI. All rights reserved.