Nothing Special   »   [go: up one dir, main page]

skip to main content
10.5555/1757044.1757045guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Provably efficient two-level adaptive scheduling

Published: 26 June 2006 Publication History

Abstract

Multiprocessor scheduling in a shared multiprogramming environment can be structured in two levels, where a kernel-level job scheduler allots processors to jobs and a user-level thread scheduler maps the ready threads of a job onto the allotted processors. This paper presents two-level scheduling schemes for scheduling "adaptive" multithreaded jobs whose parallelism can change during execution. The AGDEQ algorithm uses dynamic-equipartioning (DEQ) as a job-scheduling policy and an adaptive greedy algorithm (A-Greedy) as the thread scheduler. The ASDEQ algorithm uses DEQ for job scheduling and an adaptive work-stealing algorithm (A-Steal) as the thread scheduler. AGDEQ is suitable for scheduling in centralized scheduling environments, and ASDEQ is suitable for more decentralized settings. Both two-level schedulers achieve O(1)-competitiveness with respect to makespan for any set of multithreaded jobs with arbitrary release time. They are also O(1)- competitive for any batched jobs with respect to mean response time. Moreover, because the length of the scheduling quantum can be adjusted to amortize the cost of context-switching during processor reallocation, our schedulers provide control over the scheduling overhead and ensure effective utilization of processors.

References

