Remembrance of things past: locality and memory in BDDs

  • Authors:
  • Srilatha Manne;Dirk Grunwald;Fabio Somenzi

  • Affiliations:
  • University of Colorado, Dept. of Electrical and Computer Engineering, Boulder, CO;University of Colorado, Department of Computer Science, Boulder, CO;University of Colorado, Dept. of Electrical and Computer Engineering, Boulder, CO

  • Venue:
  • DAC '97 Proceedings of the 34th annual Design Automation Conference
  • Year:
  • 1997

Quantified Score

Hi-index 0.01

Visualization

Abstract

Binary Decision Diagrams (BDDs) are efficient at manipulating large sets in a compact manner. BDDs, however, are inefficient at utilizing the memory hierarchy ofthe computer. Recent work addresses this problem by manipulating the BDDsin breath-first manner (BFS). BFS processing is quite successful at reducing the number of page faults when the BDDs do not fit in the available physical memory. When pagingdoes not take place, it is much less clear which paradigmleads to the better performance. In this paper, we perform adetailed analysis of BFS and DFS packages using simulationand direct performance monitoring ofthe memory hierarchy.We show that there is very little difference in TLB and cachemiss rates for DFS and BFS paradigms. We also show thatdifferences in execution time between carefully tuned BFSand DFS implementations are primarily a function of thelossless computed table used in BFS implementations, andnot a function of memory locality. Furthermore, we presentimplementation changes to the the Cudd package that canimprove execution times by asmuch as 26% when the problem fits in main memory, and a factor of six when paging is involved.