Scalable and modular scheduling

5Citations
Citations of this article
9Readers
Mendeley users who have this article in their library.
Get full text

Abstract

Scheduling a program (i.e. constructing a timetable for the execution of its operations) is one of the most powerful methods for automatic parallelization. A schedule gives a blueprint for constructing a synchronous program, suitable for an ASIC or a VLIW processor. However, constructing a schedule entails solving a large linear program. Even if one accepts the (experimental) fact that the Simplex is almost always polynomial, the scheduling time is of the order of a large power of the program size and of the maximum nesting level of its loops. Hence the method is not scalable. The present paper presents two methods for improving this situation. Firstly, a big program can be divided into smaller units (processes) which can be scheduled separately. This is modular scheduling. Second, one can use projection methods for solving linear programming problems incrementally. This is especially efficient if the dependence graph is sparse. © Springer-Verlag Berlin Heidelberg 2004.

Cite

CITATION STYLE

APA

Feautrier, P. (2004). Scalable and modular scheduling. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 3133, 433–442. https://doi.org/10.1007/978-3-540-27776-7_45

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free