Options
Cache-aware task scheduling for multi-core architectures
Date Issued
2009
Date
2009
Author(s)
Yang, Teng-Feng
Abstract
As the technology shrink and the increasing of the number of transistors on a single chip, multi-core processors have become major implementations to build high-performance processors. In multi-core processors, the processing cores may have separate private caches and/or share a large common cache. Since the system performance highly depends on the cache utilization, the data access pattern should be optimized to improve performance. A good task scheduling is an effective way to optimize data access pattern. However,he cache organizations of multi-core systems are quite complex and it is hard to optimize the scheduling manually. Therefore, a good tool is required. In this paper, we try to minimize capacity and coherence misses through affinity improvement, footprint reduction and coherence traffic minimization. We propose a scheduling policy which integrates these techniques to reduce cache misses effectively. We also implement the policy in the scheduler of a parallel programming model, Thread Building Blocks(TBB). Programmers can specify the footprint and sharing group of each task through API provided by TBB easily, and the scheduler would optimize the cache utilization accordingly. We believe that this tool can ease the programming complexity by hiding the details for cache utilization optimization to provide high performance.
Subjects
Multi-core
Task scheduling
Cache
Type
thesis
File(s)
No Thumbnail Available
Name
ntu-98-R96922040-1.pdf
Size
23.32 KB
Format
Adobe PDF
Checksum
(MD5):ed19c6e6281c1a9dbf56f6cc279ae666