Abstract
The hypercube embedding problem, a restricted version of the general mapping problem, is the problem of mapping a set of communicating processes to a hypercube multiprocessor. The goal is to find a mapping that minimizes the length of the paths between communicating processes. Unfortunately the hypercube embedding problem has been shown to be NP-hard. Thus many heuristics have been proposed for hypercube embedding. This paper evaluates several hypercube embedding heuristics, including simulated annealing, local search, greedy, and recursive mincut bipartitioning. In addition to known heuristics, we propose a new greedy heuristic, a new Kernighan-Lin style heuristic, and some new features to enhance local search. We then assess variations of these strategies (e.g., different neighborhood structures) and combinations of them (e.g., greedy as a front end of iterative improvement heuristics). The asymptotic running times of the heuristics are given, based on efficient implementations using a priority-queue data structure.
Similar content being viewed by others
References
F. Berman and L. Snyder, On mapping parallel algorithms into parallel architectures,J. of Parallel and Distributed Computing,4:439–458 (1987).
L. Bhuyan and D. P. Agrawal, Generalized hypercube and hyperbus structures for a computer network,IEEE Transactions on Computers,C-33:323–333 (1984).
W. Hillis,The Connection Machine, MIT Press (1985).
Y. Saad and M. H. Schultz, Topological properties of hypercubes,IEEE Transactions on Computers, Vol. C-37 (1988).
A. Wagner, Embedding arbitrary binary trees in a hypercube,J. of Parallel and Distributed Computing,7:503–520 (1989).
INTEL Scientific Computers, Direct-Connecttm routing solves node communications challenge,iSCurrents, pp. 5–6 (1987).
D. Lenoski, J. Laudon, K. Gharachorloo, A. Gupta, and J. Hennessy, The directory-based cache coherence protocol for the DASH multiprocessor, ACM Computer Architecture News,18:148–159 (1990).
L. W. Tucker and G. G. Robertson, Architecture and applications of the Connection Machine,IEEE Computer,21:26–38 (1988).
J. Hong, K. Mehlhorn, and A. Rosenberg, Cost trade-offs in graph embeddings with applications,J. Assoc. Comput. Mach.,30:709–728 (1983).
G. Cybenko, D. Krumme, and K. Venkataraman, Fixed hypercube embedding,Information Processing Letters,25:35–39 (1987).
A. Wagner and D. Corneil, Embedding trees in the hypercube isNP-complete,SIAM J. on Computing,19:570–590 (1990).
F. Berman, Experience with an automatic solution to the mapping problem,The Characteristics of Parallel Algorithms, L. Jamieson, D. Gannon, and R. Douglas, (eds.), MIT Press (1987).
S. Bokhari, On the mapping problem,IEEE Transactions on Computers,C-30:207–214 (1981).
K. Fukunaga, S. Yamada, and T. Kasai, Asignment of job modules onto array processors,IEEE Transactions on Computers,C-36:888–891 (1987).
A. Gabriellian and D. Tyler, Optimal object allocation in distributed computer systems,Proc. Int'l Conf. on Distributed Computer Systems, pp. 88–95 (1984).
H. Mühlenbein, M. Gorges-Schleuter, and O. Krämer, New solutions to the mapping problem of parallel systems: The evolution approach,Parallel Computing,4:269–279 (1987).
J. Ramanujam, F. Ercal, and P. Sadayappan, Task allocation by simulated annealing,Proc. Int'l Conf. on Supercomputing (1988).
P. Sadayappan and F. Ercal, Nearest-neighbor mapping of finite element graphs onto processor meshes,IEEE Trans. on Computers,C-36:1408–1424 (1987).
K. Schwan and C. Gaimon, Automating resource allocation for theCm * multiprocessor,Proc. Int'l Conf. on Distributed Computer Systems, pp. 310–320 (1984).
W.-K. Chen and E. Gehringer, A graph-oriented mapping strategy for a hypercube,Proc. Third Conf. on Hypercube Concurrent Computers and Applications, pp. 200–209 (1988).
F. Ercal, J. Ramanujam, and P. Sadayappan, Task allocation onto a hypercube by recursive mincut bipartitioning,J. of Parallel and Distributed Computing, to appear (1990).
F. Ercal and P. Sadayappan, One-to-one mapping process graphs onto a hypercube,Proc. Supercomputing '89, ACM, pp. 91–98 (1989).
O. Krämer and H. Mühlenbein, Mapping strategies in message-based multiprocessor systems.Parallel Computing,9:213–225 (1989).
S.-Y. Lee and J. Aggarwal, A mapping strategy for parallel processing,IEEE Transactions on Computers,C-36:433–442 (1987).
M. Garey and R. Graham, On cubical graphs,J. of Combinatorial Theory, Vol. 18 (1975).
K. Bhat, On the complexity of testing a graph forN-cube,Information Processing Letters,11:16–19 (1980).
S. Bettayeb, z. Miller, and I. Sudborough, Embedding grids into hypercubes,VLSI Algorithms and Architectures: 3rd Aegean Workshop on Computing, Lecture Notes inComputer Science, Springer Verlag,319:201–211 (1988).
J. Brandenburg and D. Scott, Embedding of communication trees and grids into hypercubes, Technical Report 280182-001, INTEL Scientific Computers (1985).
M. Chan, Dilation-2 embeddings of grids into hypercubes,Proc. Int'l Conf. on Parallel Processing, Vol.III, pp. 295–298 (1988).
A. Wu, Embedding of tree networks into hypercubes,J. of Parallel and Distributed Computing,2:238–249 (1985).
S. Bhatt, F. Chung, F. Leighton, and A. Rosenberg,Efficient embeddings of trees in hypercubes. Typescript, Department of Computer Science, Yale University, New Haven, Connecticut 06520.
B. Monien and I. Sudborough, Simulating binary trees on hypercubes, inVLSI Algorithms and Architectures: 3rd Aegean Workshop on Computing, Lecture Notes inComputer Science, Springer Verlag,319:170–180 (1988).
F. Afrati, C. Papadimitriou, and G. Papageorgiou, The Complexity of cubical graphs,Information and Control,66:53–60 (1985).
B. Kernighan and S. Lin, An efficient heuristic procedure for partitioning graphs,Bell System Technical Journal, pp. 291–307 (1970).
S. Bollinger and S. Midkiff, Processor and link assignment in multiprocessors using simulated annealing,Proc. Int'l Conf. on Parallel Processing, Vol.I, pp. 1–7 (1988).
F. André, J. Pazat, and T. Priol, Experiments with mapping algorithms on a hypercube,Proc. Fourth Conf. on Hypercubes, Concurrent Computers, and Applications, Vol. I, pp. 39–46 (1989).
J.-L. Pazat,Outils pour la Programmation d'un Multiprocesseur à Mémoires Distribuées, Ph.D. thesis, Université de Bordeaux I (February 1989).
D. S. Johnson, C. R. Aragon, L. A. McGeogh, and C. Schevon,Optimization by simulated annealing: An experimental evaluation (Part I). Typescript.
C. Fiduccia and R. Mattheyses, A linear-time heuristic for improving network partitions,Proc. 19th Design Automation Conf., pp. 175–181 (1982).
W.-K. Chen, A graph-oriented mapping strategy for a hypercube, Master's thesis, North Carolina State University (1988).
F. Heath, Origins of the binary code,Scientific American,227:76–83 (1972).
S. Kirkpatrick, C. Gelatt, Jr., and M. Vecchi,Optimization by simulated annealing, Science, pp. 671–680 (1983).
W.-K. Chen and M. Stallmann, Local search variants for hypercube embedding,Proc. Fifth Distributed Memory Computing Conf., to appear (1990).
A. Wagner,Embedding Trees in a Hypercube, Ph.D. thesis, University of Toronto (1987).
Author information
Authors and Affiliations
Additional information
This research is partially supported by the Office of Naval Research under Contract N00014-88-K-0555, which is gratefully acknowledged.
Rights and permissions
About this article
Cite this article
Chen, WK., Stallmann, M.F.M. & Gehringer, E.F. Hypercube embedding heuristics: An evaluation. Int J Parallel Prog 18, 505–549 (1989). https://doi.org/10.1007/BF01381720
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/BF01381720