ACM Home Page
Please provide us with feedback. Feedback
Adaptive scheduling with parallelism feedback
Full text PdfPdf (156 KB)
Source Principles and Practice of Parallel Programming archive
Proceedings of the eleventh ACM SIGPLAN symposium on Principles and practice of parallel programming table of contents
New York, New York, USA
SESSION: Shared memory parallelism table of contents
Pages: 100 - 109  
Year of Publication: 2006
ISBN:1-59593-189-9
Authors
Kunal Agrawal  Massachusetts Institute of Technology, Cambridge, MA
Yuxiong He  Massachusetts Institute of Technology, Cambridge, MA
Wen Jing Hsu  Massachusetts Institute of Technology, Cambridge, MA
Charles E. Leiserson  Massachusetts Institute of Technology, Cambridge, MA
Sponsors
ACM: Association for Computing Machinery
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 13,   Downloads (12 Months): 115,   Citation Count: 1
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1122971.1122988
What is a DOI?

ABSTRACT

Multiprocessor scheduling in a shared multiprogramming environment is often structured as two-level scheduling, where a kernel-level job scheduler allots processors to jobs and a user-level task scheduler schedules the work of a job on the allotted processors. In this context, the number of processors allotted to a particular job may vary during the job's execution, and the task scheduler must adapt to these changes in processor resources. For overall system efficiency, the task scheduler should also provide parallelism feedback to the job scheduler to avoid the situation where a job is allotted processors that it cannot use productively.We present an adaptive task scheduler for multitasked jobs with dependencies that provides continual parallelism feedback to the job scheduler in the form of requests for processors. Our scheduler guarantees that a job completes near optimally while utilizing at least a constant fraction of the allotted processor cycles. Our scheduler can be applied to schedule data-parallel programs, such as those written in High Performance Fortran (HPF), *Lisp, C*, NESL, and ZPL.Our analysis models the job scheduler as the task scheduler's adversary, challenging the task scheduler to be robust to the system environment and the job scheduler's administrative policies. For example, the job scheduler can make available a huge number of processors exactly when the job has little use for them. To analyze the performance of our adaptive task scheduler under this stringent adversarial assumption, we introduce a new technique called "trim analysis," which allows us to prove that our task scheduler performs poorly on at most a small number of time steps, exhibiting near-optimal behavior on the vast majority.To be precise, suppose that a job has work T1 and critical-path length T and is running on a machine with P processors. Using trim analysis, we prove that our scheduler completes the job in O(T1/P + T + Llg P) time steps, where L is the length of a scheduling quantum and P denotes the O(T + L lg P)-trimmed availability. This quantity is the average of the processor availability over all time steps excluding the O(T + L lg P) time steps with the highest processor availability. When T1/T >> P (the job's parallelism dominates the O(T + L lg P)-trimmed availability), the job achieves nearly perfect linear speedup. Conversely, when T1/T << P, the asymptotic running time of the job is nearly the length of its critical path.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

1
 
2
3
 
4
5
6
 
7
8
 
9
10
 
11
Robert D. Blumofe and Philip A. Lisiecki. Adaptive and reliable parallel computing on networks of workstations. In Proceedings of the USENIX Annual Technical Symposion, pages 133--147, 1997.
 
12
Robert D. Blumofe and Dionisios Papadopoulos. Hood: a user-level threads library for multiprogrammed multiprocessors. Technical report, University of Texas at Austin, 1999.
 
13
Robert D. Blumofe and David S. Park. Scheduling large-scale parallel computations on networks of workstations. In Proceedings of the IEEE International Symposium on High-Performance Distributed Computing, pages 96--105, 1994.
14
15
 
16
17
 
18
 
19
 
20
 
21
22
 
23
 
24
 
25
Dror G. Feitelson. Job scheduling in multiprogrammed parallel systems (extended version). Technical report, IBM Research Report RC 19790 (87657) 2nd Revision, 1997.
 
26
High Performance Fortran Forum. High Performance Fortran language specification version 1.0. Technical report, Rice University, 1993.
27
 
28
29
 
30
R. L. Graham. Bounds on multiprocessing anomalies. SIAM Journal on Applied Mathematics, pages 17(2):416--429, 1969.
 
31
Nian Gu. Competitive analysis of dynamic processor allocation strategies. Master's thesis, York University, 1995.
32
 
33
34
 
35
C. Lasser. The Essential *Lisp Manual. Thinking Machines Corporation, 1986.
36
37
 
38
39
40
 
41
42
43
 
44
Liang Peng, Weng~Fai Wong, Ming Dong Feng, and Chung Kwong Yuen. SilkRoad: a multithreaded runtime system with software distributed shared memory for SMP clusters. In IEEE International Conferrence on Cluster Computing, pages 243--249, 2000.
 
45
J. R. Rose and G. L. Steele Jr. C*: An extended C language for data parallel programming. In Proceedings of Supercomputing, pages 2--16, 1987.
 
46
 
47
 
48
Siddhartha Sen. Dynamic processor allocation for adaptively parallel jobs. Master's thesis, Massachusetts Institute of Technology, 2004.
 
49
B. Song. Scheduling adaptively parallel jobs. Master's thesis, Massachusetts Institute of Technology, 1998.
 
50
51
 
52
53
54
 
55
K. K. Yue and D. J. Lilja. Implementing a dynamic processor allocation policy for multiprogrammed parallel applications in the solaris (tm) operating system. Concurrency and Computation-Practice and Experience, 13(6):449--464, 2001.


Collaborative Colleagues:
Kunal Agrawal: colleagues
Yuxiong He: colleagues
Wen Jing Hsu: colleagues
Charles E. Leiserson: colleagues