Guided self-scheduling: A practical scheduling scheme for parallel supercomputers
IEEE Transactions on Computers
Factoring: a method for scheduling parallel loops
Communications of the ACM
Operating system support for parallel programming on RP3
IBM Journal of Research and Development
The RP3 program visualization environment
IBM Journal of Research and Development
Low-overhead scheduling of nested parallelism
IBM Journal of Research and Development
PADD '93 Proceedings of the 1993 ACM/ONR workshop on Parallel and distributed debugging
IBM Systems Journal
The communication software and parallel environment of the IBM SP2
IBM Systems Journal
Strata-various: multi-layer visualization of dynamics in software system behavior
VIS '94 Proceedings of the conference on Visualization '94
Hi-index | 0.00 |
Scheduling parallel programs optimally on multiple processors is difficult, partly because of interactions between applications, system software, and hardware having unexpected effects on performance. These interactions are hard to quantify and difficult to model. A convenient and effective means of quickly examining the behavior of such systems can make the evaluation and refinement of scheduling paradigms easier. The authors have used a program-visualization tool called PV to help them develop and tune runtime systems for scheduling nested parallel loops on shared- and distributed-memory machines. In a series of experiments, PV gave feedback concerning the effectiveness of alternative algorithms and parameters. A prevalent and striking revelation of the visualizations was that, because of systemic effects, parallel-loop iterations exhibit execution-time variance, even when there is no algorithmic variance. This suggests that dynamic scheduling might be necessary to effectively use processors.