Predicting Data Cache Misses in Non-Numeric Applications Through Correlation Profiling

Abstract

Software-based latency tolerance techniques offer the potential for bridging the ever-increasing speed gap between the memory subsystem and today's high-performance processors. However, to fully exploit the benefit of these techniques, one must be careful to apply them only to the dynamic references that are likely to suffer cache misses-otherwise the runtime overheads can potentially offset any gains. In this paper, we focus on isolating dynamic miss instances in non-numeric applications, which is a difficult but important problem. Although compilers cannot statically analyze data locality in non-numeric applications, one viable approach is to use profiling information to measure the actual miss behavior. Unfortunately, the state-of-the-art in cache miss profiling (which we call summary profiling) is inadequate for references with intermediate miss ratios-it either misses opportunities to hide latency, or else inserts overhead that is unnecessary. To overcome this problem, we propose and evaluate a new profiling technique that helps predict which dynamic instances of a static memory reference will hit or miss in the cache: correlation profiling. Our experimental results demonstrate that roughly half of the 22 non-numeric applications we study can potentially enjoy significant reductions in memory stall time by exploiting at least one of the three forms of correlation profiling we consider: control-flow correlation, self correlation, and global correlation. In addition, our detailed case studies illustrate that self correlation succeeds because a given reference's cache outcomes often contain repeated patterns, and control-flow correlation succeeds because cache outcomes are often call-chain dependent. We also demonstrate that software prefetching can achieve better performance on a modern superscalar processor when directed by correlation profiling rather than s

Open PDF

Document Details

Document Type
Technical Report
Publication Date
Sep 01, 1997
Accession Number
ADA332313

Entities

People

  • Chi-keung Luk
  • Todd C. Mowry

Organizations

  • Carnegie Mellon University

Tags

Communities of Interest

  • Biomedical

DTIC Thesaurus Topics

  • Accuracy
  • Case Studies
  • Compilers
  • Computer Science
  • Computers
  • Contrast
  • Data Sets
  • Dynamic Loads
  • Hash Tables
  • Health
  • Health Care
  • Instructions
  • Lists (Data Structures)
  • Simulations
  • Simulators
  • Statistics
  • Trees (Data Structures)

Fields of Study

  • Computer science

Readers

  • Computational Modeling and Simulation
  • Parallel and Distributed Computing.
  • Systems Analysis and Design