def read_tasks(path):
	#path = "/home/eghonghonaye/Desktop/tasks.csv"
	task_list = []
	all_task_sets = []
	with open(path) as csv_file:
	    csv_reader = csv.reader(csv_file, delimiter=',')
	    for row in csv_reader:
	    	task_set = ast.literal_eval(row[0])
	    	print(task_set)
	    	for task in task_set:
	    		number = task[0]
	    		period = task[1]
	    		util = task[2]
	    		task_list.append(task_generator.generateTask(number, period, util))#, 15.85955591030769)
	    	all_task_sets.append(task_list)
	    	task_list = []
	return (all_task_sets)
Esempio n. 2
0

def main(task_set, number_of_cores):
    init(task_set)
    sortTask(task_set)
    processor = header.Processor(num_cores=number_of_cores)
    status = jobFit(processor, task_set)

    prepareForOffsetTuning(task_set, processor)
    return status


if __name__ == '__main__':
    task_set = []

    task_set.append(task_generator.generateTask(0, 10000, 0.6796))
    task_set.append(task_generator.generateTask(1, 10000, 0.4074))
    task_set.append(task_generator.generateTask(2, 2000, 0.381))
    '''task_set.append(task_generator.generateTask(0, 1000, 0.8669207464643705))#, 866.9207464643705), 
	task_set.append(task_generator.generateTask(1, 200, 0.7838792955831181))#, 156.77585911662362), 
	task_set.append(task_generator.generateTask(2, 100, 0.24724443080396466))#, 24.724443080396465), 
	task_set.append(task_generator.generateTask(3, 200, 0.7629044722127165))#, 152.5808944425433), 
	task_set.append(task_generator.generateTask(4, 1000, 0.9390510549358302))#, 939.0510549358302)'''

    status = main(task_set, 2)

    print("\n")
    for task in task_set:
        print([(job.task_number, job.job_number, job.starting_time)
               for job in task.task_joblist])
Esempio n. 3
0
        return number_of_cores, partition_task_list


def printPartitions(task_set):
    for task in task_set:
        for job in task.task_joblist:
            print(job.job_number, job.starting_time)
    print(len_partitions, partitions)


if __name__ == '__main__':

    number_of_cores = 4
    task_set = []

    task_set.append(task_generator.generateTask(0, 100, 0.9))  #, 16),
    task_set.append(task_generator.generateTask(1, 200, 0.895))  #, 179),
    task_set.append(task_generator.generateTask(2, 200, 0.5))  #, 50),
    task_set.append(task_generator.generateTask(3, 200, 0.5))  #, 17),
    task_set.append(task_generator.generateTask(4, 100, 0.9))  #, 18),
    task_set.append(task_generator.generateTask(5, 200, 0.8))  #, 3)]
    '''task_set.append(task_generator.generateTask(0, 100, 0.16))#, 16), 
	task_set.append(task_generator.generateTask(1, 200, 0.895))#, 179), 
	task_set.append(task_generator.generateTask(2, 200, 0.25))#, 50), 
	task_set.append(task_generator.generateTask(3, 200, 0.085))#, 17), 
	task_set.append(task_generator.generateTask(4, 100, 0.18))#, 18), 
	task_set.append(task_generator.generateTask(5, 200, 0.015))#, 3)]'''

    for test in [
            "CWEDF", "RMFP", "davis", "DBF", "jeffay", "cwedfSAG", "fpSAG"
    ]:
Esempio n. 4
0
            if lhs < rhs:
                return False
    return True


def main(task_list):
    init(task_list)
    status = schedulabilityJeffay(task_list)
    #print(status)
    return status


if __name__ == '__main__':
    task_list = []

    task_list.append(task_generator.generateTask(
        0, 500, 0.07943275104355482))  #, 39.71637552177741),
    task_list.append(task_generator.generateTask(
        1, 10, 0.02589823696988874))  #, 0.2589823696988874),
    task_list.append(task_generator.generateTask(
        2, 100, 0.12394618024647497))  #, 12.394618024647496),
    task_list.append(task_generator.generateTask(
        3, 1000, 0.012127272637004572))  #, 12.127272637004571),
    task_list.append(task_generator.generateTask(
        4, 100, 0.1585955591030769))  #, 15.85955591030769)

    main(task_list)

    print("[task.number, task.WCRT, task.rel_deadline, task.ex_time]")
    for task in task_list:
        print([task.number, task.WCRT, task.rel_deadline, task.ex_time])
    for task in task_list:
        if task.WCRT > task.deadline:
            return False
    return True


if __name__ == '__main__':
    task_list = []
    '''task_list.append(task_generator.generateTask(0, 500, 0.07943275104355482))#, 39.71637552177741), 
	task_list.append(task_generator.generateTask(1, 10, 0.02589823696988874))#, 0.2589823696988874),
	task_list.append(task_generator.generateTask(2, 100, 0.12394618024647497))#, 12.394618024647496), 
	task_list.append(task_generator.generateTask(3, 1000, 0.012127272637004572))#, 12.127272637004571), 
	task_list.append(task_generator.generateTask(4, 100, 0.1585955591030769))#, 15.85955591030769)
	'''

    task_list.append(task_generator.generateTask(0, 2.5,
                                                 0.4))  #, 39.71637552177741),
    task_list.append(task_generator.generateTask(
        1, 3.5, 0.2857142857142857))  #, 0.2589823696988874),
    task_list.append(task_generator.generateTask(
        2, 3.5, 0.2857142857142857))  #, 12.394618024647496),

    main(task_list)

    print("[task.number, task.WCRT, task.rel_deadline, task.ex_time]")
    for task in task_list:
        print([task.number, task.WCRT, task.rel_deadline, task.ex_time])
    '''all_task_sets = rtff.main()

	for task_set in all_task_sets:
		status = main(task_set)
		task_list = [(task.number, task.period, task.utilisation, task.ex_time) for task in task_set]
Esempio n. 6
0
		if len(clique) > cliquesize:
			cliquesize = len(clique)
	return cliquesize


def drawGraph(G):
	node_labels = {node:node for node in G.nodes()}
	nx.draw(G,labels=node_labels)
	plt.show()
	return G

def main(task_set):
	G = buildTaskGraph(task_set)
	cliquesize = findLargestClique(G)
	return cliquesize

if __name__ == '__main__':
	task_set = []
	
	task_set.append(task_generator.generateTask(0, 1000, 0.8669207464643705))#, 866.9207464643705), 
	task_set.append(task_generator.generateTask(1, 200, 0.7838792955831181))#, 156.77585911662362), 
	task_set.append(task_generator.generateTask(2, 100, 0.24724443080396466))#, 24.724443080396465), 
	task_set.append(task_generator.generateTask(3, 200, 0.7629044722127165))#, 152.5808944425433), 
	task_set.append(task_generator.generateTask(4, 1000, 0.9390510549358302))#, 939.0510549358302)


	main(task_set)