DocumentCode :
3369921
Title :
Machine learning based online performance prediction for runtime parallelization and task scheduling
Author :
Li, Jiangtian ; Ma, Xiaosong ; Singh, Karan ; Schulz, Martin ; De Supinski, Bronis R. ; McKee, Sally A.
Author_Institution :
Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC
fYear :
2009
fDate :
26-28 April 2009
Firstpage :
89
Lastpage :
100
Abstract :
With the emerging many-core paradigm, parallel programming must extend beyond its traditional realm of scientific applications. Converting existing sequential applications as well as developing next-generation software requires assistance from hardware, compilers and runtime systems to exploit parallelism transparently within applications. These systems must decompose applications into tasks that can be executed in parallel and then schedule those tasks to minimize load imbalance. However, many systems lack a priori knowledge about the execution time of all tasks to perform effective load balancing with low scheduling overhead. In this paper, we approach this fundamental problem using machine learning techniques first to generate performance models for all tasks and then applying those models to perform automatic performance prediction across program executions. We also extend an existing scheduling algorithm to use generated task cost estimates for online task partitioning and scheduling. We implement the above techniques in the pR framework, which transparently parallelizes scripts in the popular R language, and evaluate their performance and overhead with both a real-world application and a large number of synthetic representative test scripts. Our experimental results show that our proposed approach significantly improves task partitioning and scheduling, with maximum improvements of 21.8%, 40.3% and 22.1% and average improvements of 15.9%, 16.9% and 4.2% for LMM (a real R application) and synthetic test cases with independent and dependent tasks, respectively.
Keywords :
authoring languages; learning (artificial intelligence); parallel programming; scheduling; task analysis; R language; automatic performance prediction; machine learning; next-generation software; online performance prediction; online task partitioning; pR framework; parallel programming; program execution; runtime parallelization; scripting language; task cost estimates; task scheduling; Application software; Costs; Hardware; Load management; Machine learning; Parallel programming; Predictive models; Runtime; Scheduling algorithm; Testing; Artificial Neural Networks; Automatic Task Scheduling; Performance Prediction; Scripting Languages;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Performance Analysis of Systems and Software, 2009. ISPASS 2009. IEEE International Symposium on
Conference_Location :
Boston, MA
Print_ISBN :
978-1-4244-4184-6
Type :
conf
DOI :
10.1109/ISPASS.2009.4919641
Filename :
4919641
Link To Document :
بازگشت