Analyzing Scalability of Parallel Algorithms and Architectures

Vipin Kumar, Anshul Gupta

Research output: Contribution to journalArticlepeer-review

90 Scopus citations

Abstract

The scalability of a parallel algorithm on a parallel architecture is a measure of its capacity to effectively utilize an increasing number of processors. Scalability analysis may be used to select the best algorithm-architecture combination for a problem under different constraints on the growth of the problem size and the number of processors. It may be used to predict the performance of a parallel algorithm and a parallel architecture for a large number of processors from the known performance on fewer processors. For a fixed problem size, it may be used to determine the optimal number of processors to be used and the maximum possible speedup that can be obtained. The objectives of this paper are to critically assess the state of the art in the theory of scalability analysis, and to motivate further research on the development of new and more comprehensive analytical tools to study the scalability of parallel algorithms and architectures. We survey a number of techniques and formalisms that have been developed for studying scalability issues, and discuss their interrelationships. For example, we derive an important relationship between time-constrained scaling and the isoefficiency function. We point out some of the weaknesses of the existing schemes for measuring scalability, and discuss possible ways of extending them.

Original languageEnglish (US)
Pages (from-to)379-391
Number of pages13
JournalJournal of Parallel and Distributed Computing
Volume22
Issue number3
DOIs
StatePublished - Sep 1994

Fingerprint Dive into the research topics of 'Analyzing Scalability of Parallel Algorithms and Architectures'. Together they form a unique fingerprint.

Cite this