Microgrids — The exploitation of massive on-chip concurrency

https://doi.org/10.1016/S0927-5452(05)80012-7Get rights and content

In this paper a general model for instruction-level distributed computing is described. This model provides an explicit description of instruction-level concurrency and allows for scalable implementations of various types of wide-issue multiprocessors. The model is based on microthreading, a hardware-supported multithreading paradigm that schedules small fragments of code dynamically. This model is a replacement for out-of-order issue, currently used in superscalar processors, in order to expose higher levels of concurrent instruction issue. The model describes parametric concurrency, based on loops, and produces schedule-independent binary code. Moreover, this model can be implemented in a fully scalable manner and it is shown here that the instruction issue logic, the distributed register-files and communication structures all scale linearly with issue width. Out-of-order issue has the distinct advantage of backward compatibility in binary code execution as the concurrency is implicit but the scalability disadvantages will eventually outweight this; in the out-of-orderissue model there is a square-law scaling in the size of issue logic with issue width and a cube law scaling of the global register-file with issue width. Microthreading does not yield concurrency unless existing code is recompiled using the concurrency controls introduced by this model. However, backward compatibility is still possible and some speedup on legacy code may be achieved by binary-code translation.

References (23)

  • International Technology Roadmap for Semiconductors

    (2003)
  • M. Homewood et al.

    The IMS T800 Transputer

    IEEE Micro, October 1987

    (1987)
  • W.A. Wulf et al.

    Hitting the Memory Wall: Implications of the Obvious

    Computer Architecture News

    (1995)
  • K.I. Farkas

    The multicluster architecture: reducing cycle time through partitioning

  • G.S. Sohi et al.

    Multiscaler processors

  • Scott Rixner

    Register organization for media processing

  • D. Berger

    Scaling to the end of silicon with EDGE architectures

    IEEE Computer

    (2004)
  • J.A. Fisher

    Parallel processing: a smart compiler and a dumb machine

  • A. Bolychevsky et al.

    Dynamic schedlung in RISC architectures

    IEE Trans. E, Computers and Digital Techniques

    (1996)
  • C.R. Jesshope

    Implementing an efficient vector instruction set in a chip multiprocessor using microthreaded pipellines

  • Cited by (4)

    • Cache-based high-level simulation of microthreaded many-core architectures

      2014, Journal of Systems Architecture
      Citation Excerpt :

      We present the future work of this research in Section 8 and conclude the paper in Section 9. The Microgrid [19,6,17] is a general-purpose, many-core architecture developed at the University of Amsterdam which implements hardware multi-threading using data flow scheduling and a concurrency management protocol in hardware to create and synchronize threads within and across the cores on chip. The suggested concurrent programming model for this chip is based on fork-join constructs, where each created thread can define further concurrency hierarchically.

    • One-IPC high-level simulation of microthreaded many-core architectures

      2017, International Journal of High Performance Computing Applications
    • Analytical-based high-level simulation of the microthreaded many-core architectures

      2014, Proceedings - 2014 22nd Euromicro International Conference on Parallel, Distributed, and Network-Based Processing, PDP 2014
    • Supporting microthread scheduling and synchronisation in CMPs

      2006, International Journal of Parallel Programming
    View full text