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

Revision 241, 1.4 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 test.rewolucja.energy.EnergyEvent;
6import test.rewolucja.resources.physical.base.ComputingResource;
7import test.rewolucja.resources.physical.implementation.ComputingNode;
8import test.rewolucja.resources.physical.implementation.Processor;
9import test.rewolucja.scheduling.JobRegistryInterface;
10
11public class ComputingNodeEnergyEstimationPlugin extends BaseEnergyEstimationPlugin {
12
13        @Override
14        public double estimatePowerConsumption(EnergyEvent event, JobRegistryInterface jobRegistry,
15                        ComputingResource resource) {
16                double power = 0;
17                ComputingNode node = (ComputingNode) resource;
18               
19                if( node.getCategory().getName().equals("A"))
20                        power = 240;
21                else if( node.getCategory().getName().equals("B"))
22                        power = 95;
23                else
24                {
25                        System.err.println("Unknown Model: "  +node.getCategory().getName());
26                        System.exit(1);
27                }       
28               
29               
30               
31                for(Processor cpu: node.getProcessors()){
32                        //try{
33                                power = power + cpu.getPowerInterface().getRecentPowerUsage().getValue();
34                        //} catch(Exception e){
35                        //      power = power + cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPowerState());
36                        //}
37                }
38                //power += node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState());
39                return power;
40        }
41
42        public String getName() {
43                return getClass().getName();
44        }
45
46        public void init(Properties properties) {
47                // TODO Auto-generated method stub
48               
49        }
50
51}
Note: See TracBrowser for help on using the repository browser.