source: DCWoRMS/trunk/src/test/article/recs/plugins/energy/AmdNodeEEP.java @ 707

Revision 707, 1.4 KB checked in by wojtekp, 12 years ago (diff)
  • Property svn:mime-type set to text/plain
RevLine 
[656]1package test.article.recs.plugins.energy;
2
3import java.io.FileNotFoundException;
4import java.io.IOException;
5
6import schedframe.resources.computing.ComputingNode;
7import schedframe.resources.computing.ComputingResource;
8import schedframe.resources.computing.Processor;
9import schedframe.resources.computing.profiles.energy.EnergyEvent;
10import schedframe.scheduling.manager.tasks.JobRegistry;
11
12public class AmdNodeEEP extends RecsNodeBaseEEP {
13
14        public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry,
15                        ComputingResource resource) {
16                double powerConsumption = 0;
17                ComputingNode node = (ComputingNode) resource;
[707]18                try {
19                        if(jobRegistry.getRunningTasks().size() > 0) {
20                                powerConsumption = powerConsumption + getMeasuredPower(createQuery(jobRegistry.getRunningTasks().get(0)));
[656]21                        }
[707]22                        else {
23                                for(Processor cpu: node.getProcessors()){
24                                        try{
25                                                //powerConsumption = powerConsumption + cpu.getPowerInterface().getRecentPowerUsage().getValue();
26                                        } catch (Exception e){
27                                               
28                                        }
29                                }
30                                try {
31                                        powerConsumption = powerConsumption + node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState());
32                                } catch (NoSuchFieldException e) {
33                                }
34                        }
[656]35                } catch (FileNotFoundException e) {
36                        // TODO Auto-generated catch block
37                        e.printStackTrace();
38                } catch (IOException e) {
39                        // TODO Auto-generated catch block
40                        e.printStackTrace();
41                }
42                return powerConsumption;
43        }
44
45}
Note: See TracBrowser for help on using the repository browser.