Efficient use of dynamically tagged directories through compiler analysis

Trung N. Nguyen, Zhiyuan Li, David J. Lilja

Research output: Contribution to journalConference article

5 Scopus citations


Dynamically tagged directories have been recently proposed as a memory-efficient mechanism for maintaining cache coherence in large-scale shared-memory multiprocessors. In order to efficiently use these directories, the number of pointer operations must be minimized and pointers should be allocated as late as possible. If pointers are allocated too early, frequent pointer overflow will occur, which in turn may cause cache thrashing. Following the delayed allocation marking strategy, we present compiler algorithms to identify memory references that do not need to allocate a pointer. As a result, we reduce processor-memory network traffic and increase the data cache hit ratio, which will reduce the average memory latency. We demonstrate the effectiveness of this compiler optimization by implementing it in the Parafrase-2 parallelizing compiler.

Original languageEnglish (US)
Article number4134194
Pages (from-to)112-119
Number of pages8
JournalProceedings of the International Conference on Parallel Processing
StatePublished - Jan 1 1993
Event1993 International Conference on Parallel Processing, ICPP 1993 - Syracuse, United States
Duration: Aug 16 1993Aug 20 1993



  • Cache coherence
  • Dynamically tagged directories
  • Optimizing compilers

Cite this