Hardware support for dynamic activation of compiler-directed computation reuse

Daniel A. Connors, Hillery C. Hunter, Ben Chung Cheng, Wen-Mei W Hwu

Research output: Contribution to journalArticle

Abstract

Compiler-directed Computation Reuse (CCR) enhances program execution speed and efficiency by eliminating dynamic computation redundancy. In this approach, the compiler designates large program regions for potential reuse. During run time, the execution results of these reusable regions are recorded into hardware buffers for future reuse. Previous work shows that CCR can result in significant performance enhancements in general applications. A major limitation of the work is that the compiler relies on value profiling to identify reusable regions, making it difficult to deploy the scheme in many software production environments. This paper presents a new hardware model that alleviates the need for value profiling at compile time. The compiler is allowed to designate reusable regions that may prove to be inappropriate. The hardware mechanism monitors the dynamic behavior of compiler-designated regions and selectively activates the profitable ones at run time. Experimental results show that the proposed design makes more effective utilization of hardware buffer resources, achieves rapid employment of computation regions, and improves reuse accuracy, all of which promote more flexible compiler methods of identifying reusable computation regions.

Original languageEnglish (US)
Pages (from-to)222-233
Number of pages12
JournalOperating Systems Review (ACM)
Volume34
Issue number5
DOIs
StatePublished - Dec 2000

Fingerprint

Chemical activation
Hardware
Redundancy

ASJC Scopus subject areas

  • Information Systems
  • Hardware and Architecture
  • Computer Networks and Communications

Cite this

Hardware support for dynamic activation of compiler-directed computation reuse. / Connors, Daniel A.; Hunter, Hillery C.; Cheng, Ben Chung; Hwu, Wen-Mei W.

In: Operating Systems Review (ACM), Vol. 34, No. 5, 12.2000, p. 222-233.

Research output: Contribution to journalArticle

Connors, Daniel A. ; Hunter, Hillery C. ; Cheng, Ben Chung ; Hwu, Wen-Mei W. / Hardware support for dynamic activation of compiler-directed computation reuse. In: Operating Systems Review (ACM). 2000 ; Vol. 34, No. 5. pp. 222-233.
@article{d608e06205864efca725257c4eeabea3,
title = "Hardware support for dynamic activation of compiler-directed computation reuse",
abstract = "Compiler-directed Computation Reuse (CCR) enhances program execution speed and efficiency by eliminating dynamic computation redundancy. In this approach, the compiler designates large program regions for potential reuse. During run time, the execution results of these reusable regions are recorded into hardware buffers for future reuse. Previous work shows that CCR can result in significant performance enhancements in general applications. A major limitation of the work is that the compiler relies on value profiling to identify reusable regions, making it difficult to deploy the scheme in many software production environments. This paper presents a new hardware model that alleviates the need for value profiling at compile time. The compiler is allowed to designate reusable regions that may prove to be inappropriate. The hardware mechanism monitors the dynamic behavior of compiler-designated regions and selectively activates the profitable ones at run time. Experimental results show that the proposed design makes more effective utilization of hardware buffer resources, achieves rapid employment of computation regions, and improves reuse accuracy, all of which promote more flexible compiler methods of identifying reusable computation regions.",
author = "Connors, {Daniel A.} and Hunter, {Hillery C.} and Cheng, {Ben Chung} and Hwu, {Wen-Mei W}",
year = "2000",
month = "12",
doi = "10.1145/384264.379243",
language = "English (US)",
volume = "34",
pages = "222--233",
journal = "Operating Systems Review (ACM)",
issn = "0163-5980",
publisher = "Association for Computing Machinery (ACM)",
number = "5",

}

TY - JOUR

T1 - Hardware support for dynamic activation of compiler-directed computation reuse

AU - Connors, Daniel A.

AU - Hunter, Hillery C.

AU - Cheng, Ben Chung

AU - Hwu, Wen-Mei W

PY - 2000/12

Y1 - 2000/12

N2 - Compiler-directed Computation Reuse (CCR) enhances program execution speed and efficiency by eliminating dynamic computation redundancy. In this approach, the compiler designates large program regions for potential reuse. During run time, the execution results of these reusable regions are recorded into hardware buffers for future reuse. Previous work shows that CCR can result in significant performance enhancements in general applications. A major limitation of the work is that the compiler relies on value profiling to identify reusable regions, making it difficult to deploy the scheme in many software production environments. This paper presents a new hardware model that alleviates the need for value profiling at compile time. The compiler is allowed to designate reusable regions that may prove to be inappropriate. The hardware mechanism monitors the dynamic behavior of compiler-designated regions and selectively activates the profitable ones at run time. Experimental results show that the proposed design makes more effective utilization of hardware buffer resources, achieves rapid employment of computation regions, and improves reuse accuracy, all of which promote more flexible compiler methods of identifying reusable computation regions.

AB - Compiler-directed Computation Reuse (CCR) enhances program execution speed and efficiency by eliminating dynamic computation redundancy. In this approach, the compiler designates large program regions for potential reuse. During run time, the execution results of these reusable regions are recorded into hardware buffers for future reuse. Previous work shows that CCR can result in significant performance enhancements in general applications. A major limitation of the work is that the compiler relies on value profiling to identify reusable regions, making it difficult to deploy the scheme in many software production environments. This paper presents a new hardware model that alleviates the need for value profiling at compile time. The compiler is allowed to designate reusable regions that may prove to be inappropriate. The hardware mechanism monitors the dynamic behavior of compiler-designated regions and selectively activates the profitable ones at run time. Experimental results show that the proposed design makes more effective utilization of hardware buffer resources, achieves rapid employment of computation regions, and improves reuse accuracy, all of which promote more flexible compiler methods of identifying reusable computation regions.

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

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

U2 - 10.1145/384264.379243

DO - 10.1145/384264.379243

M3 - Article

AN - SCOPUS:0039335170

VL - 34

SP - 222

EP - 233

JO - Operating Systems Review (ACM)

JF - Operating Systems Review (ACM)

SN - 0163-5980

IS - 5

ER -