Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Processor allocation for horizontal and vertical parallelism and related speedup bounds

Journal Article · · IEEE Trans. Comput.; (United States)

The main aim of the paper is to study allocation of processors to parallel programs executing on a multiprocessor system, and the resulting speedups. First, the authors consider a parallel program as a sequence of steps where each step consists of a set of parallel operations. General bounds on the speedup on a rho-processor system are derived based on this model. Measurements of code parallelism for the LINPACK numerical package are presented to support the belief that typical numerical programs contain much potential parallelism that can be discovered by a good restructuring compiler. Next, a parallel program is represented as a task graph whose nodes are do across loops (i.e., loops whose iterations can be partially overlapped). It is shown how processors can be allocated to exploit horizontal and vertical parallelism in such graphs. Two processor allocation heuristic algorithms (WP and PA) are presented. PA is the heart of the WP and is used to obtain efficient processor allocations for a set of independent parallel tasks. WP allocates processors to general task graphs. Finally, a general formula for the speedup of a DO across loop is given that is more accurate than the known formula.

Research Organization:
Center for Supercomputing Research and Development, Univ. of Illinois, Urbana, IL 61801
OSTI ID:
6626865
Journal Information:
IEEE Trans. Comput.; (United States), Journal Name: IEEE Trans. Comput.; (United States) Vol. C-36:4; ISSN ITCOB
Country of Publication:
United States
Language:
English