Changeset 250 for xssim/branches/tpiontek/src
- Timestamp:
- 04/12/12 08:02:02 (13 years ago)
- Location:
- xssim/branches/tpiontek/src
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
xssim/branches/tpiontek/src/example/energy/CPUEnergyEstimationPlugin.java
r241 r250 32 32 switch( type % 4) 33 33 { 34 default: factor = 1.3; 34 case 0: factor = 1.1; break; 35 case 1: factor = 1.2; break; 36 case 2: factor = 1.3; break; 37 case 3: factor = 1.4; break; 35 38 } 36 39 -
xssim/branches/tpiontek/src/example/energy/ComputingNodeEnergyEstimationPlugin.java
r241 r250 3 3 import java.util.Properties; 4 4 5 import schedframe.resources.PowerState; 5 6 import test.rewolucja.energy.EnergyEvent; 6 7 import test.rewolucja.resources.physical.base.ComputingResource; … … 17 18 ComputingNode node = (ComputingNode) resource; 18 19 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 20 21 power += node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState()); 30 22 31 23 for(Processor cpu: node.getProcessors()){ … … 36 28 //} 37 29 } 38 //power += node.getPowerInterface().getPowerConsumption(node.getPowerInterface().getPowerState()); 30 39 31 return power; 40 32 } -
xssim/branches/tpiontek/src/example/localplugin/FCFSRandomClusterLocalPlugin.java
r241 r250 99 99 nodes = findSuitableNodes(cpuRequest, nodes); 100 100 101 int nodeIdx = rand.nextInt(nodes.size()); 102 return nodes.get(nodeIdx).getName(); 101 if( nodes.size() > 0) 102 { 103 int nodeIdx = rand.nextInt(nodes.size()); 104 return nodes.get(nodeIdx).getName(); 105 } 106 else 107 return null; 103 108 } 104 109 -
xssim/branches/tpiontek/src/example/timeestimation/ExecTimeEstimationPlugin.java
r241 r250 47 47 double remainingLength = task.getLength() * (1- completionPercentage); 48 48 // do the calculation 49 double execTime = (remainingLength / (cnt * speed/1000)); 49 50 51 int type = Integer.parseInt( task.getJobId()) % 4; 52 53 double factor = 1; 54 if( type == 0 && ((Processor)pes.get(0)).getComputingNode().getCategory().getName().equals("A")) 55 { 56 factor = 0.6; 57 } 58 59 double execTime = (remainingLength / (cnt * (double)speed * factor / 1000)); 60 50 61 51 62 // if the result is very close to 0, but less then one millisecond then round this result to 0.001 … … 56 67 // time is measured in integer units, so get the nearest execTime int value. 57 68 execTime = Math.ceil(execTime); 69 58 70 return execTime; 59 71 } -
xssim/branches/tpiontek/src/test/rewolucja/energy/profile/implementation/ComputingNodePowerProfile.java
r214 r250 54 54 return 0; 55 55 else if(powerState == PowerState.ON) 56 return 750; 57 else return 500; 56 { 57 if( computingNode.getCategory().getName().equals("A")) 58 return 240; 59 else if( computingNode.getCategory().getName().equals("B")) 60 return 95; 61 } 62 63 64 return 150; 58 65 } 59 66
Note: See TracChangeset
for help on using the changeset viewer.