Publication
Journal of Systems and Software
Paper

On the usage of simulators to detect inefficiency of parallel programs caused by "bad" schedulings: The SIMPARC approach

View publication

Abstract

The problem of producing efficient parallel programs against different possible execution orders or schedulings is addressed. Our method emphasizes experimental modifications of the machine parameters, using a parallel simulator, so that by a proper choice of the simulator parameters, the user can detect potential harmful schedulings. Two types of time statistics named ideal and effective times are defined. We show that the gap between them can be used to detect whether the current scheduling is a possible cause for a performance degradation. This allows the user to make a more "compact" search of the huge space of all possible schedulings. This search for "bad" schedulings is done by allowing the user to change the simulation's parameters, in particular, the context-switch delay and the scheduling policy. The main objective of the Simparc simulator is to help the programmer develop efficient parallel programs independent of the hardware which will be used. Therefore, the article includes a set of typical experiments with the simulator, covering the main factors for bad schedulings. Altogether, the simulator and the experiments form a methodology for detecting possible bottlenecks of performance degradation.

Date

Publication

Journal of Systems and Software

Authors

Share