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

  • Authors:
  • Vincenzo Auletta;Sajal K. Das;Amelia De Vivo;M. Cristina Pinotti;Vittorio Scarano

  • Affiliations:
  • Univ. di Salerno, Baronissi, Italy;Univ. of Texas at Arlington, Arlington;Univ. di Salerno, Baronissi, Italy;Univ. di Trento, Povo, Italy;Univ. di Salerno, Baronissi, Italy

  • Venue:
  • IEEE Transactions on Parallel and Distributed Systems
  • Year:
  • 2002

Quantified Score

Hi-index 0.01

Visualization

Abstract

In this paper, we study efficient strategies for mapping onto parallel memory systemscomplete 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-\lceil\log K\rceil \leq M; 2) at most 1 conflict in accessing complete subtrees and paths of size M; 3) O\left({K\over M} + c\right) 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. Furthermore, we show that an existing mapping algorithm results in a larger number, namely O\left({K\over{\sqrt{M\log M}}} + c\right), of conflicts when accessing a composite template. However, such an algorithm maps each single node in O(1) time, while the new algorithm requires O(H/N-\log K) time.