Program analysis for cache coherence: Beyond procedural boundaries

Lynn Choi, Pen Chung Yew

Research output: Chapter in Book/Report/Conference proceedingConference contribution

2 Citations (Scopus)

Abstract

The presence of procedures and procedure calls introduces side effects, which complicates the analysis of stale reference detection in compiler-directed cache coherence schemes. Previous compiler algorithms use cache invalidation at procedure boundary or inlining to avoid reference marking interprocedurally. We introduce a full interprocedural algorithm, which performs bottom-up and top-down analysis on the procedure call graph. This avoids unnecessary cache misses for subroutine local data and exploits locality across procedure boundaries. The result of execution-driven simulations on Perfect benchmarks demonstrates that, the interprocedural algorithm eliminates up to 36.8% of the cache misses for a compiler-directed scheme compared to an existing invalidation-based algorithm.

Original languageEnglish
Title of host publicationSoftware
EditorsK. Pingali
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages103-113
Number of pages11
Volume3
ISBN (Electronic)081867623X
DOIs
Publication statusPublished - 1996 Jan 1
Externally publishedYes
Event25th International Conference on Parallel Processing, ICPP 1996 - Ithaca, United States
Duration: 1996 Aug 121996 Aug 16

Other

Other25th International Conference on Parallel Processing, ICPP 1996
CountryUnited States
CityIthaca
Period96/8/1296/8/16

Fingerprint

Cache Coherence
Program Analysis
Compiler
Cache
Subroutines
Bottom-up
Locality
Eliminate
Benchmark
Graph in graph theory
Demonstrate
Simulation

ASJC Scopus subject areas

  • Software
  • Mathematics(all)
  • Hardware and Architecture

Cite this

Choi, L., & Yew, P. C. (1996). Program analysis for cache coherence: Beyond procedural boundaries. In K. Pingali (Ed.), Software (Vol. 3, pp. 103-113). [538565] Institute of Electrical and Electronics Engineers Inc.. https://doi.org/10.1109/ICPP.1996.538565

Program analysis for cache coherence : Beyond procedural boundaries. / Choi, Lynn; Yew, Pen Chung.

Software. ed. / K. Pingali. Vol. 3 Institute of Electrical and Electronics Engineers Inc., 1996. p. 103-113 538565.

Research output: Chapter in Book/Report/Conference proceedingConference contribution

Choi, L & Yew, PC 1996, Program analysis for cache coherence: Beyond procedural boundaries. in K Pingali (ed.), Software. vol. 3, 538565, Institute of Electrical and Electronics Engineers Inc., pp. 103-113, 25th International Conference on Parallel Processing, ICPP 1996, Ithaca, United States, 96/8/12. https://doi.org/10.1109/ICPP.1996.538565
Choi L, Yew PC. Program analysis for cache coherence: Beyond procedural boundaries. In Pingali K, editor, Software. Vol. 3. Institute of Electrical and Electronics Engineers Inc. 1996. p. 103-113. 538565 https://doi.org/10.1109/ICPP.1996.538565
Choi, Lynn ; Yew, Pen Chung. / Program analysis for cache coherence : Beyond procedural boundaries. Software. editor / K. Pingali. Vol. 3 Institute of Electrical and Electronics Engineers Inc., 1996. pp. 103-113
@inproceedings{63ae6905da1743a094da8561bf5f9464,
title = "Program analysis for cache coherence: Beyond procedural boundaries",
abstract = "The presence of procedures and procedure calls introduces side effects, which complicates the analysis of stale reference detection in compiler-directed cache coherence schemes. Previous compiler algorithms use cache invalidation at procedure boundary or inlining to avoid reference marking interprocedurally. We introduce a full interprocedural algorithm, which performs bottom-up and top-down analysis on the procedure call graph. This avoids unnecessary cache misses for subroutine local data and exploits locality across procedure boundaries. The result of execution-driven simulations on Perfect benchmarks demonstrates that, the interprocedural algorithm eliminates up to 36.8{\%} of the cache misses for a compiler-directed scheme compared to an existing invalidation-based algorithm.",
author = "Lynn Choi and Yew, {Pen Chung}",
year = "1996",
month = "1",
day = "1",
doi = "10.1109/ICPP.1996.538565",
language = "English",
volume = "3",
pages = "103--113",
editor = "K. Pingali",
booktitle = "Software",
publisher = "Institute of Electrical and Electronics Engineers Inc.",

}

TY - GEN

T1 - Program analysis for cache coherence

T2 - Beyond procedural boundaries

AU - Choi, Lynn

AU - Yew, Pen Chung

PY - 1996/1/1

Y1 - 1996/1/1

N2 - The presence of procedures and procedure calls introduces side effects, which complicates the analysis of stale reference detection in compiler-directed cache coherence schemes. Previous compiler algorithms use cache invalidation at procedure boundary or inlining to avoid reference marking interprocedurally. We introduce a full interprocedural algorithm, which performs bottom-up and top-down analysis on the procedure call graph. This avoids unnecessary cache misses for subroutine local data and exploits locality across procedure boundaries. The result of execution-driven simulations on Perfect benchmarks demonstrates that, the interprocedural algorithm eliminates up to 36.8% of the cache misses for a compiler-directed scheme compared to an existing invalidation-based algorithm.

AB - The presence of procedures and procedure calls introduces side effects, which complicates the analysis of stale reference detection in compiler-directed cache coherence schemes. Previous compiler algorithms use cache invalidation at procedure boundary or inlining to avoid reference marking interprocedurally. We introduce a full interprocedural algorithm, which performs bottom-up and top-down analysis on the procedure call graph. This avoids unnecessary cache misses for subroutine local data and exploits locality across procedure boundaries. The result of execution-driven simulations on Perfect benchmarks demonstrates that, the interprocedural algorithm eliminates up to 36.8% of the cache misses for a compiler-directed scheme compared to an existing invalidation-based algorithm.

UR - http://www.scopus.com/inward/record.url?scp=33749929170&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=33749929170&partnerID=8YFLogxK

U2 - 10.1109/ICPP.1996.538565

DO - 10.1109/ICPP.1996.538565

M3 - Conference contribution

AN - SCOPUS:33749929170

VL - 3

SP - 103

EP - 113

BT - Software

A2 - Pingali, K.

PB - Institute of Electrical and Electronics Engineers Inc.

ER -