The MIT Alewife machine
Citations Over TimeTop 1% of 1995 papers
Abstract
Alewife is a multiprocessor architecture that supports up to 512 processing nodes connected over a scalable and cost-effective mesh network at a constant cost per node. The MIT Alewife machine, a prototype implementation of the architecture, demonstrates that a parallel system can be both scalable and programmable. Four mechanisms combine to achieve these goals: software-extended coherent shared memory provides a global, linear address space; integrated message passing allows compiler and operating system designers to provide efficient communication and synchronization; support for fine-grain computation allows many processors to cooperate on small problem sizes; and latency tolerance mechanisms --- including block multithreading and prefetching --- mask unavoidable delays due to communication.Microbenchmarks, together with over a dozen complete applications running on the 32-node prototype, help to analyze the behavior of the system. Analysis shows that integrating message passing with shared memory enables a cost-efficient solution to the cache coherence problem and provides a rich set of programming primitives. Block multithreading and prefetching improve performance by up to 25% individually, and 35% together. Finally, language constructs that allow programmers to express fine-grain synchronization can improve performance by over a factor of two.
Related Papers
- → Fairness and Throughput in Switch on Event Multithreading(2006)56 cited
- → Fairness enforcement in switch on event multithreading(2007)36 cited
- → A Novel Thread Partitioning Approach Based on Machine Learning for Speculative Multithreading(2013)13 cited
- → Evaluation of a speculative multithreading compiler by characterizing program dependences(2005)
- → Enhanced interleaved multithreaded multiprocessors and their performance analysis(2004)