[1]
Kunal Agrawal, Yuxiong He, Wen Jing Hsu, and Charles E. Leiserson. Adaptive task scheduling with parallelism feedback. In PPoPP, 2006.
[2]
Kunal Agrawal, Yuxiong He, and Charles E. Leiserson. An empirical evaluation of work stealing with parallelism feedback. In ICDCS, 2006.
[3]
Kunal Agrawal, Yuxiong He, and Charles E. Leiserson. Work stealing with parallelism feedback. Unpublished manuscripts, 2006.
[4]
Nimar S. Arora, Robert. D. Blumofe, and C. Greg Plaxton. Thread scheduling for multiprogrammed multiprocessors. In SPAA, pages 119-129, Puerto Vallarta, Mexico, 1998.
[5]
Nir Avrahami and Yossi Azar. Minimizing total flow time and total completion time with immediate dispatching. In SPAA, pages 11-18, New York, NY, USA, 2003. ACM Press.
[6]
Nikhil Bansal, Kedar Dhamdhere, Jochen Konemann, and Amitabh Sinha. Nonclairvoyant scheduling for minimizing mean slowdown. Algorithmica, 40(4):305- 318, 2004.
[7]
Luca Becchetti and Stefano Leonardi. Nonclairvoyant scheduling to minimize the total flow time on single and parallel machines. J. ACM, 51(4):517-539, 2004.
[8]
Guy Blelloch, Phil Gibbons, and Yossi Matias. Provably efficient scheduling for languages with fine-grained parallelism. Journal of the ACM, 46(2):281-321, 1999.
[9]
Guy E. Blelloch, Phillip B. Gibbons, and Yossi Matias. Provably efficient scheduling for languages with fine-grained parallelism. In SPAA, pages 1-12, Santa Barbara, California, 1995.
[10]
Guy E. Blelloch and John Greiner. A provable time and space efficient implementation of NESL. In ICFP, pages 213-225, 1996.
[11]
Robert D. Blumofe. Executing Multithreaded Programs Efficiently. PhD thesis, Massachusetts Institute of Technology, Cambridge, MA, USA, 1995.
[12]
Robert D. Blumofe and Charles E. Leiserson. Space-efficient scheduling of multithreaded computations. SIAM Journal on Computing, 27(1):202-229, February 1998.
[13]
Robert D. Blumofe and Charles E. Leiserson. Scheduling multithreaded computations by work stealing. Journal of the ACM, 46(5):720-748, 1999.
[14]
T. Brecht, Xiaotie Deng, and Nian Gu. Competitive dynamic multiprocessor allocation for parallel applications. In Parallel and Distributed Processing, pages 448-455. IEEE, 1995.
[15]
R. P. Brent. The parallel evaluation of general arithmetic expressions. Journal of the ACM, pages 201-206, 1974.
[16]
F. Warren Burton and M. Ronan Sleep. Executing functional programs on a virtual tree of processors. In FPCA, pages 187-194, Portsmouth, New Hampshire, October 1981.
[17]
C. Chekuri, R. Motwani, B. Natarajan, and C. Stien. Approximation techniques for average completion time scheduling. In SODA, pages 609-618, Philadelphia, PA, USA, 1997. Society for Industrial and Applied Mathematics.
[18]
Jianer Chen and Antonio Miranda. A polynomial time approximation scheme for general multiprocessor job scheduling (extended abstract). In STOC, pages 418-427, New York, NY, USA, 1999. ACM Press.
[19]
Su-Hui Chiang and Mary K. Vernon. Dynamic vs. static quantum-based parallel processor allocation. In JSSPP, pages 200-223, Honolulu, Hawaii, United States, 1996.
[20]
Xiaotie Deng and Patrick Dymond. On multiprocessor system scheduling. In SPAA, pages 82-88, 1996.
[21]
Xiaotie Deng, Nian Gu, Tim Brecht, and KaiCheng Lu. Preemptive scheduling of parallel jobs on multiprocessors. In SODA, pages 159-167. Society for Industrial and Applied Mathematics, 1996.
[22]
Xiaotie Deng, Nian Gu, Tim Brecht, and KaiCheng Lu. Preemptive scheduling of parallel jobs on multiprocessors. In SODA, pages 159-167, Philadelphia, PA, USA, 1996. Society for Industrial and Applied Mathematics.
[23]
Jianzhong Du and Joseph Y.-T. Leung. Complexity of scheduling parallel task systems. SIAM J. Discrete Math., 2(4):473-487, 1989.
[24]
Jeff Edmonds. Scheduling in the dark. In STOC, pages 179-188, 1999.
[25]
Jeff Edmonds, Donald D. Chinn, Timothy Brecht, and Xiaotie Deng. Nonclairvoyant multiprocessor scheduling of jobs with changing execution characteristics. Journal of Scheduling, 6(3):231-250, 2003.
[26]
Zhixi Fang, Peiyi Tang, Pen-Chung Yew, and Chuan-Qi Zhu. Dynamic processor self-scheduling for general parallel nested loops. IEEE Transactions on Computers, 39(7):919-929, 1990.
[27]
Dror G. Feitelson. Job scheduling in multiprogrammed parallel systems (extended version). Technical report, IBM Research Report RC 19790 (87657) 2nd Revision, 1997.
[28]
R. L. Graham. Bounds on multiprocessing anomalies. SIAM Journal on Applied Mathematics, pages 17(2):416-429, 1969.
[29]
Nian Gu. Competitive analysis of dynamic processor allocation strategies. Master's thesis, York University, 1995.
[30]
Leslie A. Hall, David B. Shmoys, and Joel Wein. Scheduling to minimize average completion time: off-line and on-line algorithms. In SODA, pages 142-151, Philadelphia, PA, USA, 1996. Society for Industrial and Applied Mathematics.
[31]
Robert H. Halstead, Jr. Implementation of Multilisp: Lisp on a multiprocessor. In LFP, pages 9-17, Austin, Texas, August 1984.
[32]
S. F. Hummel and E. Schonberg. Low-overhead scheduling of nested parallelism. IBM Journal of Research and Development, 35(5-6):743-765, 1991.
[33]
Klaus Jansen and Lorant Porkolab. Linear-time approximation schemes for scheduling malleable parallel tasks. In SODA, pages 490-498, Philadelphia, PA, USA, 1999. Society for Industrial and Applied Mathematics.
[34]
Klaus Jansen and Hu Zhang. Scheduling malleable tasks with precedence constraints. In SPAA, pages 86-95, New York, NY, USA, 2005. ACM Press.
[35]
Bala Kalyanasundaram and Kirk R. Pruhs. Minimizing flow time nonclairvoyantly. J. ACM, 50(4):551-567, 2003.
[36]
Scott T. Leutenegger and Mary K. Vernon. The performance of multiprogrammed multiprocessor scheduling policies. In SIGMETRICS, pages 226-236, Boulder, Colorado, United States, 1990.
[37]
Steven Lucco. A dynamic scheduling method for irregular parallel programs. In PLDI, pages 200-211, New York, NY, USA, 1992. ACM Press.
[38]
Walter Ludwig and Prasoon Tiwari. Scheduling malleable and nonmalleable parallel tasks. In SODA, pages 167-176, Philadelphia, PA, USA, 1994. Society for Industrial and Applied Mathematics.
[39]
Shikharesh Majumdar, Derek L. Eager, and Richard B. Bunt. Scheduling in multiprogrammed parallel systems. In SIGMETRICS, pages 104-113, Santa Fe, New Mexico, United States, 1988.
[40]
Xavier Martorell, Julita Corbalán, Dimitrios S. Nikolopoulos, Nacho Navarro, Eleftherios D. Polychronopoulos, Theodore S. Papatheodorou, and Jesús Labarta. A tool to schedule parallel applications on multiprocessors: The NANOS CPU manager. In Dror G. Feitelson and Larry Rudolph, editors, JSSPP, pages 87-112, 2000.
[41]
Cathy McCann, Raj Vaswani, and John Zahorjan. A dynamic processor allocation policy for multiprogrammed shared-memory multiprocessors. ACM Transactions on Computer Systems, 11(2):146-178, 1993.
[42]
Rajeev Motwani, Steven Phillips, and Eric Torng. Non-clairvoyant scheduling. In SODA, pages 422-431, 1993.
[43]
Gregory Mounie, Christophe Rapine, and Dennis Trystram. Efficient approximation algorithms for scheduling malleable tasks. In SPAA, pages 23-32, New York, NY, USA, 1999. ACM Press.
[44]
Girija J. Narlikar and Guy E. Blelloch. Space-efficient scheduling of nested parallelism. ACM Transactions on Programming Languages and Systems, 21(1):138- 173, 1999.
[45]
Emilia Rosti, Evgenia Smirni, Lawrence W. Dowdy, Giuseppe Serazzi, and Brian M. Carlson. Robust partitioning schemes of multiprocessor systems. Performance Evaluation, 19(2-3):141-165, 1994.
[46]
Emilia Rosti, Evgenia Smirni, Giuseppe Serazzi, and Lawrence W. Dowdy. Analysis of non-work-conserving processor partitioning policies. In IPPS, pages 165-181, 1995.
[47]
Larry Rudolph, Miriam Slivkin-Allalouf, and Eli Upfal. A simple load balancing scheme for task allocation in parallel machines. In SPAA, pages 237-245, Hilton Head, South Carolina, July 1991.
[48]
Uwe Schwiegelshohn, Walter Ludwig, Joel L. Wolf, John Turek, and Philip S. Yu. Smart smart bounds for weighted response time scheduling. SIAM J. Comput., 28(1):237-253, 1998.
[49]
Siddhartha Sen. Dynamic processor allocation for adaptively parallel jobs. Master's thesis, Massachusetts Institute of technology, 2004.
[50]
Kenneth C. Sevcik. Application scheduling and processor allocation in multiprogrammed parallel processing systems. Performance Evaluation, 19(2-3):107-140, 1994.
[51]
D. B. Shmoys, J. Wein, and D. P.Williamson. Scheduling parallel machines online. In FOCS, pages 131-140, 1991.
[52]
B. Song. Scheduling adaptively parallel jobs. Master's thesis, Massachusetts Institute of Technology, 1998.
[53]
Mark S. Squillante. On the benefits and limitations of dynamic partitioning in parallel computer systems. In IPPS, pages 219-238, 1995.
[54]
Kaushik Guha Timothy B. Brecht. Using parallel program characteristics in dynamic processor allocation policies. Performance Evaluation, 27-28:519-539, 1996.
[55]
Andrew Tucker and Anoop Gupta. Process control and scheduling issues for multiprogrammed shared-memory multiprocessors. In SOSP, pages 159-166, New York, NY, USA, 1989. ACM Press.
[56]
John Turek, Walter Ludwig, Joel L. Wolf, Lisa Fleischer, Prasoon Tiwari, Jason Glasgow, Uwe Schwiegelshohn, and Philip S. Yu. Scheduling parallelizable tasks to minimize average response time. In SPAA, pages 200-209, 1994.
[57]
John Turek, Uwe Schwiegelshohn, Joel L. Wolf, and Philip S. Yu. Scheduling parallel tasks to minimize average response time. In SODA, pages 112-121, Philadelphia, PA, USA, 1994. Society for Industrial and Applied Mathematics.
[58]
Peng Yang, Dirk Desmet, Francky Catthoor, and Diederik Verkest. Dynamic scheduling of concurrent tasks with cost performance trade-off. In CASES, pages 103-109, New York, NY, USA, 2000. ACM Press.
[59]
K. K. Yue and D. J. Lilja. Implementing a dynamic processor allocation policy for multiprogrammed parallel applications in the Solaris™ operating system. Concurrency and Computation-Practice and Experience, 13(6):449-464, 2001.
[60]
John Zahorjan and Cathy McCann. Processor scheduling in shared memory multiprocessors. In SIGMETRICS, pages 214-225, Boulder, Colorado, United States, May 1990.

