aboutsummaryrefslogtreecommitdiffstats
path: root/gen/edf_generators.py
diff options
context:
space:
mode:
authorGlenn Elliott <gelliott@cs.unc.edu>2014-01-18 16:20:45 -0500
committerGlenn Elliott <gelliott@cs.unc.edu>2014-01-18 16:20:45 -0500
commit424917db79a1e8855c5e867bcc602476899fa28e (patch)
tree0f2cc2598e664f1d42d80451f7ff986b426fcd97 /gen/edf_generators.py
parent398389d33ce3e1cb356c6415ffced2656fb7562e (diff)
Allow polluter/splitting span the same task set
Diffstat (limited to 'gen/edf_generators.py')
-rw-r--r--gen/edf_generators.py15
1 files changed, 9 insertions, 6 deletions
diff --git a/gen/edf_generators.py b/gen/edf_generators.py
index 7a30b4f..33f52be 100644
--- a/gen/edf_generators.py
+++ b/gen/edf_generators.py
@@ -84,6 +84,9 @@ class EdfPgmGenerator(gen.Generator):
84 gen.Generator._dist_option('depth_factor', ['uni-medium'], 84 gen.Generator._dist_option('depth_factor', ['uni-medium'],
85 ecrts14.NAMED_HEIGHT_FACTORS, 85 ecrts14.NAMED_HEIGHT_FACTORS,
86 'Depth of graphs.'), 86 'Depth of graphs.'),
87 gen.Generator._dist_option('clustering', ['L1', 'L2', 'L3', 'ALL'],
88 {},
89 'Clustering configurations'),
87 gen.Generator._dist_option('partitions', ['no_cache', 'parallel', 'cache_aware'], 90 gen.Generator._dist_option('partitions', ['no_cache', 'parallel', 'cache_aware'],
88 PARTITION_METHOD, 91 PARTITION_METHOD,
89 'Partition methods.'), 92 'Partition methods.'),
@@ -105,13 +108,10 @@ class EdfPgmGenerator(gen.Generator):
105 gen.Generator._dist_option('task_util', ['uni-light'], 108 gen.Generator._dist_option('task_util', ['uni-light'],
106 NAMED_UTILIZATIONS, 109 NAMED_UTILIZATIONS,
107 'Task utilization.'), 110 'Task utilization.'),
108 gen.Generator._dist_option('polluters', False, 111 gen.Generator._dist_option('polluters', [False, True],
109 {}, 112 {},
110 'Polluters.'), 113 'Polluters.'),
111# gen.Generator._dist_option('release_master', False, 114 gen.Generator._dist_option('job_splitting', [False, True],
112# {},
113# 'Release master.'),
114 gen.Generator._dist_option('job_splitting', True,
115 {}, 115 {},
116 'Job splitting.'), 116 'Job splitting.'),
117 gen.Generator._dist_option('ovh_type', 'max', 117 gen.Generator._dist_option('ovh_type', 'max',
@@ -247,6 +247,8 @@ class CflSplitPgmGenerator(EdfPgmGenerator):
247 else: 247 else:
248 assert False 248 assert False
249 249
250 exp_params['fan_in_cap'] = int(exp_params['fan_in_cap'])
251
250 dp.nr_clusters = cpus / cluster_sz 252 dp.nr_clusters = cpus / cluster_sz
251 assert dp.nr_clusters * cluster_sz == cpus 253 assert dp.nr_clusters * cluster_sz == cpus
252 254
@@ -261,6 +263,7 @@ class CflSplitPgmGenerator(EdfPgmGenerator):
261 # compute split factor 263 # compute split factor
262 working_ts = ts 264 working_ts = ts
263 partitions = get_partitions(working_ts, dp.nr_clusters, cluster_sz) 265 partitions = get_partitions(working_ts, dp.nr_clusters, cluster_sz)
264 is_srt_sched = split.compute_splits_nolock(overheads, False, working_ts, partitions, bypass_split = not dp.job_splitting) 266 do_splits = dp.job_splitting == 'True'
267 is_srt_sched = split.compute_splits_nolock(overheads, False, working_ts, partitions, bypass_split = not do_splits)
265 268
266 return True, working_ts 269 return True, working_ts