• DocumentCode
    413097
  • Title

    Software implications of virtual instruction set computers

  • Author

    Adve, Vikram ; Brukman, Michael ; Evlogimenos, Alkis ; Gaeke, Brian

  • Author_Institution
    Dept. of Comput. Sci., Illinois Univ., Urbana, IL, USA
  • fYear
    2004
  • fDate
    26-30 April 2004
  • Firstpage
    201
  • Abstract
    Summary form only given. Virtual instruction set computer (VISC) architectures define two separate instruction sets (one to serve as the representation of stored programs, and another to control the hardware), and use a hardware-specific translation layer to optimize and execute code on the hardware. This approach lends great flexibility to hardware and compiler design, enabling sophisticated hardware-specific optimizations at all stages of a program\´s lifetime. Building on our experience with the LLVM compiler infrastructure, we have proposed (1) a novel virtual instruction set for VISC architectures, and (2) a translation strategy that permits both offline and online translation, as well as dynamic optimization. Our V-ISA design is low-level and language-independent, yet retains enough high-level information to support sophisticated, "lifelong" optimization of software. The VISC strategy and V-ISA design also have important implications for high-level language virtual machines and for operating system kernels. We describe our instruction set design and translation strategy, and our ongoing work on dynamic optimization for VISC systems, and briefly discuss our work in the software implications of VISC systems.
  • Keywords
    computer architecture; high level languages; instruction sets; operating system kernels; optimisation; program compilers; virtual machines; LLVM compiler infrastructure; V-ISA design; VISC architecture; compiler design; dynamic optimization; hardware-specific optimization; hardware-specific translation layer; high-level language; operating system kernel; software implication; translation strategy; virtual instruction set computer; virtual machine; Buildings; Computer aided instruction; Computer architecture; Design optimization; Hardware; High level languages; Instruction sets; Optimizing compilers; Program processors; Virtual machining;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Processing Symposium, 2004. Proceedings. 18th International
  • Print_ISBN
    0-7695-2132-0
  • Type

    conf

  • DOI
    10.1109/IPDPS.2004.1303226
  • Filename
    1303226