TOPPER: A Tool for Optimizing the Performance of Parallel Applications

  • Dimitris Konstantinou
  • Nectarios Koziris
  • George Papakonstantinou
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2131)


In this paper we present an autonomous and complete tool for optimizing the performance parallel programs on multiprocessor architectures. The concern of TOPPER’s users is bound to the construction of two separate graphs, describing the overall application’s task partitioning and interprocess communication requirements, as well as the architecture of the available multiprocessor system. TOPPER proceeds with the elaboration of these two graphs and proposes an efficient task mapping, aiming to minimize the application’s overall execution time. When the communication between the various tasks is carried out with the use of MPI routines, the tool not only proposes an optimal task allocation but also can execute automatically the parallel application on the target multiprocessing machine.


Task Allocation Parallel Application Task Graph Processor Graph Processor Network 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    H. Ali et H. El-Rewini. Task Allocation in Distributed Systems: A Split Graph Model. Journal of Combinatorial Mathematics and Combinatorial Computing, vol. 14, pp. 15–32, October 1993.Google Scholar
  2. [2]
    H. El-Rewini, T. G. Lewis and H. Ali. Task Scheduling in Parallel and Distributed Systems. Prentice Hall, 1994.Google Scholar
  3. [3]
    N. Koziris, G. Papakonstantinou and P. Tsanakas. Optimal Time and Efficient Space Free Scheduling for Nested Loops. The Computer Journal, vol. 39, no 5, pp 439–448, 1996.CrossRefGoogle Scholar
  4. [4]
    C. H. Papadimitriou and M. Yannakakis. Toward an Architecture-Independent Analysis of Parallel Algorithms. SIAM J. Comput., vol. 19, pp. 322–328, 1990.zbMATHCrossRefMathSciNetGoogle Scholar
  5. [5]
    V. Sarkar. Partitioning and Scheduling Parallel Programs for Execution on Multiprocessors. Cambridge, MA: MIT Press, 1989.Google Scholar
  6. [6]
    A. Gerasoulis and T. Yang. On the Granularity and Clustering of Directed Acyclic Task Graphs. IEEE Trans. Parallel Distrib. Syst., vol. 4, no. 6, pp. 686–701, Jan. 1993.CrossRefGoogle Scholar
  7. [7]
    T. Yang and A. Gerasoulis. PYRROS: Static Task Scheduling and Code Generation for Message Passing Multiprocessors. Proc 6 th Int’l Conf. Supercomputing (ICS92), ACM Press, New York, N. Y., 1992, pp. 428–437.CrossRefGoogle Scholar
  8. [8]
    D. Konstantinou and A. Panagiotopoulos, Thesis, Dept. of Electrical Engineering, NTUA, Athens 2000Google Scholar
  9. [9]
    V. Lo, S. Rajopadhye, S. Gupta, D. Keldsen, M. Mohamed, B. Nitzberg, J. Telle and X. Zhong. OREGAMI: Tools for Mapping Parallel Computations to Parallel Architectures. Int’l Journal of Parallel Programming, vol. 20, no. 3, 1991, pp. 237–270.CrossRefGoogle Scholar
  10. [10]
    N. Koziris, M. Romesis, G. Papakonstantinou and P. Tsanakas. An efficient Algorithm for the Physical Mapping of Clustered Task Graphs onto Multiprocessor Architectures, (PDP2000), IEEE Press, pp. 406–413, Rhodes, Greece.Google Scholar
  11. [11]
    J.-C. Liou and Michael. A Palis. A Comparison of General Approaches to Multiprocessor, 11th International Parallel Processing Symposium (IPPS’97), Geneva, Switzerland, April 1997, pp. 152–156.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2001

Authors and Affiliations

  • Dimitris Konstantinou
    • 1
  • Nectarios Koziris
    • 1
  • George Papakonstantinou
    • 1
  1. 1.National Technical University of Athens Dept. of Electrical and Computer Engineering Computer Science DivisionComputing Systems LaboratoryZografouGreece

Personalised recommendations