Cited By

View all

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
JSSPP'06: Proceedings of the 12th international conference on Job scheduling strategies for parallel processing
June 2006
256 pages
ISBN:9783540710349
  • Editors:
  • Eitan Frachtenberg,
  • Uwe Schwiegelshohn

Publisher

Springer-Verlag

Berlin, Heidelberg

Publication History

Published: 26 June 2006

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 02 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2015)HRFProceedings of the 12th ACM International Conference on Computing Frontiers10.1145/2742854.2742870(1-8)Online publication date: 6-May-2015
  • (2011)Dynamic workload balancing deques for branch and bound algorithms in the message passing interfaceInternational Journal of High Performance Systems Architecture10.1504/IJHPSA.2011.0404613:2/3(77-86)Online publication date: 1-May-2011
  • (2010)The joschka systemProceedings of the 23rd international conference on Architecture of Computing Systems10.1007/978-3-642-11950-7_8(73-86)Online publication date: 22-Feb-2010
  • (2009)Non-clairvoyant speed scaling for batched parallel jobs on multiprocessorsProceedings of the 6th ACM conference on Computing frontiers10.1145/1531743.1531760(99-108)Online publication date: 18-May-2009
  • (2007)Adaptive scheduling of parallel computations for SPMD tasksProceedings of the 2007 international conference on Computational science and Its applications - Volume Part II10.5555/1802954.1802959(38-50)Online publication date: 26-Aug-2007
  • (2007)Adaptive work stealing with parallelism feedbackProceedings of the 12th ACM SIGPLAN symposium on Principles and practice of parallel programming10.1145/1229428.1229448(112-120)Online publication date: 14-Mar-2007

View Options

View options

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media