Ignore:
Timestamp:
03/04/13 11:46:43 (12 years ago)
Author:
wojtekp
Message:
 
Location:
DCWoRMS/branches/coolemall/src/example/energy/coolemall
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • DCWoRMS/branches/coolemall/src/example/energy/coolemall/CB1EnergyEstimationPlugin.java

    r897 r913  
    11package example.energy.coolemall; 
    22 
     3import schedframe.Parameter; 
    34import schedframe.resources.computing.ComputingResource; 
    45import schedframe.resources.computing.profiles.energy.EnergyEvent; 
    5 import schedframe.resources.computing.profiles.energy.power.PowerUsage; 
    66import schedframe.resources.computing.recs.ComputeBox1; 
    77import schedframe.resources.computing.recs.NodeGroup; 
     
    1313        public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry, 
    1414                        ComputingResource resource) { 
    15                 double power = 0; 
     15                double powerConsumption = 0; 
    1616                ComputeBox1 computeBox1 = (ComputeBox1)resource; 
    1717                for(NodeGroup ng:computeBox1.getNodesGroups()){ 
    18                         PowerUsage powerUsage = ng.getPowerInterface().getRecentPowerUsage(); 
    19                         power += (powerUsage == null ? 0 : powerUsage.getValue()); 
     18                        try{ 
     19                                powerConsumption = powerConsumption + ng.getPowerInterface().getRecentPowerUsage().getValue(); 
     20                        } catch (Exception e){ 
     21                                 
     22                        } 
    2023                } 
    2124 
    22                 return power; 
     25                try { 
     26                        powerConsumption = powerConsumption + computeBox1.getPowerInterface().getPowerConsumption(computeBox1.getPowerInterface().getPowerState()); 
     27                } catch (NoSuchFieldException e) { 
     28                        Parameter param = computeBox1.getResourceCharacteristic().getParameters().get("maxPower"); 
     29                        if(param != null) 
     30                                powerConsumption = powerConsumption + Double.valueOf(param.get(0).getContent()); 
     31                } 
     32 
     33                 
     34                return powerConsumption; 
    2335        } 
    2436 
  • DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeEnergyEstimationPlugin.java

    r897 r913  
    11package example.energy.coolemall; 
    22 
     3import schedframe.Parameter; 
    34import schedframe.resources.computing.ComputingResource; 
    45import schedframe.resources.computing.Processor; 
     
    2425                        powerConsumption = powerConsumption + node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState()); 
    2526                } catch (NoSuchFieldException e) { 
     27                        Parameter param = node.getResourceCharacteristic().getParameters().get("maxPower"); 
     28                        if(param != null) 
     29                                powerConsumption = powerConsumption + Double.valueOf(param.get(0).getContent()); 
    2630                } 
    2731 
  • DCWoRMS/branches/coolemall/src/example/energy/coolemall/NodeGroupEnergyEstimationPlugin.java

    r897 r913  
    11package example.energy.coolemall; 
    22 
     3import schedframe.Parameter; 
    34import schedframe.resources.computing.ComputingResource; 
    45import schedframe.resources.computing.profiles.energy.EnergyEvent; 
    5 import schedframe.resources.computing.profiles.energy.power.PowerUsage; 
    66import schedframe.resources.computing.recs.Node; 
    77import schedframe.resources.computing.recs.NodeGroup; 
     
    1313        public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry, 
    1414                        ComputingResource resource) { 
    15                 double power = 0; 
     15                double powerConsumption = 0; 
    1616                NodeGroup nodeGroup = (NodeGroup)resource; 
    1717                for(Node cn: nodeGroup.getNodes()){ 
    18                         PowerUsage powerUsage = cn.getPowerInterface().getRecentPowerUsage(); 
    19                         power += (powerUsage == null ? 0 : powerUsage.getValue()); 
     18                        try{ 
     19                                powerConsumption = powerConsumption + cn.getPowerInterface().getRecentPowerUsage().getValue(); 
     20                        } catch (Exception e){ 
     21                                 
     22                        } 
     23                } 
     24                try { 
     25                        powerConsumption = powerConsumption + nodeGroup.getPowerInterface().getPowerConsumption(nodeGroup.getPowerInterface().getPowerState()); 
     26                } catch (NoSuchFieldException e) { 
     27                        Parameter param = nodeGroup.getResourceCharacteristic().getParameters().get("maxPower"); 
     28                        if(param != null) 
     29                                powerConsumption = powerConsumption + Double.valueOf(param.get(0).getContent()); 
    2030                } 
    2131 
    22                 return power; 
     32                return powerConsumption; 
    2333        } 
    2434 
  • DCWoRMS/branches/coolemall/src/example/energy/coolemall/ProcessorEnergyEstimationPlugin.java

    r897 r913  
    11package example.energy.coolemall; 
    22 
     3import schedframe.Parameter; 
    34import schedframe.resources.ResourceStatus; 
    45import schedframe.resources.computing.ComputingResource; 
     
    1314        public double estimatePowerConsumption(EnergyEvent event, JobRegistry jobRegistry, 
    1415                        ComputingResource resource) { 
    15                 double powerConsumption; 
     16                double powerConsumption = 0; 
    1617                Processor cpu = (Processor)resource; 
    1718                if(resource.getPowerInterface().getPowerState().equals(StandardPowerStateName.OFF)) 
    1819                        powerConsumption = 0; 
    1920                else { 
    20                         try { 
    21                                 if(resource.getStatus() == ResourceStatus.BUSY) 
     21                        if(resource.getStatus() == ResourceStatus.BUSY){ 
     22                                try { 
    2223                                        powerConsumption = cpu.getPowerInterface().getPowerConsumption(cpu.getPowerInterface().getPState()); 
    23                                 else { 
    24                                         powerConsumption = cpu.getPowerInterface().getPowerConsumption(StandardPowerStateName.ON); 
     24                                } catch (NoSuchFieldException e) { 
     25                                        Parameter param = cpu.getResourceCharacteristic().getParameters().get("maxPower"); 
     26                                        if(param != null) 
     27                                                powerConsumption = Double.valueOf(param.get(0).getContent()); 
    2528                                } 
    26                         } catch (NoSuchFieldException e) { 
     29                        } 
     30                        else { 
    2731                                try { 
    2832                                        powerConsumption = cpu.getPowerInterface().getPowerConsumption(StandardPowerStateName.ON); 
    29                                 } catch (NoSuchFieldException e1) { 
    30                                         powerConsumption = 10; 
     33                                } catch (NoSuchFieldException e) { 
     34                                        Parameter param = cpu.getResourceCharacteristic().getParameters().get("maxPower"); 
     35                                        if(param != null) 
     36                                                powerConsumption = 0.7 * Double.valueOf(param.get(0).getContent()); 
    3137                                } 
    3238                        } 
Note: See TracChangeset for help on using the changeset viewer.