The goal of this study is to establish task management schemes on many-many core systems. Unlike operating systems we are using desktop PCs, one processor in a many-core system attaches few resources for example small amount of local memory, small ALUs, no cache support. Such many core systems need the scheme to distribute instructions, and to manage instructions while running the system since applications running on the processors will be changed by the situation users are using the system. For the distribution of instructions, you will develop a small program to read initial programs from the network. Inside the program, the function of the context switch, scheduling policies, and communication with master scheduler will be included.
At the first step, we are going to use gem-5 multiprocessor simulator. You will implement c mesh topology on this simulator and small programs to test multiprocessor simulation environment. Simultaneously, you will survey several algorithms for real-time multi-task scheduling for multiprocessor from references.
For your thesis, you will put some result running parallel programs with task scheduling with a different number of processors and number of tasks.
You are going to write four reports before starting to write your thesis.