Workload and variation aware thread scheduling for heterogeneous multi-processor

Optimal thread-to-core mapping is a critical issue for performance improvement in a heterogeneous multi-core processor that consists of out-of-order cores and in-order cores. Through the scheduling, threads with heavy workloads can be executed in an out-of-order core, whereas other threads can be concurrently executed in in-order cores. In addition, a core speed variation is deemed a factor to improve the performance; therefore, a scheduler has to handle the heterogeneity to derive optimal speedup. In this paper, we propose the workload aware and estimation-based dynamic thread scheduling for a heterogeneous multi-core. The scheduler profiles the workload of threads and classifies the threads as sequential or parallel threads and detects critical sections that are the bottleneck of the program. Based on the profiled information, the scheduler estimates the expected performance of each core. Core monitoring process measures the speed variation of each core concurrently. Using the information of threads and cores, the scheduler allocates the thread to the appropriate processor core dynamically.

[1]  Onur Mutlu,et al.  Accelerating critical section execution with asymmetric multi-core architectures , 2009, ASPLOS.

[2]  Pedro López,et al.  Multi2Sim: A Simulation Framework to Evaluate Multicore-Multithreaded Processors , 2007, 19th International Symposium on Computer Architecture and High Performance Computing (SBAC-PAD'07).

[3]  John L. Henning SPEC CPU2006 benchmark descriptions , 2006, CARN.

[4]  Diana Marculescu,et al.  Variation-aware dynamic voltage/frequency scaling , 2009, 2009 IEEE 15th International Symposium on High Performance Computer Architecture.

[5]  G. Amdhal,et al.  Validity of the single processor approach to achieving large scale computing capabilities , 1967, AFIPS '67 (Spring).

[6]  Lieven Eeckhout,et al.  Scheduling heterogeneous multi-cores through performance impact estimation (PIE) , 2012, 2012 39th Annual International Symposium on Computer Architecture (ISCA).

[7]  Kai Li,et al.  The PARSEC benchmark suite: Characterization and architectural implications , 2008, 2008 International Conference on Parallel Architectures and Compilation Techniques (PACT).

[8]  Norman P. Jouppi,et al.  Single-ISA heterogeneous multi-core architectures for multithreaded workload performance , 2004, Proceedings. 31st Annual International Symposium on Computer Architecture, 2004..