Changeset 1555 for DCWoRMS/branches
- Timestamp:
- 02/01/16 16:12:28 (9 years ago)
- Location:
- DCWoRMS/branches/coolemall/src/example/energy
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
DCWoRMS/branches/coolemall/src/example/energy/NodeEnergyEstimationPlugin.java
r1415 r1555 1 1 package example.energy; 2 3 import gridsim.dcworms.DCWormsTags; 4 2 5 3 6 import schedframe.resources.computing.Node; 4 7 import schedframe.resources.computing.Processor; 5 8 import schedframe.resources.computing.profiles.energy.ResourceEvent; 9 import schedframe.resources.computing.profiles.energy.power.plugin.EnergyPluginConfiguration; 6 10 import schedframe.resources.devices.Device; 7 11 import schedframe.resources.devices.PhysicalResource; 8 12 import schedframe.scheduling.manager.tasks.JobRegistry; 13 import simulator.DataCenterWorkloadSimulator; 9 14 10 15 public class NodeEnergyEstimationPlugin extends BaseEnergyEstimationPlugin { … … 13 18 PhysicalResource resource) { 14 19 double powerConsumption = 0; 20 EnergyPluginConfiguration epConf = (EnergyPluginConfiguration) getConfiguration(); 15 21 Node node = (Node) resource; 16 22 for(Processor cpu: node.getProcessors()){ … … 24 30 powerConsumption = powerConsumption + node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState()); 25 31 for(Device dev: node.getResourceCharacteristic().getDevices()){ 26 powerConsumption = powerConsumption + dev.getPowerInterface().getRecentPowerUsage().getValue(); 32 if(dev.getPowerInterface().getRecentPowerUsage().getValue() != -1) 33 powerConsumption = powerConsumption + dev.getPowerInterface().getRecentPowerUsage().getValue(); 27 34 } 28 35 } catch (NoSuchFieldException e) { 29 36 } 30 37 38 if(epConf.getPowerCapLevel() != -1 && powerConsumption > epConf.getPowerCapLevel()){ 39 DataCenterWorkloadSimulator.getEventManager().sendToAllSchedulers(0, DCWormsTags.RESOURCE_POWER_LIMIT_EXCEEDED, node.getFullName()); 40 } 31 41 return powerConsumption; 32 42 } -
DCWoRMS/branches/coolemall/src/example/energy/ProcessorEnergyEstimationPlugin.java
r1415 r1555 12 12 public double estimatePowerConsumption(ResourceEvent event, JobRegistry jobRegistry, 13 13 PhysicalResource resource) { 14 double powerConsumption ;14 double powerConsumption = 0; 15 15 16 16 Processor cpu = (Processor)resource; … … 24 24 } catch (NoSuchFieldException e) { 25 25 try { 26 powerConsumption = cpu.getPowerInterface().getPowerConsumption(StandardPowerStateName.ON); 26 if(cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPowerState()) != -1) 27 powerConsumption = cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPowerState()); 27 28 } catch (NoSuchFieldException e1) { 28 29 powerConsumption = 10; … … 31 32 } else{ 32 33 try { 33 powerConsumption = cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPState()); 34 } catch (NoSuchFieldException e) { 35 try { 36 powerConsumption = cpu.getPowerInterface().getPowerConsumption(StandardPowerStateName.ON); 37 } catch (NoSuchFieldException e1) { 38 powerConsumption = 0; 39 } 34 if(cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPowerState()) != -1) 35 powerConsumption = cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPowerState()); 36 } catch (NoSuchFieldException e1) { 37 powerConsumption = 0; 40 38 } 41 39 }
Note: See TracChangeset
for help on using the changeset viewer.