Skip to main content
Log in

An Architecture-Independent Graphical Tool for Automatic Contention-Free Process-to-Processor Mapping

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Mapping of parallel programs onto parallel computers for efficient execution is a fundamental problem of great significance in parallel processing. This paper presents an architecture-independent software tool for contention-free mapping of arbitrary parallel programs onto parallel computers with arbitrary configurations. This mapping tool is based on an efficient heuristic algorithm that runs in time O(n 3+m 4) in the worst case for mapping n tasks onto m processors, where mn in most practical cases. It is fully implemented and incorporated into a graph editing system to produce a graphical mapping tool which enables its user to monitor and control the mapping process. The user can assist the mapping process or employ the algorithm to map automatically. Our mapping tool has been tested and its performance evaluated extensively. Experimental results show that our tool combines user intuition and mapping heuristics effectively to make it a powerful mapping tool which is practical to use. Our mapping tool can be easily extended for use in the more general case when the link contention-degree is bounded to a fixed system-specified value without increasing its complexity.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. T. Baba, Y. Iwamoto, and T. Yoshinaga. A network-topology independent task allocation strategy for parallel computers. Supercomputing, 878-887, 1990.

  2. F. Berman. Experience with an Automatic solution to the Mapping Problem. In The Characteristics of Parallel Algorithms, pp. 307-334, MIT Press, Cambridge, MA, 1987.

    Google Scholar 

  3. F. Berman. On mapping parallel algorithms into parallel architectures. Journal of Parallel and Distributed Computing, 4:439-458, 1987.

    Google Scholar 

  4. S.H. Bokhari. On the mapping problem. IEEE Transactions on Computers, 30:207-214, 1981.

    Google Scholar 

  5. S.H. Bokhari. A network flow model for load balancing in circuit-switched multicomputers. IEEE Transactions on Parallel and Distributed Systems, 4: 1993.

  6. W. Chen, M.F.M. Stallman, and E.F. Gehringer. Hypercube embedding heuristics: An evaluation. International Journal of Parallel Programming, 18:505-549, 1989.

    Google Scholar 

  7. M. Cosnard and D. Trystram. Parallel Algorithms and Architectures. International Thomson Computer Press, 1995.

  8. P. Eades and R. Tamassia. Algorithms for drawing graphs: An annotated bibliography. Technical report CS-09-89. Department of Computer Science, Brown University, 1989.

  9. H. El-Rewini, T.G. Lewis, and H.H. Ali. Task Scheduling in Parallel and Distributed Systems. Prentice-Hall, Englewood Cliffs, NJ, 1994.

    Google Scholar 

  10. M. Himsolt. GraphEd: An interactive graph editor. In Proceedings of STACS 89, Lecture Notes in Computer Science, Vol. 349, pp. 532-533. Springer-Verlag, Berlin and New York, 1989.

    Google Scholar 

  11. M. Himsolt. GraphEd user manual. Fakultät für Informatik, Universität Passau, Germany, 1990.

    Google Scholar 

  12. O. Kramer and H. Muhlenbein. Mapping strategies in message based multiprocessor systems. In Proc. PARLE'87, Lecture Notes in Computer Science, Vol. 258, pp. 213-225. Springer-Verlag, Berlin and New York. 1987.

    Google Scholar 

  13. V.M. Lo. Heuristic algorithms for task assignment in distributed systems. IEEE Transactions on Computers, 37:1384-1397, 1988.

    Google Scholar 

  14. V.M. Lo, S. Rajopadhye, S. Gupta, D. Keldsen, M.A. Mohamed, B. Nitzberg, J.A. Telle, and X. Zhong. OREGAMI: Tools for mapping parallel computations to parallel architectures. International Journal of Parallel Programming, 20:237-270, 1991.

    Google Scholar 

  15. S. Lor, H. Shen, and P. Maheshwari. Divide-and-conquer mapping of parallel programs onto hypercube computers. In Proceedings of the 18th Australasian Computer Science Conference, pp. 347-355, Adelaide, Australia, February 1995.

  16. M.G. Norman and P. Thanisch. Models of machines and computations for mapping in multicomputers. ACM Computing Surveys, 25: 1993.

  17. H. Shen. Fast path-disjoint routing in transputer networks. Microprocessing and Microprogramming, 33:21-31, 1991.

    Google Scholar 

  18. H. Shen. Self-adjusting mapping: A heuristic mapping algorithm for mapping parallel programs onto transputer networks. The Computer Journal, 35:71-80, 1992.

    Google Scholar 

  19. P. Sadayappan, F. Ercal, and J. Ramanujam. Cluster partitioning approaches to mapping parallel programs onto a hypercube. Parallel Computing, 13:1-16, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Shen, H., Lor, S. & Maheshwari, P. An Architecture-Independent Graphical Tool for Automatic Contention-Free Process-to-Processor Mapping. The Journal of Supercomputing 18, 115–139 (2001). https://doi.org/10.1023/A:1008171232465

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/A:1008171232465

Navigation