On the implementation and effectiveness of autoscheduling for shared-memory multiprocessors
Moreira, Jose Eduardo
This item is only available for download by members of the University of Illinois community. Students, faculty, and staff at the U of I may log in with your NetID and password to view the item. If you are trying to access an Illinois-restricted dissertation or thesis, you can request a copy through your library's Inter-Library Loan office or purchase a copy directly from ProQuest.
Permalink
https://hdl.handle.net/2142/23401
Description
Title
On the implementation and effectiveness of autoscheduling for shared-memory multiprocessors
Author(s)
Moreira, Jose Eduardo
Issue Date
1995
Doctoral Committee Chair(s)
Polychronopoulos, Constantine D.
Department of Study
Electrical and Computer Engineering
Discipline
Electrical and Computer Engineering
Degree Granting Institution
University of Illinois at Urbana-Champaign
Degree Name
Ph.D.
Degree Level
Dissertation
Keyword(s)
Engineering, Electronics and Electrical
Computer Science
Language
eng
Abstract
This thesis addresses the problem of implementing the autoscheduling model of computation on conventional shared-memory multiprocessors. In autoscheduling, the partitioning and scheduling of computations for parallel execution are performed by means of drive code injected by the compiler at the entry and exit points of each schedulable unit (tasks).
A prototype autoscheduling compiler that generates autoscheduling code for real and abstract multiprocessors was implemented. The general organization of this compiler and generated code are discussed in this thesis. The run-time library used by the executable autoscheduling code is also described. Major implementation problems include the execution of the actual scheduling operations, the organization of the task queue, granularity control to adjust the level of parallelism exploited, cactus-stack support, parallel loop implementation, support for data distribution, and execution on a time-variant partition of physical processors.
The correctness and performance of the autoscheduling code generated by the compiler were verified through actual measurements on a real multiprocessor, program level execution-drive simulation, and instruction level simulation. The results demonstrate the feasibility of an autoscheduling compiler and its ability to exploit new levels of parallelism on shared-memory multiprocessors.
Use this login method if you
don't
have an
@illinois.edu
email address.
(Oops, I do have one)
IDEALS migrated to a new platform on June 23, 2022. If you created
your account prior to this date, you will have to reset your password
using the forgot-password link below.