Title :
NO2: Speeding up Parallel Processing of Massive Compute-Intensive Tasks
Author :
Yongwei Wu ; Weichao Guo ; Jinglei Ren ; Xun Zhao ; Weimin Zheng
Author_Institution :
Dept. of Comput. Sci. & Technol., Tsinghua Univ., Beijing, China
Abstract :
Large-scale computing frameworks, either tenanted on the cloud or deployed in the high-end local cluster, have become an indispensable software infrastructure to support numerous enterprise and scientific applications. Tasks executed on these frameworks are generally classified into data-intensive and compute-intensive ones. However, most existing frameworks, led by MapReduce, are mainly suitable for data-intensive tasks. Their task schedulers assume that the proportion of data I/O reflects the task progress and state. Unfortunately, this assumption does not apply to most compute-intensive tasks. Due to biased estimation of task progress, traditional frameworks cannot timely cut off outliers and therefore largely prolong execution time when performing compute-intensive tasks. We propose a new framework designed for compute-intensive tasks. By using instrumentation and automatic instrument point selector, our framework estimates the compute-intensive task progress without resorting to data I/O. We employ a clustering method to identify outliers at runtime and perform speculative execution/aborting, speeding up task execution by up to 25%. Moreover, our improvement to bare instrumentation limits overhead within 0.1%, and the aborting-based execution only introduces 10% more average CPU usage. Low overhead and resource consumption make our framework practically usable in the production environment.
Keywords :
parallel processing; scheduling; CPU usage; MapReduce; aborting-based execution; automatic instrument point selector; biased estimation; compute-intensive task progress; data-intensive tasks; high-end local cluster; indispensable software infrastructure; large-scale computing frameworks; massive compute-intensive tasks; parallel processing; production environment; task execution; task schedulers; Binary codes; Instruments; Java; Processor scheduling; Runtime; Servers; Distributed system; compute-intensive; parallel processing; resource management;
Journal_Title :
Computers, IEEE Transactions on
DOI :
10.1109/TC.2013.132