The SPC Project


Description

SPC [1,4,5] is a new coordination model that seeks a balance between expressiveness of parallelism and performance predictability.

In automatic, retargetable compilation low-cost, analytic cost estimation techniques are crucial in order to efficiently steer the optimization process. Programming models aimed at optimum expressiveness of parallelism, however, are not amenable to static cost estimation. We present a new coordination model, called SPC, that imposes specific restrictions in the synchronization structures that can be programmed. Imposing these restrictions enables the efficient computation of reliable cost estimations paving the way for automatic optimization.

There a number of papers [1,4] that illustrate the advantages of SPC's symbolic performance predictability with respect to optimizing compilation of which the process-algebraic framework is currently under development (Frits Kuijlman). In addition, we are looking at the advantages SPC's synchronization restrictions offer with respect to scheduling in general (Andrei Radulescu). This subproject is in collaboration with Henk Sips (see the Automap project).

Regarding SPC's limited expressiveness we are investigating the conjecture [1] that the loss of parallelism when programming in SPC is typically limited to a constant factor of 2 compared to the unrestricted case, except for pathological workload distributions [2,3] (Arturo Gonzalez Escribano). This limited loss is outweighed by the unlocked potential of automatic performance optimization, and, last but not least, the ultimate portability that is gained.

People collaborating

References


Arjan van Gemund <A.vGemund@et.tudelft.nl>
Last modified: June 1997