source: DCWoRMS/trunk/src/example/energy/recs/NodeEnergyEstimationPlugin.java @ 786

Revision 786, 1020 bytes checked in by wojtekp, 12 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package example.energy.recs;
2
3import schedframe.resources.computing.ComputingResource;
4import schedframe.resources.computing.Processor;
5import schedframe.resources.computing.profiles.energy.EnergyEvent;
6import schedframe.resources.computing.recs.Node;
7import schedframe.scheduling.manager.tasks.JobRegistry;
8import example.energy.BaseEnergyEstimationPlugin;
9
10public class NodeEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
11
12        public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
13                        ComputingResource resource) {
14                double powerConsumption = 0;
15                Node node = (Node) resource;
16                for(Processor cpu: node.getProcessors()){
17                        try{
18                                powerConsumption = powerConsumption + cpu.getPowerInterface().getRecentPowerUsage().getValue();
19                        } catch (Exception e){
20                               
21                        }
22                }
23                try {
24                        powerConsumption = powerConsumption + node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState());
25                } catch (NoSuchFieldException e) {
26                }
27
28                return powerConsumption;
29        }
30
31}
Note: See TracBrowser for help on using the repository browser.