source: xssim/branches/tpiontek/src/example/energy/ComputingNodeEnergyEstimationPlugin.java @ 250

Revision 250, 1.2 KB checked in by piontek, 13 years ago (diff)
  • Property svn:mime-type set to text/plain
Line 
1package example.energy;
2
3import java.util.Properties;
4
5import schedframe.resources.PowerState;
6import test.rewolucja.energy.EnergyEvent;
7import test.rewolucja.resources.physical.base.ComputingResource;
8import test.rewolucja.resources.physical.implementation.ComputingNode;
9import test.rewolucja.resources.physical.implementation.Processor;
10import test.rewolucja.scheduling.JobRegistryInterface;
11
12public class ComputingNodeEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
13
14        @Override
15        public double estimatePowerConsumption(EnergyEvent event, JobRegistryInterface jobRegistry,
16                        ComputingResource resource) {
17                double power = 0;
18                ComputingNode node = (ComputingNode) resource;
19               
20                       
21                power += node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState());
22               
23                for(Processor cpu: node.getProcessors()){
24                        //try{
25                                power = power + cpu.getPowerInterface().getRecentPowerUsage().getValue();
26                        //} catch(Exception e){
27                        //      power = power + cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPowerState());
28                        //}
29                }
30
31                return power;
32        }
33
34        public String getName() {
35                return getClass().getName();
36        }
37
38        public void init(Properties properties) {
39                // TODO Auto-generated method stub
40               
41        }
42
43}
Note: See TracBrowser for help on using the repository browser.