Code transformations for TLB power reduction

Reiley Jeyapaul, Aviral Shrivastava

Research output: Contribution to journalArticle

2 Citations (Scopus)

Abstract

The Translation Look-aside Buffer (TLB) is a very important part in the hardware support for virtual memory management implementation of high performance embedded systems. The TLB though small is frequently accessed, and therefore not only consumes significant energy, but also is one of the important thermal hot-spots in the processor. Recently, several circuit and microarchitectural implementations of TLBs have been proposed to reduce TLB power. One simple, yet effective TLB design for power reduction is the Use-Last TLB architecture proposed in IEEE J Solid State Circuits, 1190-1199, (2004). The Use-Last TLB architecture reduces the power consumption when the last page is accessed again. In this work, we develop code transformation techniques to reduce the page switchings in data cache accesses and propose an efficient page-aware code placement technique to enhance the energy reduction capabilities achieved by the Use-Last TLB architecture for instruction cache accesses. Our comprehensive page switch reduction algorithm results in an average of 39% reduction in the data-TLB page switching, and our code placement heuristic results in an average of 76% reduction in the instrucion-TLB page switchings with negligible impact on the performance on benchmarks from MiBench, Multimedia, DSPStone and BDTI suites. The reduced page switch count through our techniques achieves an equivalent power savings, above and beyond the reduction achieved by the Use-Last TLB architecture implementation.

Original languageEnglish (US)
Pages (from-to)254-276
Number of pages23
JournalInternational Journal of Parallel Programming
Volume38
Issue number3-4
DOIs
StatePublished - Jun 2010

Fingerprint

Buffer
Switches
Networks (circuits)
Cache
Placement
Switch
Embedded systems
Computer hardware
Virtual Memory
Electric power utilization
Memory Management
Power Saving
Data storage equipment
Hot Spot
Energy
Embedded Systems
Power Consumption
Multimedia
Count
High Performance

Keywords

  • Code placement
  • Code transformation
  • Compiler technique
  • D-TLB power
  • I-TLB power
  • Instruction scheduling
  • Tlb power

ASJC Scopus subject areas

  • Software
  • Information Systems
  • Theoretical Computer Science

Cite this

Code transformations for TLB power reduction. / Jeyapaul, Reiley; Shrivastava, Aviral.

In: International Journal of Parallel Programming, Vol. 38, No. 3-4, 06.2010, p. 254-276.

Research output: Contribution to journalArticle

@article{7f91742adb854ef680cde4077a91147b,
title = "Code transformations for TLB power reduction",
abstract = "The Translation Look-aside Buffer (TLB) is a very important part in the hardware support for virtual memory management implementation of high performance embedded systems. The TLB though small is frequently accessed, and therefore not only consumes significant energy, but also is one of the important thermal hot-spots in the processor. Recently, several circuit and microarchitectural implementations of TLBs have been proposed to reduce TLB power. One simple, yet effective TLB design for power reduction is the Use-Last TLB architecture proposed in IEEE J Solid State Circuits, 1190-1199, (2004). The Use-Last TLB architecture reduces the power consumption when the last page is accessed again. In this work, we develop code transformation techniques to reduce the page switchings in data cache accesses and propose an efficient page-aware code placement technique to enhance the energy reduction capabilities achieved by the Use-Last TLB architecture for instruction cache accesses. Our comprehensive page switch reduction algorithm results in an average of 39{\%} reduction in the data-TLB page switching, and our code placement heuristic results in an average of 76{\%} reduction in the instrucion-TLB page switchings with negligible impact on the performance on benchmarks from MiBench, Multimedia, DSPStone and BDTI suites. The reduced page switch count through our techniques achieves an equivalent power savings, above and beyond the reduction achieved by the Use-Last TLB architecture implementation.",
keywords = "Code placement, Code transformation, Compiler technique, D-TLB power, I-TLB power, Instruction scheduling, Tlb power",
author = "Reiley Jeyapaul and Aviral Shrivastava",
year = "2010",
month = "6",
doi = "10.1007/s10766-009-0123-8",
language = "English (US)",
volume = "38",
pages = "254--276",
journal = "International Journal of Parallel Programming",
issn = "0885-7458",
publisher = "Springer New York",
number = "3-4",

}

TY - JOUR

T1 - Code transformations for TLB power reduction

AU - Jeyapaul, Reiley

AU - Shrivastava, Aviral

PY - 2010/6

Y1 - 2010/6

N2 - The Translation Look-aside Buffer (TLB) is a very important part in the hardware support for virtual memory management implementation of high performance embedded systems. The TLB though small is frequently accessed, and therefore not only consumes significant energy, but also is one of the important thermal hot-spots in the processor. Recently, several circuit and microarchitectural implementations of TLBs have been proposed to reduce TLB power. One simple, yet effective TLB design for power reduction is the Use-Last TLB architecture proposed in IEEE J Solid State Circuits, 1190-1199, (2004). The Use-Last TLB architecture reduces the power consumption when the last page is accessed again. In this work, we develop code transformation techniques to reduce the page switchings in data cache accesses and propose an efficient page-aware code placement technique to enhance the energy reduction capabilities achieved by the Use-Last TLB architecture for instruction cache accesses. Our comprehensive page switch reduction algorithm results in an average of 39% reduction in the data-TLB page switching, and our code placement heuristic results in an average of 76% reduction in the instrucion-TLB page switchings with negligible impact on the performance on benchmarks from MiBench, Multimedia, DSPStone and BDTI suites. The reduced page switch count through our techniques achieves an equivalent power savings, above and beyond the reduction achieved by the Use-Last TLB architecture implementation.

AB - The Translation Look-aside Buffer (TLB) is a very important part in the hardware support for virtual memory management implementation of high performance embedded systems. The TLB though small is frequently accessed, and therefore not only consumes significant energy, but also is one of the important thermal hot-spots in the processor. Recently, several circuit and microarchitectural implementations of TLBs have been proposed to reduce TLB power. One simple, yet effective TLB design for power reduction is the Use-Last TLB architecture proposed in IEEE J Solid State Circuits, 1190-1199, (2004). The Use-Last TLB architecture reduces the power consumption when the last page is accessed again. In this work, we develop code transformation techniques to reduce the page switchings in data cache accesses and propose an efficient page-aware code placement technique to enhance the energy reduction capabilities achieved by the Use-Last TLB architecture for instruction cache accesses. Our comprehensive page switch reduction algorithm results in an average of 39% reduction in the data-TLB page switching, and our code placement heuristic results in an average of 76% reduction in the instrucion-TLB page switchings with negligible impact on the performance on benchmarks from MiBench, Multimedia, DSPStone and BDTI suites. The reduced page switch count through our techniques achieves an equivalent power savings, above and beyond the reduction achieved by the Use-Last TLB architecture implementation.

KW - Code placement

KW - Code transformation

KW - Compiler technique

KW - D-TLB power

KW - I-TLB power

KW - Instruction scheduling

KW - Tlb power

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

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

U2 - 10.1007/s10766-009-0123-8

DO - 10.1007/s10766-009-0123-8

M3 - Article

VL - 38

SP - 254

EP - 276

JO - International Journal of Parallel Programming

JF - International Journal of Parallel Programming

SN - 0885-7458

IS - 3-4

ER -