Font Size: a A A

Linux Scheduling Algorithm Optimization And Extension For Multi-core Processor

Posted on:2011-09-19Degree:MasterType:Thesis
Country:ChinaCandidate:L T KouFull Text:PDF
GTID:2178360305995209Subject:Computer application technology
Abstract/Summary:PDF Full Text Request
This paper mainly research how to make the Linux operating system support Intel multi-core processors better. In order to support Intel multi-core processors better, we should in-depth study multi-core processor architecture. Because the current Linux operating system supports symmetric multi-processor very well, and the multi-core processor's architecture is very similar with symmetric multi-processor. Therefore, when we designed Linux operating system for supporting multi-core processor, we will base on Linux source code that has already supported the symmetric multi-processor well. This paper has analyzed similarities and differences between the multi-core processors and the symmetric multi-processor. Through analyzing multi-core processors, we found that there are two key factors affecting its performance,:one is L2 cache hit rate of multi-core processor. the other is the utilization rate of multi-core processor line. By in-depth researching these two factors,we found that the greatest factor which can improve these two factors is the operating system's schedule algorithms. Therefore, for these two issues, this paper presents two kinds of scheduling algorithms, respectively, the first algorithm is called the improved scheduling algorithms of balance set.the second algorithm is called the the threads group assigned cores algorithm base on CPI. Scheduling algorithm of balance set is used to improve the multi-core processors's L2 cache hit rate, compared to the original algorithm,this algorithm has been optimized in three aspects: First, reduce time complexity on calculating the cache miss rate of threads group; Second, reduce time complexity on sorting to group of threads; Third, supporting real-time thread in the new schedule algorithm.Next, analyze the Linux kernel source code. This section Mainly analysize the code module that is related with the schedule algorithm. These include:thread management module, the system initialization module, memory management module, the file system module. The module Which need modify and re-design is the thread management module, So we will focus on this part's source code.In the end, according to the above analysis, we designed and implemented a new algorithm which integrates overhead two kinds of algorithms in one algorithm. And tested performance improvement of the new algorithm by separately running a set of threads on the new algorithm and the old algorithm. Here,we mainly measure improvement of overall system throughput. We illustrate Linux multicore scheduling algorithm's practicality. by the experimental data.
Keywords/Search Tags:Linux multicore scheduling algorithm, L2 cache hit rate, multi-core processor line, re-access distance
PDF Full Text Request
Related items