An optimal upper bound on the minimal completion time in distributed supercomputing
ICS '94 Proceedings of the 8th international conference on Supercomputing
Using Recorded Values for Bounding the Minimum Completion Time in Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
Bounding the gain of changing the number of memory modules in shared memory multiprocessors
Nordic Journal of Computing
Comparing the Optimal Performance of Different MIMD Multiprocessor Architectures
IPPS '98 Proceedings of the 12th. International Parallel Processing Symposium on International Parallel Processing Symposium
Bounding the minimal completion time in high-performance parallel processing
International Journal of High Performance Computing and Networking
Hi-index | 0.00 |
Consider a multiprocessor with $k$ identical processors, executing parallel programs consisting of $n$ processes. Let $T_s(P)$ and $T_d(P)$ denote the execution times for the program $P$ with optimal static and dynamic allocations respectively, i. e. allocations giving minimal execution time. We derive a general and explicit formula for the maximal execution time ratio $g(n,k)=\max T_s(P)/T_d(P)$, where the maximum is taken over all programs $P$ consisting of $n$ processes. Any interprocess dependency structure for the programs $P$ is allowed, only avoiding deadlock. Overhead for synchronization and reallocation is neglected. Basic properties of the function $g(n,k)$ are established, from which we obtain a global description of the function. Plots of $g(n,k)$ are included. The results are obtained by investigating a mathematical formulation. The mathematical tools involved are essentially tools of elementary combinatorics. The formula is a combinatorial function applied on certain extremal matrices corresponding to extremal programs. It is mathematically complicated but rapidly computed for reasonable $n$ and $k$, in contrast to the np-completeness of the problems of finding optimal allocations.