skip to main content
10.1145/1772954.1772992acmconferencesArticle/Chapter ViewAbstractPublication PagescgoConference Proceedingsconference-collections
research-article

An adaptive task creation strategy for work-stealing scheduling

Authors Info & Claims
Published:24 April 2010Publication History

ABSTRACT

Work-stealing is a key technique in many multi-threading programming languages to get good load balancing. The current work-stealing techniques have a high implementation overhead in some applications and require a large amount of memory space for data copying to assure correctness. They also cannot handle many application programs that have an unbalanced call tree or have no definitive working sets.

In this paper, we propose a new adaptive task creation strategy, called AdaptiveTC, which supports effective work-stealing schemes and also handles the above mentioned problems effectively. As shown in some experimental results, AdaptiveTC runs 2.71x faster than Cilk and 1.72x faster than Tascell for the 16-queen problem with 8 threads.

References

  1. OpenMP Application Program Interface. Version 3.0, 2008.Google ScholarGoogle Scholar
  2. E. Ayguade, A. Duran, J. Hoeflinger, F. Massaioli, and X. Teruel. An Experimental Evaluation of the New OpenMP Tasking Model. In the 20th International Workshop on Languages and Compilers for Parallel Computing, pages 63--77, 2007.Google ScholarGoogle Scholar
  3. Robert D. Blumofe and Charles E. Leiserson. Scheduling multithreaded computations by work stealing. Journal of the ACM, 46(5): 720C--748, 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Robert D. Blumofe, Christopher F. Joerg, Bradley C. Kuszmaul, Charles E. Leiserson, Keith H. Randall, and Yuli Zhou. Cilk: an efficient multithreaded runtime system. In the Fifth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP, pages 207--216, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Philippe Charles, Christian Grothoff, Vijay A. Saraswat, Christopher Donawa, Allan Kielstra, Kemal Ebcioglu, Christoph von Praun, and Vivek Sarkar. X10: an object-oriented approach to nonuniform cluster computing. In the Twentieth Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA, pages 519--538, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. David Chase and Yossi Lev. Dynamic circular work-stealing d-eque. In the seventeenth Annual ACM Symposium on Parallelism in Algorithms and Architectures, SPAA, pages 21C--28, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Shimin Chen, Phillip B. Gibbons, Michael Kozuch, Vasileios Liaskovitis, Anastassia Ailamaki, Guy E. Blelloch, Babak Falsofi, Limor Fix, Nikos Hardavellas, Tod C. Mowry, and Chris Wilkerson. Scheduling Threads for Constructive Cache Sharing on CMPs. In the nineteenth annual ACM symposium on Parallel algorithms and architectures, SPAA, pages 105--115, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Guojing Cong, Sreedhar Kodali, Sriram Krishnamoorthy, Doug Lea, Vijay Saraswat, and Tong Wen. Solving large, irregular graph problems using adaptive work-stealing. In the 2008 37th International Conference on Parallel Processing, pages 536--545, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Alejandro Duran, Julita Corbaln, and Eduard Ayguad. Evaluation of Openmp Task Scheduling Strategies. In the 4th International Workshop on OpenMP, IWOMP, pages 100--110, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Matteo Frigo, Charles E. Leiserson, and Keith H. Randall. The implementation of the cilk-5 multithreaded language. In the ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI, pages 212C--223, 1998. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Supercomputing Technologies Group. Cilk 5.4.6 Reference Manual. Massachusetts Institute of Technology, Laboratory for Computer Science, Cambridge, Massachusetts, USA.Google ScholarGoogle Scholar
  12. Yi Guo, Jisheng Zhao, Vincent Cave, and Vivek Sarkar. Slaw: a scalable locality-aware adaptive work--stealing scheduler. In the 24th IEEE International Parallel and Distributed Processing Symposium, IPDPS, 2010. (To appear).Google ScholarGoogle ScholarCross RefCross Ref
  13. Tasuku Hiraishi, Masahiro Yasugi, Seiji Umatani, and Taiichi Yuasa. Backtracking-based Load Balancing. In the 14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP, pages 55--64, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Hans Wolfgang Loidl, Kevin Hammond, Hans Wolfgang, and Loidl Kevin Hammond. On the Granularity of Divide-and-Conquer Parallelism. In Glasgow Workshop on Functional Programming, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Maged M. Michael, Martin T. Vechev, and Vijay A. Saraswat. Idempotent Work Stealing. In the 14th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPoPP, pages 45--54, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Eric Mohr, David A. Kranz, and Jr Robert H. Halstead. Lazy task creation: A technique for increasing the granularity of parallel programs. IEEE Transactions on Parallel and Distributed Systems, 2(3):264C--280, 1991. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. An adaptive task creation strategy for work-stealing scheduling

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        CGO '10: Proceedings of the 8th annual IEEE/ACM international symposium on Code generation and optimization
        April 2010
        300 pages
        ISBN:9781605586359
        DOI:10.1145/1772954

        Copyright © 2010 ACM

        Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 24 April 2010

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        Overall Acceptance Rate312of1,061submissions,29%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader