Subscribe
Issue No.01 - January/February (1988 vol.5)
pp: 23-32
ABSTRACT
<p>A method called grain packing is proposed as a way to optimize parallel programs. A grain is defined as one or more concurrently executing program modules. A grain begins executing as soon as all of its inputs are available, and terminates only after all of its outputs have been computed. Grain packing reduces total execution time by balancing execution time and communication time. Used with an optimizing scheduler, it gives consistently better results than human-engineered scheduling and packing. The method is language-independent and is applicable to both extended serial and concurrent programming languages, including Occam, Fortran, and Pascal.</p>
INDEX TERMS
grain size determination; parallel processing; grain packing; concurrently executing program modules; execution time; communication time; optimizing scheduler; concurrent programming languages; Occam; Fortran; Pascal; operating systems (computers); parallel programming; program compilers; scheduling
CITATION
Boontee Kruatrachue, "Grain Size Determination for Parallel Processing", IEEE Software, vol.5, no. 1, pp. 23-32, January/February 1988, doi:10.1109/52.1991