• DocumentCode
    944960
  • Title

    Memory energy minimization by data compression: algorithms, architectures and implementation

  • Author

    Benini, Luca ; Bruni, Davide ; Macii, Alberto ; Macii, Enrico

  • Author_Institution
    Dipartamento di Elettronica, Informatica e Sistemistica, Univ. di Bologna, Italy
  • Volume
    12
  • Issue
    3
  • fYear
    2004
  • fDate
    3/1/2004 12:00:00 AM
  • Firstpage
    255
  • Lastpage
    268
  • Abstract
    Storing data in compressed form is becoming common practice in high-performance systems, where memory bandwidth constitutes a serious bottleneck to program execution speed. In this paper, we suggest hardware-assisted data compression as a tool for reducing energy consumption of processor-based systems. We propose a novel and efficient architecture for on-the-fly data compression and decompression whose field of operation is the cache-to-memory path. Uncompressed cache lines are compressed before they are written back to main memory, and decompressed when cache refills take place. We explore two classes of table-based compression schemes. The first, based on offline data profiling, is particularly suitable to embedded systems, where predictability of the data set is usually higher than in general-purpose systems. The second solution we introduce is adaptive, that is, it takes decisions on whether data words should be compressed according to the data statistics of the program being executed. We describe in details the architecture of the compression/decompression unit and we provide an insight about its implementation as a hardware (HW) block. We present experimental results concerning memory traffic and energy consumption in the cache-to-memory path of a core-based system running standard benchmark programs. The obtained energy savings range from 8%-39% when profile-driven compression is adopted, and from 7%-26% when the adaptive scheme is used. Performance improvements are also achieved as a by-product, showing the practical applicability of the proposed approach.
  • Keywords
    cache storage; data compression; low-power electronics; memory architecture; microprocessor chips; minimisation; benchmark programs; cache lines; cache refills; cache-to-memory path; compression/decompression unit; core based system; data statistics; embedded systems; energy consumption reduction; general purpose systems; hardware assisted data compression; hardware implementation; high performance systems; memory bandwidth; memory energy minimization; offline data profiling; on-the-fly data compression; on-the-fly data decompression; processor based systems; profile driven compression; program execution speed; table based compression; Analytical models; Associate members; Bandwidth; Data compression; Design optimization; Embedded system; Energy consumption; Hardware; Minimization methods; Statistics;
  • fLanguage
    English
  • Journal_Title
    Very Large Scale Integration (VLSI) Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1063-8210
  • Type

    jour

  • DOI
    10.1109/TVLSI.2004.824304
  • Filename
    1281797