Adaptive on-the-fly application performance modeling for many cores

Resource management for a many-core system entails allocating cores to applications and binding tasks of the applications to particular cores. Accurate on-the-fly estimates of different core allocations w.r.t. application performance are required before binding the tasks to cores for execution efficiency. We propose an adaptive on-the-fly application performance model that largely alleviates this increasingly important problem. It allows reacting to spontaneous workload variations and it considers topological properties of resources. Extensive evaluations show that the average estimation error is reduced from 14.7% to 4.5%, resulting in high quality of on-the-fly adaptive application mappings. Our work is a first milestone towards optimality of systems that exhibit a high degree of spontaneous workload variations.

[1]  Salim Hariri,et al.  Performance-Effective and Low-Complexity Task Scheduling for Heterogeneous Computing , 2002, IEEE Trans. Parallel Distributed Syst..

[2]  L. Carro,et al.  Time and energy efficient mapping of embedded applications onto NoCs , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[3]  Meikang Qiu,et al.  Extending Amdahl’s law and Gustafson’s law by evaluating interconnections on multi-core processors , 2013, The Journal of Supercomputing.

[4]  Qian Zhu,et al.  Resource Provisioning with Budget Constraints for Adaptive Applications in Cloud Environments , 2010, IEEE Transactions on Services Computing.

[5]  Juha Plosila,et al.  Mapping multiple applications with unbounded and bounded number of cores on many-core networks-on-chip , 2013, Microprocess. Microsystems.

[6]  Henry Hoffmann,et al.  SEEC: A Framework for Self-aware Management of Multicore Resources , 2011 .

[7]  Henry Hoffmann,et al.  Application heartbeats: a generic interface for specifying program performance and goals in autonomous computing environments , 2010, ICAC '10.

[8]  Allen B. Downey,et al.  A parallel workload model and its implications for processor allocation , 1996, Proceedings. The Sixth IEEE International Symposium on High Performance Distributed Computing (Cat. No.97TB100183).

[9]  Sally A. McKee,et al.  An Approach to Performance Prediction for Parallel Applications , 2005, Euro-Par.

[10]  P. Sadayappan,et al.  Moldable Parallel Job Scheduling Using Job Efficiency: An Iterative Approach , 2006, JSSPP.

[11]  Wolfgang Schröder-Preikschat,et al.  DistRM: Distributed resource management for on-chip many-core systems , 2011, 2011 Proceedings of the Ninth IEEE/ACM/IFIP International Conference on Hardware/Software Codesign and System Synthesis (CODES+ISSS).

[12]  Iraklis Anagnostopoulos,et al.  Distributed run-time resource management for malleable applications on many-core platforms , 2013, 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC).

[13]  J. Kubiatowicz,et al.  Resource Management in the Tessellation Manycore OS ∗ , 2010 .

[14]  Thomas Canhao Xu,et al.  Tree-model based mapping for energy-efficient and low-latency Network-on-Chip , 2010, 13th IEEE Symposium on Design and Diagnostics of Electronic Circuits and Systems.