Superoptimization of memory subsystems

  • Joseph G. Wingbermuehle
  • , Ron K. Cytron
  • , Roger D. Chamberlain

Research output: Contribution to journalArticlepeer-review

Abstract

The disparity in performance between processors and main memories has led computer architects to incorporate large cache hierarchies in modern computers. Because these cache hierarchies are designed to be general-purpose, they may not provide the best possible performance for a given application. In this paper, we determine a memory subsystem well suited for a given application and main memory by discovering a memory subsystem comprised of caches, scratchpads, and other components that are combined to provide better performance. We draw motivation from the superoptimization of instruction sequences, which successfully finds unusually clever instruction sequences for programs. Targeting both ASIC and FPGA devices, we show that it is possible to discover unusual memory subsystems that provide performance improvements over a typical memory subsystem. Copyright is held by the owner/author(s).

Original languageEnglish
Pages (from-to)145-154
Number of pages10
JournalACM SIGPLAN Notices
Volume49
Issue number5
DOIs
StatePublished - May 5 2014

Keywords

  • Cache
  • Superoptimization

Fingerprint

Dive into the research topics of 'Superoptimization of memory subsystems'. Together they form a unique fingerprint.

Cite this