Abstract
Multithreaded architectures have been proposed for future multiprocessor systems. However, some open issues remain. Can multithreading be supported in a multiprocessor so that it can tolerate synchronization and communication latencies, with little intrusion on the performance of sequentially-executed code? How much does such support contribute to scalable performance when communication and synchronization demands are high? In this paper, we describe the design of EARTH, an architecture which addresses these issues. Each processor in EARTH has an off-the-shelf Execution Unit (EU) for executing threads, and an ASIC Synchronization Unit (SU) supporting dataflow-like thread synchronizations, scheduling, and remote requests. In preparation for an implementation of the SU, we have emulated a basic EARTH model on MANNA 2.0, an existing multiprocessor whose hardware configuration closely matches EARTH. This EARTH-MANNA testbed is fully functional, enabling us to experiment with large benchmarks with impressive speed. With this platform, we demonstrate that multithreading support can be efficiently implemented (with little emulation overhead) in a multiprocessor without a major impact on uniprocessor performance. Also, we measure how much basic multithreading support can help in tolerating increasing communication/synchronization demands.
Similar content being viewed by others
References
Anant Agarwal, Beng-Hong Lim, David Kranz, and John Kubiatowicz, APRIL: A Processor Architecture for Multiprocessing, Proc. of the 17th Ann. Int’l. Symp. on Computer Architecture, Seattle, Washington, pp. 104–114 (May 1990).
Robert Alverson, David Callahan, Daniel Cummings, Brian Koblenz, Allan Porterfield, and Burton Smith, The Tera Computer System, Conf. Proc., Int’l. Conf. on Supercomputing, Amsterdam, The Netherlands, pp. 1–6 (June 1990).
Boon Seong Ang, Arvind, and Derek Chiou, Start the Next Generation: Integrating Global Caches and Dataflow Architecture, CSG Memo 354, Computation Structures Group, MIT Laboratory for Computer Science (August 1994).
U. Bruening, W. K. Giloi, and W. Schroeder-Preikschat, Latency Hiding in Message-Passing Architectures, Proc. of the 8th Int’l Parallel Processing Symp., Cancún, Mexico, IEEE Computer Society, pp. 704–709 (April 1994).
David E. Culler, Anurag Sah, Klaus Erik Schauser, Thorsten von Eicken, and John Wawrzynek, Fine-Grain Parallelism with Minimal Hardware Support: A Compiler-Controlled Threaded Abstract Machine, Proc. of the Fourth Int’l. Conf. on Architectural Support for Programming Languages and Operating Systems. Santa Clara, California, pp. 164–175 (April 1991).
Robert A. Iannucci, Guang R. Gao, Robert H. Halstead, Jr., and Burton Smith, Eds., Multithreated Computer Architecture: A Summary of the State of the Art. Norwell, Massachusetts: Kluwer Academic Publishers (1994). Book contains papers presented at the Workshop on Multithreaded Computers, Albuquerque, New Mexico (November 1991).
Rishiyur S. Nikhil and Arvind, Can Dataflow Subsume von Neumann Computing?, Proc. of the 16th Ann. Int’l. Symp. on Computer Architecture, Jerusalem, Israel, pp. 262–272 (May–June 1989).
R. S. Nikhil, G. M. Papadopoulos, and Arvind, *T: A Multithreaded Massively Parallel Architecture, Proc. of the 19th Ann. Int’l. Symp. on Computer Architecture, Gold Coast, Australia, pp. 156–167 (May 1992).
Shuichi Sakai, Kazuaki Okamoto, Hiroshi Matsuoka, Hideo Hirono, Yuetsu Kodama, and Mitsuhisa Sato, Super-Threading: Architectural and Software Mechanisms for Optimizing Parallel Computation, Conf. Proc., 1993 Int’l. Conf. on Supercomputing, Tokyo, Japan, pp. 251–260 (July 1993).
Herbert H. J. Hum and Guang R. Gao, Supporting a Dynamic SPMD Model in a Multithreaded Architecture, Digest of Papers, 38th IEEE Computer Society Int’l. Conf., COMPCON Spring ’93, San Francisco, California, pp. 165–174 (February 1993).
Herbert H. J. Hum, Kevin B. Theobald, and Guang R. Gao, Building Multithreaded Architectures with Off-the-Shelf Microprocessors, Proc. of the 8th Int’l. Parallel Processing Symp., Cancún, Mexico, IEEE Computer Society, pp. 288–294 (April 1994).
Olivier Maquelin, Guang R. Gao, Herbert H. J. Hum, Kevin B. Theobald, and Xinmin Tian, Polling Watchdog: Combining Polling and Interrupts for Efficient Message Handling, Proc. of the 23rd Ann. Int’l. Symp. on Computer Architecture, Philadelphia, Pennsylvania (May 1996). To appear.
Jack B. Dennis and Guang R. Gao, An Efficient Pipelined Dataflow Processor Architecture, Proc. of Supercomputing ’88, Orlando, Florida, pp. 368–373 (Noveber 1988).
James Rumbaugh, A Data Flow Multiprocessor, IEEE Trans. on Computers, 26(2): 138–146 (February 1977).
Guang R. Gao, Herbert H. J. Hum, and Jean-Marc Monti, Towards an Efficient Hybrid Dataflow Architecture Model, Proc. of PARLE ’91—Parallel Architectures and Languages Europe, Eindhoven, The Netherlands, Vol. I pp. 355–371 (June 1991), No. 505 in Lecture Notes in Computer Science, Springer-Verlag.
H. H. J. Hum and G. R. Gao, A High-Speed Memory Organization for Hybrid Dataflow/von Neumann Computing, Future Generation Computer Systems 8(4):287–301 (September 1992).
Olivier C. Maquelin, Load Balancing and Resource Management in the ADAM Machine, In Advanced Topics in Dataflow Computing and Multithreading, Guang R. Gao, Lubomir Bic, and Jean-Luc Gaudiot, Eds., IEEE Computer Society Press, pp. 307–323 (1995). Book contains papers presented at the Second International Workshop on Dataflow Computers, Hamilton Island, Australia (May 1992).
Robert H. Halstead, Jr., Multilisp: A Language for Concurrent Symbolic Computation, ACM Trans. on Programming Languages and Systems, 7(4):501–538 (October 1985).
Herbert H. J. Hum, Olivier Maquelin, Kevin B. Theobald, Xinmin Tian, Xinan Tang, Guang R. Gao, Phil Cupryk, Nasser Elmasri, Laurie J. Hendren, Alberto Jimenez, Shoba Krishnan, Andres Marquez, Shamir Merali, Shashank Nemawarkar, Prakash Panangaden, Xun Xue, and Yingchun Zhu, The Multi-Threaded Architecture Multiprocessor, ACAPS Technical Memo 88, School of Computer Science, McGill University, Montréal, Québec (December 1994). In ftp://ftp-acaps.cs.mcgill.ca/pub/doc/memos.
Kevin B. Theobald, Guang R. Gao, and Laurie J. Hendren, Speculative Execution and Branch Prediction on Parallel Machines, Conf. Proc., 1993 Int’l. Conf. on Supercomputing, Tokyo, Japan, pp. 77–86 (July 1993).
L. Roh, W. A. Najjar, and A. P. W. Böhm, Generation and Quantitative Evaluation of Dataflow Clusters, Proc. of Functional Programming Languages and Computer Architectures, Copenhagen, Denmark, ACM SIGPLAN and SIGARCH (June 1993).
L. Hendren, C. Donawa, M. Emami, G. Gao, Justiani, and B. Sridharan, Designing the McCAT Compiler Based on a Family of Structured Intermediate Representations, Proc. of the 5th Int’l. Workshop on Languages and Compilers for Parallel Computing, New Haven, Connecticut, pp. 406–420 (August 1992), No. 757 in Lecture Notes in Computer Science, Springer-Verlag, published in 1993.
Bhama Sridharan, An Analysis Framework for the McCAT Compiler, Master’s Thesis, McGill University, Montréal, Québec (September 1992).
Ellen Spertus, Seth Copen Goldstein, Klaus Erik Schauser, Thorsten von Eicken, David E. Culler, and William J. Dally, Evaluation of Mechanisms for Fine-Grained Parallel Programs in the J-Machine and the CM-5, Proc. of the 20th Ann. Int’l. Symp. on Computer Architecture, San Diego, California, pp. 302–313 (May 1993).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Hum, H.H.J., Maquelin, O., Theobald, K.B. et al. A Study of the EARTH-MANNA Multithreaded System. Int J Parallel Prog 24, 319–348 (1996). https://doi.org/10.1007/BF03356753
Published:
Issue Date:
DOI: https://doi.org/10.1007/BF03356753