• DocumentCode
    3600566
  • Title

    Subtleties of Run-Time Virtual Address Stacks

  • Author

    Suk Chan Kang ; Nicopoulos, Chrysostomos ; Gavrilovska, Ada ; Jongman Kim

  • Author_Institution
    Georgia Inst. of Technol., Atlanta, GA, USA
  • Volume
    14
  • Issue
    2
  • fYear
    2015
  • Firstpage
    152
  • Lastpage
    155
  • Abstract
    The run-time virtual address (VA) stack has some unique properties, which have garnered the attention of researchers. The stack one-dimensionally grows and shrinks at its top, and contains data that is seemingly local/private to one thread, or process. Most prior related research has focused on these properties. However, this article aims to demonstrate how conventional wisdom pertaining to the run-time VA stack fails to capture some critical subtleties and complexities. We first explore two widely established assumptions surrounding the VA stack area: (1) Data accesses can be classified as falling either under VA-stack-area accesses, or non-stack-area accesses, with no aliasing; (2) The VA stack data is completely private and invisible to other threads/processes. Subsequently, we summarize a representative selection of related work that pursued the micro-architectural concept of using run-time VA stacks to extend the general-purpose register file. We then demonstrate why these assumptions are invalid, by using examples from prior work to highlight the potential hazards regarding data consistency, shared memory consistency, and cache coherence. Finally, we suggest safeguards against these hazards. Overall, we explore the function-critical issues that future operating systems and compilers should address to effectively reap all the benefits of using run-time VA stacks.
  • Keywords
    cache storage; data integrity; data privacy; shared memory systems; VA-stack-area accesses; cache coherence; data consistency; function-critical issue; general-purpose register file; microarchitectural concept; nonstack-area access; run-time VA stack data access; run-time virtual address stack; shared memory consistency; Instruction sets; Run time; Virtualization; Run-time stack; cache coherence; data decoupling; memory consistency; register file; shared memory; synonym page;
  • fLanguage
    English
  • Journal_Title
    Computer Architecture Letters
  • Publisher
    ieee
  • ISSN
    1556-6056
  • Type

    jour

  • DOI
    10.1109/LCA.2014.2337299
  • Filename
    6851140