- Timestamp:
- 04/13/12 09:35:02 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
xssim/branches/tpiontek/src/simulator/stats/implementation/GSSimStatistics.java
r263 r267 99 99 100 100 protected static final String RAW_TASKS_STATISTICS_OUTPUT_FILE_NAME = "Tasks.txt"; 101 protected static final String CATEGORY_TASKS_STATISTICS_OUTPUT_FILE_NAME = "TasksCategory.txt"; 101 102 protected static final String JOBS_STATISTICS_OUTPUT_FILE_NAME = "Jobs.txt"; 102 103 … … 982 983 ganttDiagramTaskSeriesCollection = new TaskSeriesCollection(); 983 984 ganttDiagramWaitingTimeSeriesCollection = new TaskSeriesCollection(); 985 986 HashMap<String, List<TaskStats>> cat_taskStats = new HashMap<String, List<TaskStats>>(); 987 984 988 985 989 PrintStream taskStatsFile = null; … … 992 996 } 993 997 998 PrintStream taskCategoryStatsFile = null; 999 try { 1000 File file = new File(outputFolderName + STATS_FILE_NAME_PREFIX + simulationIdentifier + "_" 1001 + CATEGORY_TASKS_STATISTICS_OUTPUT_FILE_NAME); 1002 taskCategoryStatsFile = new PrintStream(new FileOutputStream(file)); 1003 } catch (IOException e) { 1004 taskCategoryStatsFile = null; 1005 } 1006 994 1007 PrintStream jobStatsFile = null; 995 1008 if (configuration.createjobsstatistics) { … … 1035 1048 taskStatsList.add(taskStats); 1036 1049 } 1050 1051 String taskID = task.getJobId(); 1052 Integer taskGroupID = Integer.parseInt(taskID) % 4; 1053 1054 List<TaskStats> taskCatStatsList= cat_taskStats.get(taskGroupID.toString()); 1055 1056 if (taskCatStatsList == null) { 1057 taskCatStatsList = new ArrayList<TaskStats>(); 1058 cat_taskStats.put(taskGroupID.toString(), taskCatStatsList); 1059 } 1060 taskCatStatsList.add(taskStats); 1061 1062 1037 1063 } 1038 1064 if (configuration.createjobsstatistics && taskStatsList.size() > 0) { … … 1047 1073 } 1048 1074 } 1049 1075 1076 for(String catID: cat_taskStats.keySet()){ 1077 TaskCategoryStats taskCatStats = createTaskCategoryStats(cat_taskStats.get(catID)); 1078 if (taskCategoryStatsFile != null) { 1079 Object txt = taskCatStats.serialize(serializer); 1080 taskCategoryStatsFile.println(txt); 1081 } 1082 } 1083 1084 1050 1085 if (configuration.createsimulationstatistics) { 1051 1086 accStats.makespan.add(maxCj); … … 1075 1110 } 1076 1111 1112 private TaskCategoryStats createTaskCategoryStats(List<TaskStats> tasksStats) { 1113 1114 String taskID = ((TaskStats) tasksStats.get(0)).getJobID(); 1115 String catID = String.valueOf(Integer.parseInt(taskID) % 4); 1116 TaskCategoryStats taskCatStats = new TaskCategoryStats(catID); 1117 double maxCj = 0; 1118 1119 for (int i = 0; i < tasksStats.size(); i++) { 1120 1121 TaskStats task = (TaskStats) tasksStats.get(i); 1122 taskCatStats.meanTaskStartTime.add(task.getStartTime()); 1123 taskCatStats.meanTaskCompletionTime.add(task.getCompletionTime()); 1124 maxCj = Math.max(maxCj, task.getCompletionTime()); 1125 taskCatStats.meanTaskExecutionTime.add(task.getExecutionTime()); 1126 taskCatStats.meanTaskWaitingTime.add(task.getWaitingTime()); 1127 taskCatStats.meanTaskFlowTime.add(task.getFlowTime()); 1128 taskCatStats.meanTaskGQ_WaitingTime.add(task.getGQ_WaitingTime()); 1129 taskCatStats.lateness.add(task.getLateness()); 1130 taskCatStats.tardiness.add(task.getTardiness()); 1131 } 1132 taskCatStats.makespan.add(maxCj); 1133 1134 return taskCatStats; 1135 } 1136 1077 1137 private JobStats createJobStats(List<TaskStats> tasksStats) { 1078 1138
Note: See TracChangeset
for help on using the changeset viewer.