Ignore:
Timestamp:
11/28/13 10:54:54 (11 years ago)
Author:
wojtekp
Message:
 
File:
1 edited

Legend:

Unmodified
Added
Removed
  • DCWoRMS/branches/coolemall/src/example/localplugin/FCFSBF_NodePowerManagementClusterPlugin.java

    r1207 r1247  
    1212import schedframe.events.scheduling.SchedulingEvent; 
    1313import schedframe.resources.ResourceStatus; 
    14 import schedframe.resources.computing.ComputingNode; 
     14import schedframe.resources.computing.Node; 
    1515import schedframe.resources.computing.ComputingResource; 
    1616import schedframe.resources.computing.profiles.energy.power.StandardPowerStateName; 
     
    5454                                                addToSchedulingPlan(plan, task, choosenResources); 
    5555                                        } else { 
    56                                                 if(harnessIdleNodesToWork(task, resourceManager.getComputingNodes())) 
     56                                                if(harnessIdleNodesToWork(task, resourceManager.getNodes())) 
    5757                                                        i--; 
    5858                                        } 
    5959                                } 
    6060                        } 
    61                         turnOffIdleNodes(resourceManager.getComputingNodes()); 
     61                        turnOffIdleNodes(resourceManager.getNodes()); 
    6262                        break; 
    6363                } 
     
    6767        private Map<ResourceUnitName, ResourceUnit> chooseResourcesForExecution(ClusterResourceManager resourceManager, TaskInterface<?> task) { 
    6868 
    69                 List<ComputingNode> nodes = resourceManager.getComputingNodes(); 
     69                List<Node> nodes = resourceManager.getNodes(); 
    7070                nodes = findSuitableNodes(task, nodes); 
    71                 Collections.sort(nodes, new Comparator<ComputingNode>(){ 
    72                     public int compare(ComputingNode node1, ComputingNode node2){     
     71                Collections.sort(nodes, new Comparator<Node>(){ 
     72                    public int compare(Node node1, Node node2){     
    7373                        return node1.getResourceCharacteristic().getParameters().get("category").get(0).getContent().compareTo(node2.getResourceCharacteristic().getParameters().get("category").get(0).getContent()); 
    7474                    } 
     
    9898        } 
    9999         
    100         private List<ComputingNode> findSuitableNodes(TaskInterface<?> task, List<ComputingNode> nodes){ 
     100        private List<Node> findSuitableNodes(TaskInterface<?> task, List<Node> nodes){ 
    101101                int cpuRequest; 
    102102                try { 
     
    105105                        cpuRequest = 1; 
    106106                } 
    107                 List<ComputingNode> avNodes = new ArrayList<ComputingNode>(); 
    108                 for(ComputingNode node: nodes){ 
     107                List<Node> avNodes = new ArrayList<Node>(); 
     108                for(Node node: nodes){ 
    109109                        if(node.getFreeProcessorsNumber() >= cpuRequest){ 
    110110                                avNodes.add(node); 
     
    114114        } 
    115115 
    116         private void turnOffIdleNodes(List<ComputingNode> nodes){ 
    117                 for(ComputingNode node : nodes){ 
     116        private void turnOffIdleNodes(List<Node> nodes){ 
     117                for(Node node : nodes){ 
    118118                        if(node.getFreeProcessorsNumber() == node.getProcessorsNumber()){ 
    119119                                node.getPowerInterface().setPowerState(StandardPowerStateName.OFF); 
     
    122122        } 
    123123         
    124         private boolean harnessIdleNodesToWork(TaskInterface<?> task, List<ComputingNode> nodes){ 
     124        private boolean harnessIdleNodesToWork(TaskInterface<?> task, List<Node> nodes){ 
    125125                int cpuRequest; 
    126126                try { 
     
    129129                        cpuRequest = 1; 
    130130                } 
    131                 Collections.sort(nodes, new Comparator<ComputingNode>(){ 
    132                     public int compare(ComputingNode node1, ComputingNode node2){     
     131                Collections.sort(nodes, new Comparator<Node>(){ 
     132                    public int compare(Node node1, Node node2){     
    133133                        return node1.getResourceCharacteristic().getParameters().get("category").get(0).getContent().compareTo(node2.getResourceCharacteristic().getParameters().get("category").get(0).getContent()); 
    134134                    } 
    135135                }); 
    136136                for (int i = 0; i < nodes.size() && cpuRequest > 0; i++) { 
    137                         ComputingNode node = nodes.get(i); 
     137                        Node node = nodes.get(i); 
    138138                        if(node.getPowerInterface().getPowerState() == StandardPowerStateName.OFF){ 
    139139                                node.getPowerInterface().setPowerState(StandardPowerStateName.ON); 
Note: See TracChangeset for help on using the changeset viewer.