The Millennium project is developing a powerful, networked computational testbed, distributed across campus to enable interdisciplinary research spanning computational science, computer science, and information management. We see computer simulation and modeling becoming established as the third pillar of science and engineering, complementing the traditional activities of theory and experimentation, and expanding to encompass information processing activities, such as database indexing and financial modeling. These activities demand not only tremendous computational and I/O capacity that is easily accessible, but also new methods of interacting with data, with on-going simulations, and with research colleagues. In addition, the increasing level of computer integration requires that design principles be developed for large-scale "systems of systems", where the individual components are complete systems with complex behaviors that must operate together in a coherent fashion. Soon, large organizations will be dealing with systems on the scale of millions of processors. As the scale of the system increases, as the individual components become more complex, and as the range of application demands broaden, the system can no longer be viewed as a set of rigid, closely interlocking Components like a mechanical system; nor can it be decomposed into simple client-server hierarchies. Such systems function more like an economy, where many complex components take local actions that influence one another and implicitly shape the behavior of the system as a whole. In addition, the behavior of these systems is strongly influenced by how they are used, so the research in design principles cannot be conducted in isolation from its application and user context.
The testbed contains nearly a thousand computers, granted by Intel as part of its Technology 2000 program. The hardware organization of the proposed "system-of-systems" consists of a federation of systems at five levels that mirror the organizational structure of the institution. The individual desktop and departmental symmetric multiprocessor (SMP) server levels are augmented first with a "local" high-performance cluster of SMP's, called a CLUMP, which utilizes extensions of the communications, systems, and programming technology developed in the Berkeley Network of Workstations (NOW) project. We believe this kind of computing environment will become common in future scientific laboratories. These group CLUMPs are further augmented by a large "campus" CLUMP, which pushes the envelope of existing cluster technology and provides enough resources for breakthrough investigations. The entire collection of clusters will be interconnected across campus with high-bandwidth gigabit ethernet links to form a large cluster of clusters of SMPs, called an intercluster. The base system software is provided by Microsoft Inc. and Sun Microcomputer Corp. The networking is provided through an NSF CISE Research Infrastructure Grant complementing a large donation for Nortel Networks. Staff support, network management and facilities is provided by the University and NSF. Several externally funded research projects are developing experimental software for the testbed, including new programming environments for scalable, available services, new parallel numerical methods to new programming languages to support irregular computations, and novel mechanisms for resource allocation.
The key conceptual change offered by emerging networks is that resources in the system need no longer be viewed as tightly associated with the physical box in which they reside. Instead, resources can be integrated according to application needs. While resource sharing can be obtained with centralization, the user community has become increasingly empowered with local resources over more than a decade and strongly associate this autonomy with their personal productivity. There is little desire to create a strong central authority that manages resources to maximize their own gain. Moreover, locality of use provides substantial gains in efficiency. We see the deployment of a computational economy, both as a user model and as a fundamental system design principle, as a potential breakthrough of great significance.
Millennium presents an exciting, real environment in which to investigate and test design principles for large-scale complex systems. In addition to driving systems research, the advance of computational science and engineering within this interdisciplinary community creates an opportunity to investigate novel means of visualizing and interacting with computational models, information, and other researchers. The intercluster provides a natural testbed for investigating these issues. The desktops and servers have substantial graphics capability, and a few sites will be created within the complex that can provide intense immersive interaction environments or large active workspaces in which to assimilate information from many sources. These new technologies and new applications will drive development of new forms of user interfaces.
The UC Berkeley Millennium project aims to develop and deploy a hierarchical campus-wide "cluster of clusters" to support advanced applications in scientific computing, simulation, and modeling. Millennium is a project of the Computer Science Division at the University of California, Berkeley