MICROTHREADING A MODEL FOR DISTRIBUTED INSTRUCTION-LEVEL CONCURRENCY
Abstract
This paper analyses the micro-threaded model of concurrency making comparisons with both data and instruction-level concurrency. The model is fine grain and provides synchronisation in a distributed register file, making it a promising candidate for scalable chip-multiprocessors. The micro-threaded model was first proposed in 1996 as a means to tolerate high latencies in data-parallel, distributed-memory multi-processors. This paper explores the model's opportunity to provide the simultaneous issue of instructions, required for chip multiprocessors, and discusses the issues of scalability with regard to support structures implementing the model and communication in supporting it. The model supports deterministic distribution of code fragments and dynamic scheduling of instructions from within those fragments. The hardware also recognises different classes of variables from the register specifiers, which allows the hardware to manage locality and optimise communication so that it is both efficient and scalable.
References
-
R. W. Hockney and C. R. Jesshope , Parallel Computers ( Adam Hilger Ltd. , 1981 ) . Google Scholar -
R. W. Hockney and C. R. Jesshope , Parallel Computers 2 ( Adam Hilger Ltd , 1988 ) . Google Scholar - Parallel Computing 17(10-11), 1223 (1991). Crossref, ISI, Google Scholar
- Comp. Phys. Comm. 26, 237 (1982). Crossref, ISI, Google Scholar
-
V. B. Muchnick and A. V. Shafarenko , Data Parallel Computing: the Language Dimension ( Thompson Publishing , 1996 ) . Google Scholar - New Electronics 17(16), 4345 (1984). Google Scholar
- IEEE Micro 10 (1987). Google Scholar
- Primeur monthly (2002), http://www.hoise.com/primeur/02/articles/monthly/CL-PR-06-02-1.html. Google Scholar
J. Burns and J. Gaudiot , Area and system clock effects on SMT/CMP processors,Intl Conf on Parallel Architectures (PACT 01) (2001) (IEEE, 2001) pp. 211–221. Google Scholar- R. P. Peterson et al. (2002) Design of an 8-wide superscalar RISC microprocessor with simultaneous multithreading, ISSC Digest and Visuals Supplement . Google Scholar
-
V. Agarwal , Clock rate versus IPC: The end of the road for conventional microarchictectures , Proc 27th International Symposium on Computer Architecture (ISCA) ( 2000 ) . Google Scholar I. Par , M. Powell and T. Vijaykumar , Reducing register ports for higher speed and lower energy, Proc. 35th annual ACM/IEEE international symposium on Microarchitecture (ACM, 2002) pp. 171–182. Google ScholarS. Rixner , Register organization for media processing, Proceedings of the 6th International Symposium on High-Performance Computer Architecture (IEEE, 2000) pp. 375–386. Google Scholar- Computer Architecture Letters 4, (2005). Google Scholar
- IEEE Computer 37(7), 44 (2004). Crossref, Google Scholar
- S. Swanson, A. Schwerin, A. Petersen, M. Oskin and S. Eggers (2004) Threads on the Cheap: Multithreaded Execution in a Wave Cache Processor, Proc WCED in conjunction with ISCA, at June 2004 . Google Scholar
-
M. Bedford Taylor , Evaluation of the Raw Microprocessor: An Exposed-Wire-Delay Architecture for ILP and Streams , Proc ISCA ( 2004 ) . Google Scholar - IEE Trans. E, Computers and Digital Techniques 143, 309 (1996). Crossref, ISI, Google Scholar
C. R. Jesshope , Multithreaded microprocessors evolution or revolution, Proc. ACSAC 2003: Advances in Computer Systems Architecture,LNCS 2823, eds.Omondo and Sedukhin (Springer, Berlin, Germany, 2003) pp. 21–45. Google Scholar- The Computer Journal 49(2), 211 (2006). Crossref, ISI, Google Scholar
- Microproc. Report 11(2), 1822 (1997). Google Scholar
- IEEE Trans. on Parallel and Distributed Systems 14(6), (2003). Google Scholar
-
R. Balasubramonian , S. Dwarkadas and D. H. Albonesi , Dynamically allocating processor resources between nearby and distant ILP , Proc. Intl. Symp. on Computer Architecture ( 2001 ) . Google Scholar -
R. Chappell , Simultaneous subordinate microthreading (SSMT) , Proc. Intl. Symposium on Computer Architecture ( 1999 ) . Google Scholar -
J. Redstone , S. J. Eggers and H. M. Levy , An analysis of operating system behavior on a simultaneous multithreaded architecture ,Intl. Conf. on Architectural Support for Programming Languages and Operating Systems ( ) ( 2000 ) . Google Scholar -
C. Zilles and G. Sohi , Execution-based prediction using speculative slices , Proc. Intl. Symposium on Computer Architecture ( 2001 ) . Google Scholar J. Redstone , S. Eggers and H. Levy , Mini-threads: increasing TLP on small-scale SMT processors, Proc 9th Intl. Symp. On High Performance Computer Architecture (HPCA-9) (IEEE, 2003) p. 19. Google Scholar-
R. S. Nikhil , G. M. Papadopoulos and Arvind , *T: A multithreaded massively parallel architecture , Proc. Intl. Symposium on Computer Architecture ( 1992 ) . Google Scholar - The Computer Journal 45(3), 320 (2002). Crossref, ISI, Google Scholar
- Journal of Functional Programming 13(6), 1005 (2003). Crossref, ISI, Google Scholar
- Bell, I., Hasasneh, N. and Jesshope C. R. (2005) Microgrids and Micro-contexts: Support Structures for Microthread Scheduling and Synchronisation, to be published in [?] (Special issue and Proc. 1st MicroGrid Conference, Amsterdam, July 2005). Preprint located at: http://staff.science.uva.nl/~jesshope/Papers/IJPP.pdf . Google Scholar


