Your next 512-processor Linux box might be a NUMA system, not a cluster.
Not much longer than a year ago, common Linux wisdom said the operating system scaled reliably only to eight or maybe 16 processors. This widely held belief that Linux somehow was limited in scalability deterred many users from considering it as the underlying operating system for their largest enterprise and most complex technical applications. It was a disappointing limitation for those who wanted to take advantage of the benefits of open-source software on every platform in their environments.
What a difference a year can make. In that time, a variety of advances made by the Linux development community and system vendors has enabled a whole new class of scalable computers running Linux. Today, 16-, 32- and even 64-processor systems running Linux are installed around the world, solving complex problems and running a variety of high-end enterprise applications.
However, to members of the high-performance computing (HPC) community, even 64-processor scalability isn't enough. Commonly needing to harness the computing power of hundreds and sometimes thousands of processors to solve their basic problems, HPC users still are asking for more. Many computational models have resource requirements and communications complexities in excess of what today's clusters adequately can address. HPC users who have adopted Linux have had to accept sub-optimal cluster performance. The fact remains that some hardware solutions available today have scalability that far exceeds what the current standard Linux kernel supports. Also still hanging around is this question: Will systems based on Linux ever scale to the point where they can address the unique needs of this demanding user community?
SGI believes the answer is yes, and it introduced the Altix 3000 line of servers and superclusters in January 2003. The Altix systems have a non-uniform memory access (NUMA) architecture, and they currently offer 64-processor Linux scaling. Over 100 Altix systems are installed worldwide in a variety of configurations, many deployed as multinode systems in configurations with more than 128 processors. For example, The Netherlands Organisation for Scientific Research installed at SARA has 416 processors. With an underlying architecture that can support much more than the current 64-processor limit, it should come as no surprise that Altix customers already have been asking how they can help scale Linux further.
In response to this customer demand, SGI is working to scale Linux to 128 processors running a standard 2.4 Linux kernel by working with the Linux community and a variety of prestigious HPC sites. The global effort, announced at LinuxWorld San Francisco in August 2003, includes the Pacific Northwest National Laboratory, the University of Queensland in Australia, the Computing Center at Johannes Kepler University in Austria, the US Naval Research Lab (NRL) and the NASA Ames Research Center. The group plans to assist with the development and testing of 128-processor functionality and demonstrate early progress toward its goal at the annual Supercomputing tradeshow in November 2003. The next goal is to have a fully supported product by early 2004.
In addition, SuSE also has joined the effort and is evaluating whether to include the work in a future release of the company's SuSE Linux Enterprise Server product. This achievement would break yet another glass ceiling for Linux and open-source software.
What might be surprising is the group's belief that scaling Linux to 128, 256 or even 512 processors won't be that difficult. The basis for this conclusion is founded partly on the flexibility of the Altix architecture and the experience SGI and the users have had with the company's IRIX operating system, which runs on nearly identical Origin hardware.
For example, the NASA Ames Research Center previously has worked with SGI to build systems to model the Space Shuttle and to perform other complex research. It currently has a 1,024-processor single system image Origin installed. It is uncertain whether Linux can ever reach that level of scalability, but the prospects are encouraging. NRL, the first site to test the code changes that support 128-processor scalability, is enthusiastic about the early results. Meanwhile, working from a strong hardware foundation and experience, SGI engineers believe Linux can achieve much more and are enthusiastic about the outcome of simulations that scale the operating system well beyond 128 processors.
“Clearly the community has already done most of the group's work to make Linux very capable. Scalable systems simply provide the magnifying glass that exposes minor problems in the operating system that need to be fixed to deliver optimum performance”, said Jack Steiner, a principal engineer working on Linux scalability at SGI.
The work will be given back to the community, and ultimately the scalability work being undertaken should benefit all Linux users as it is incorporated into community kernels. At the current pace of testing, less than a year from now people will be saying, “You know, Linux scales reliably to only a few hundred processors.”