Optimal Tree Access by Elementary and Composite Templates in Parallel Memory Systems

In this paper, we study efficient strategies for mapping onto parallel memory systems complete trees that are accessed by fixed templates (like complete subtrees, paths, or any combinations their of). These mappings are evaluated with respect to the following criteria: (1) the largest number of data items that can be accessed in parallel without memory conflicts; (2) the number of memory conflicts that can occur when accessing templates of size equal to the number of available memory modules, thereby exploiting the full parallelism of the system; (3) the complexity of the memory addressing scheme, i.e., the cost of retrieving the module where a given data item is mapped. We show that there exist trade-offs between these three criteria and the performance of different mapping strategies depends on the emphasis given on each of these criteria. More specifically, we describe an algorithm for mapping complete binary trees of height H onto M memory modules and prove that it achieves the following performance results: (1) conflict-free access to complete subtrees of size K and paths of size N such that N + K - [log K] /spl les/ M; (2) at most 1 conflict in accessing complete subtrees and paths of size M; (3) O(K/M + c) conflicts when accessing a composite template of K nodes consisting of c disjoint subsets, each subset being a complete subtree, or a path or a set of consecutive nodes in a level of the tree.

[1]  Sajal K. Das,et al.  Toward a universal mapping algorithm for accessing trees in parallel memory systems , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[2]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[3]  Sajal K. Das,et al.  Primal-target neural net heuristics for the hypergraph k-coloring problem , 1997, Proceedings of International Conference on Neural Networks (ICNN'97).

[4]  Joseph JáJá,et al.  An Introduction to Parallel Algorithms , 1992 .

[5]  F. Leighton,et al.  Introduction to Parallel Algorithms and Architectures: Arrays, Trees, Hypercubes , 1991 .

[6]  Vittorio Scarano,et al.  Multiple Templates Access of Trees in Parallel Memory Systems , 1998, J. Parallel Distributed Comput..

[7]  Sajal K. Das,et al.  Optimal tree access by elementary and composite templates in parallel memory systems , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[8]  Charles J. Colbourn,et al.  Conflict-Free Access to Parallel Memories , 1992, J. Parallel Distributed Comput..

[9]  Sajal K. Das,et al.  Optimal and Load Balanced Mapping of Parallel Priority Queues in Hypercubes , 1996, IEEE Trans. Parallel Distributed Syst..

[10]  Sajal K. Das,et al.  Conflict-free template access in k-ary and binomial trees , 1997, ICS '97.

[11]  Geppino Pucci,et al.  Parallel Algorithms for Priority Queue Operations , 1995, Theor. Comput. Sci..

[12]  Sajal K. Das,et al.  Conflict-free data access of arrays and trees in parallel memory systems , 1994, Proceedings of 1994 6th IEEE Symposium on Parallel and Distributed Processing.

[13]  Sajal K. Das,et al.  Load Balanced Mapping of Data Structures in Parallel Memory Modules for Fast and Conflict-Free Templates Access , 1997, WADS.

[14]  Reiner Creutzburg,et al.  Recent Results on the Parallel Access to Tree-Like Data Structures: The Isotropic Approach , 1991, ICPP.

[15]  Sajal K. Das,et al.  Conflict-Free Path Access of Trees in Parallel Memory Systems with Application to Distributed Heap Implementation , 1995, ICPP.

[16]  Viktor K. Prasanna,et al.  Latin Squares for Parallel Array Access , 1993, IEEE Trans. Parallel Distributed Syst..

[17]  Sajal K. Das,et al.  Optimal Mappings of q-ary and Binomial Trees into Parallel Memory Modules for Fast and Conflict-Free Access to Path and Subtree Templates , 2000, J. Parallel Distributed Comput..