- Timestamp:
- 07/30/14 12:25:00 (11 years ago)
- Location:
- DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/EnergyExtension.java
r1415 r1423 111 111 if(powerProfile == null || powerProfile.getEnergyEstimationPlugin() == null) 112 112 return false; 113 if(event.getType().getName().equals(ResourceEventType.POWER_STATE_CHANGED.getName())) 113 if(event.getType().getName().equals(ResourceEventType.UTILIZATION_CHANGED.getName())) 114 return true; 115 else if(event.getType().getName().equals(ResourceEventType.TASK_STARTED.getName())) 116 return true; 117 else if(event.getType().getName().equals(ResourceEventType.TASK_FINISHED.getName())) 118 return true; 119 else if(event.getType().getName().equals(ResourceEventType.POWER_STATE_CHANGED.getName())) 114 120 return true; 115 121 else if(event.getType().getName().equals(ResourceEventType.CPU_FREQUENCY_CHANGED.getName())) 116 122 return true; 117 else if(event.getType().getName().equals(ResourceEventType.TASK_STARTED.getName())) 118 return true; 119 else if(event.getType().getName().equals(ResourceEventType.TASK_FINISHED.getName())) 120 return true; 121 else if(event.getType().getName().equals(ResourceEventType.UTILIZATION_CHANGED.getName())) 123 else if(event.getType().getName().equals(ResourceEventType.UPDATE_POWER_STATE.getName())) 122 124 return true; 123 125 … … 138 140 switch (resEvent.getType()) { 139 141 140 case UPDATE_POWER_STATE: 141 PowerStateName newPowerState = (PowerStateName) resEvent.getData(); 142 powerInterface.setPowerState(newPowerState); 143 break; 144 142 case UTILIZATION_CHANGED: 143 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); 144 status = powerProfile.addToPowerUsageHistory(power); 145 break; 146 147 case TASK_STARTED: 148 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); 149 status = powerProfile.addToPowerUsageHistory(power); 150 break; 151 152 case TASK_FINISHED: 153 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); 154 status = powerProfile.addToPowerUsageHistory(power); 155 break; 156 145 157 case POWER_STATE_CHANGED: 146 158 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); … … 153 165 break; 154 166 155 case TASK_STARTED: 156 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); 157 status = powerProfile.addToPowerUsageHistory(power); 158 break; 159 160 case TASK_FINISHED: 161 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); 162 status = powerProfile.addToPowerUsageHistory(power); 163 break; 164 165 case UTILIZATION_CHANGED: 166 power = powerProfile.getEnergyEstimationPlugin().estimatePowerConsumption(resEvent, new JobRegistryImpl(resource.getFullName()), resource); 167 status = powerProfile.addToPowerUsageHistory(power); 167 case UPDATE_POWER_STATE: 168 if(resource.getFullName().equals(resEvent.getSource())){ 169 PowerStateName newPowerState = (PowerStateName) resEvent.getData(); 170 powerInterface.setPowerState(newPowerState); 171 } 168 172 break; 169 173 -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/airthroughput/ui/AirflowInterface.java
r1396 r1423 24 24 public AirflowValue getRecentAirflow(); 25 25 26 List<AirflowValue> getAirflowHistory();26 public List<AirflowValue> getAirflowHistory(); 27 27 28 28 public Parameters getParameters(); -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/airthroughput/ui/ComputingResourceAirflowInterface.java
r1415 r1423 1 1 package schedframe.resources.computing.profiles.energy.airthroughput.ui; 2 2 3 import java.util.ArrayList;4 3 import java.util.List; 5 4 … … 54 53 55 54 public List<AirflowState> getSupportedAirflowStates() { 56 List<AirflowState> airflowStates = new ArrayList<AirflowState>(); 57 for(AirflowState airflowState: airflowProfile.getAirflowStates()){ 58 airflowStates.add(airflowState); 59 } 60 return airflowStates; 55 return airflowProfile.getAirflowStates(); 61 56 } 62 57 -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/power/PowerProfile.java
r1207 r1423 64 64 public List<PowerState> getSupportedPowerStates() { 65 65 if(supportedPowerStates == null) 66 return new ArrayList<PowerState>( );66 return new ArrayList<PowerState>(0); 67 67 return supportedPowerStates; 68 68 } … … 70 70 public Map<String, PState> getSupportedPStates() { 71 71 if(supportedPStates == null) 72 return new HashMap<String, PState>( );72 return new HashMap<String, PState>(0); 73 73 return supportedPStates; 74 74 } … … 117 117 boolean supportsOFF = false; 118 118 if(supportedPowerStates == null){ 119 supportedPowerStates = new ArrayList<PowerState>( );119 supportedPowerStates = new ArrayList<PowerState>(4); 120 120 } 121 121 for(PowerState ps: supportedPowerStates){ … … 128 128 129 129 if(!supportsON){ 130 supportedPowerStates.add(new PowerState(StandardPowerStateName.ON, -1, new ArrayList<Transition>())); 130 supportedPowerStates.add(new PowerState(StandardPowerStateName.ON, -1, null)); 131 supportedPowerStates.add(new PowerState(StandardPowerStateName.BOOT, -1, null)); 131 132 } 132 133 if(!supportsOFF){ 133 supportedPowerStates.add(new PowerState(StandardPowerStateName.OFF, -1, new ArrayList<Transition>())); 134 supportedPowerStates.add(new PowerState(StandardPowerStateName.OFF, -1, null)); 135 supportedPowerStates.add(new PowerState(StandardPowerStateName.POWEROFF, -1, null)); 134 136 } 135 137 } -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/power/PowerState.java
r477 r1423 1 1 package schedframe.resources.computing.profiles.energy.power; 2 2 3 import java.util.ArrayList; 3 4 import java.util.List; 4 5 … … 24 25 } 25 26 public List<Transition> getTransitions() { 27 if(transitions == null) 28 return new ArrayList<Transition>(0); 26 29 return transitions; 27 30 } -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/power/ui/ComputingResourcePowerInterface.java
r1415 r1423 1 1 package schedframe.resources.computing.profiles.energy.power.ui; 2 2 3 import java.util.ArrayList;4 3 import java.util.List; 5 4 … … 65 64 66 65 public List<PowerState> getSupportedPowerStates(){ 67 List<PowerState> powerStates = new ArrayList<PowerState>(); 68 for(PowerState powerState: powerProfile.getSupportedPowerStates()){ 69 powerStates.add(powerState); 70 } 71 return powerStates; 66 return powerProfile.getSupportedPowerStates(); 72 67 } 73 68 -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/power/ui/NodePowerInterface.java
r1415 r1423 4 4 5 5 import java.util.List; 6 6 7 7 8 import schedframe.resources.ResourceStatus; … … 37 38 } 38 39 39 if(state == StandardPowerStateName.OFF ){40 if(state == StandardPowerStateName.OFF || state == StandardPowerStateName.POWEROFF){ 40 41 node.setStatus(ResourceStatus.UNAVAILABLE); 41 42 } 42 else if(state == StandardPowerStateName.ON ){43 else if(state == StandardPowerStateName.ON || state == StandardPowerStateName.BOOT){ 43 44 node.setStatus(ResourceStatus.FREE); 44 45 } … … 55 56 /*double timePenalty = getTransitionTime(currentPowerState, StandardPowerStateName.ON); 56 57 setPowerState(StandardPowerStateName.BOOT); 57 DataCenterWorkloadSimulator.getEventManager().sendToResource(resource.getFullName(), timePenalty, new ResourceEvent(ResourceEventType.UPDATE_POWER_STATE, StandardPowerStateName.ON, resource.getFullName()));*/ 58 DataCenterWorkloadSimulator.getEventManager().sendToResource(resource.getFullName(), timePenalty, new ResourceEvent(ResourceEventType.UPDATE_POWER_STATE, StandardPowerStateName.ON, resource.getFullName())); 59 */ 58 60 setPowerState(StandardPowerStateName.ON); 59 61 } … … 68 70 private double getTransitionTime(PowerStateName from, PowerStateName to){ 69 71 List<PowerState> availablePowerStates = getSupportedPowerStates(); 70 double time Penalty= 0;72 double time = 0; 71 73 for(PowerState ps : availablePowerStates){ 72 74 if(ps.getName().getLabel().equals(from.getLabel())){ … … 74 76 for(Transition t: transitions){ 75 77 if(t.getTo().getLabel().equals(to)){ 76 time Penalty= t.getTime();78 time = t.getTime(); 77 79 } 78 80 } 79 81 } 80 82 } 81 return time Penalty;83 return time; 82 84 } 83 85 -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/power/ui/PowerInterface.java
r1380 r1423 24 24 //public double getCurrentPowerConsumption(); 25 25 26 List<PowerUsage> getPowerUsageHistory();26 public List<PowerUsage> getPowerUsageHistory(); 27 27 28 28 public Parameters getParameters(); -
DCWoRMS/branches/coolemall/src/schedframe/resources/computing/profiles/energy/thermal/ui/ThermalInterface.java
r804 r1423 10 10 public TemperatureValue getRecentTemperature(); 11 11 12 List<TemperatureValue> getTemperatureHistory();12 public List<TemperatureValue> getTemperatureHistory(); 13 13 14 14 public Parameters getParameters();
Note: See TracChangeset
for help on using the changeset viewer.