Ejemplo n.º 1
0
def generate_taskset_files(util_name, period_name, cap, number):
    generator = mkgen(NAMED_UTILIZATIONS[util_name],
                      NAMED_PERIODS[period_name])
    generated_sets = []
    for i in range(number):
        taskset = generator(max_util=cap, time_conversion=ms2us)
        filename = "{0}_{1}_{2}_{3}".format(util_name, period_name, cap, i)
        write(taskset, filename)
        generated_sets.append(filename)
    return generated_sets
Ejemplo n.º 2
0
def generate_taskset_files(util_name, period_name, cap, number):
    generator = mkgen(NAMED_UTILIZATIONS[util_name],
                      NAMED_PERIODS[period_name])
    generated_sets = []
    for i in range(number):
        taskset = generator(max_util=cap, time_conversion=ms2us)
        filename = "{0}_{1}_{2}_{3}".format(util_name,
                                            period_name, cap, i)
        write(taskset, filename)
        generated_sets.append(filename)
    return generated_sets
def generate_uniform_task_number(util_name, cap, number):
	period_name = "uni-moderate"
	generator = mkgen(NAMED_UTILIZATIONS[util_name],
										NAMED_PERIODS[period_name])
	generated_moderate_sets = []
	generated_long_sets = []
	filenames = []


	for i in range(number):
		genModerateTaskset = generator(max_util=cap, squeeze=True, time_conversion=ms2us)
		long_filename = "{0}_{1}_{2}_{3}".format(util_name,
																	"uni-long", cap, i)
		moderate_filename = "{0}_{1}_{2}_{3}".format(util_name,
																	"uni-moderate", cap, i)
		longTaskset = []
		moderateTaskset = []

		longTempFile = open(long_filename,"w")
		moderateTempFile = open(moderate_filename,"w")
		for moderateTask in genModerateTaskset:
			# Generate corresponding long period task with same utilization
			longTask = copy.deepcopy(moderateTask)
			longTask.period = ms2us(NAMED_PERIODS["uni-long"]())
			longTask.deadline = longTask.period
			longTask.cost = int(longTask.period * moderateTask.utilization())

			# Store tasks
			longTaskset.append(longTask)
			moderateTaskset.append(moderateTask)

			# Write tasks to files
			longTempFile.write(str(longTask.cost)+" "+str(longTask.period)+"\n")
			moderateTempFile.write(str(moderateTask.cost)+" "+str(moderateTask.period)+"\n")

		longTempFile.close()
		moderateTempFile.close()

		filenames.append(long_filename)
		filenames.append(moderate_filename)

		generated_moderate_sets.append(moderateTaskset)
		generated_long_sets.append(longTaskset)

	print >> sys.stderr, "Generated long task sets: "
	print >> sys.stderr, pprint.pformat(generated_long_sets, indent=2)
	print >> sys.stderr, ""
	print >> sys.stderr, "Generated moderate task sets: "
	print >> sys.stderr, pprint.pformat(generated_moderate_sets, indent=2)

	print >> sys.stderr, ""
	print >> sys.stderr, "Generated filenames"
	print >> sys.stderr, filenames
def generate_taskset_files(util_name, period_name, cap, number):
	generator = mkgen(NAMED_UTILIZATIONS[util_name],
										NAMED_PERIODS[period_name])
	generated_sets = []
	for i in range(number):
			taskset = generator(max_util=cap, squeeze=True, time_conversion=ms2us)
			filename = "{0}_{1}_{2}_{3}".format(util_name,
																					period_name, cap, i)
			tempFile = open(filename,"w")
			for task in taskset:
					tempFile.write(str(task.cost)+" "+str(task.period)+"\n")
			tempFile.close()
			generated_sets.append(filename)
	return generated_sets
Ejemplo n.º 5
0
def generate_lock_taskset_files(util_name, period_name, cap, cslength, nres,
                                pacc, number):
    generator = mkgen(NAMED_UTILIZATIONS[util_name],
                      NAMED_PERIODS[period_name])
    generated_sets = []
    for i in range(number):
        taskset = generator(max_util=cap, time_conversion=ms2us)
        resources.initialize_resource_model(taskset)
        for task in taskset:
            for res_id in range(nres):
                if random.random() < pacc:
                    nreqs = random.randint(1, 5)
                    length = CSLENGTH[cslength]
                    for j in range(nreqs):
                        task.resmodel[res_id].add_request(length())
        filename = "{0}_{1}_{2}_{3}_{4}_{5}_{6}".format(
            util_name, period_name, cap, cslength, nres, pacc, i)
        write(taskset, filename)
        generated_sets.append(filename)
    return generated_sets
Ejemplo n.º 6
0
def generate_lock_taskset_files(util_name, period_name, cap,
                                cslength, nres, pacc, number):
    generator = mkgen(NAMED_UTILIZATIONS[util_name],
                      NAMED_PERIODS[period_name])
    generated_sets = []
    for i in range(number):
        taskset = generator(max_util=cap, time_conversion=ms2us)
        resources.initialize_resource_model(taskset)
        for task in taskset:
            for res_id in range(nres):
                if random.random() < pacc:
                    nreqs = random.randint(1, 5)
                    length = CSLENGTH[cslength]
                    for j in range(nreqs):
                       task.resmodel[res_id].add_request(length())
        filename = "{0}_{1}_{2}_{3}_{4}_{5}_{6}".format(
                util_name, period_name, cap, cslength, nres, pacc,
                i)
        write(taskset, filename)
        generated_sets.append(filename)
    return generated_sets