When iconic American supercomputer maker Cray purchased 20-year-old HPC cluster vendor Appro in late 2012, Cray CEO Peter Ungaro referred to Appro’s principal IP as “one of the most advanced industry clusters in the world.” At the time HPCwire reported that Cray would benefit from the product line and a bigger sales team from Appro, and Appro would benefit from Cray’s overseas connections.
Nearly three years have passed, and Cray can now claim a product portfolio that spans the cluster-supercomputer divide with its Appro-derived CS “cluster supercomputer” series, designed to handle a broad range of medium- to large-scale simulation and data analytics workloads, and its XC- and next-generation Shasta lines, based on Cray’s vision of adaptive supercomputing, engineered to provide both extreme scalability and sustained performance.
The collection of sites that have deployed Cray CS cluster supercomputers, alone or in tandem with the company’s tightly-coupled XC supercomputer products, includes the Swiss National Supercomputing Center (CSCS), the Department of Defense High Performance Computing Modernization Program, Lawrence Livermore National Laboratory, the University of Tsukuba (Japan), Mississippi State University, the University of Tennessee, the Railway Technical Research Institute (Japan), and San Diego Supercomputer Center.
As a recent Cray-IDC webinar and related white paper convey, the cluster computing ecosystem is facing challenges relating to heterogeneity of processor types and increased data-centricity. On account of their sheer scale and increased complexity, cluster supercomputers, defined by IDC as clusters that sell for more than $500,000, tend to up the difficulty level substantially. Consider that, according to IDC reports, the average cluster supercomputer in 2013 (with 389 nodes) has about 22 times more nodes than its smaller cousins (with an average of 17.9 nodes). Specific challenges faced by these über-clusters include scaling systems software and applications; reliability/resilience; data movement; and power and cooling expenses.
Cray and IDC review these challenges and examine some of the ways that Cray has borrowed from its flagship supercomputing line to meet the requirements of its cluster customers.
In the IDC portion of the webinar, covered in an previous HPCwire article, Research Vice President of High Performance Computing at IDC Steve Conway made the point that clusters are driving growth in both HPC and HPDA markets. John Lee, Cray’s vice president of product management, Cray Cluster Solutions, says that Cray’s vision does not put an artificial wall between these, but sees these two complimentary workflows blending into a single paradigm. “Cray’s vision,” he says “is to develop a market leading solution in the areas of compute, store and analyze, to deliver fast solutions to both large math problems and data problems.”
As of the recent TOP500 list, Cray ranked number one in the top 50 with 17 systems and in the top 100 with 31 machines. In the entire list, Cray is number three with 71 systems, behind HP and IBM.
Lee says that while most people continue to associate Cray with “big iron” supercomputers, and while these do make up the majority of its TOP500 share, Cray also lays claim to a lot of “medium iron.” The company has 22 clusters on the recent list, which is 31 percent of its total system allotment. Lee calls out two systems in particular (numbers 13 and 14, CS-Storm clusters) which reflect Cray’s ability to leverage its supercomputing technologies in building very large production systems.
The systems highlighted in blue (below) denote new Cray-built entrants to the list, but as Lee emphasizes, there are a number of smaller clusters (not on the list) that Cray has delivered that vary in complexity and size and still benefit from Cray’s elite line.
Lee says that Cray’s portfolio of two compute products is designed to offer different tools for different problems but with significant technology cross-over.
“While these are two distinct products addressing different market segments, there are lots of technology cross-over where it makes sense,” he states. “For instance, our CS cluster line is leveraged heavily in our data analytics and storage products while supercomputing technologies, developed for our XC series, like innovative packaging and cooling, highly efficient power distribution to the rack, high-speed signal integrity design and comprehensive software tools, are all infused into our cluster systems.”
As system complexity and size increases, Cray is selectively migrating technologies from its supercomputing line to tackle some of the most pressing challenges of large-scale clusters, such as the need to exploit extreme parallelism, the need for greater system resiliency, the need for creative and efficient ways to power and cool the system, and the need for a comprehensive high-performance computing stack that can run at scale and hide programming complexity.
Lee acknowledges that Cray does not have the answers to all the problems facing the high performance computing today, but says the company is making large investments of both money and resources to tackle these problems.
Cray launched its adaptive supercomputing strategy in 2004 to take advantage of different processor architectures for different problems. This had led to its supporting accelerators — GPUs and Xeon Phi parts — on all of its systems. On the current TOP500 list, Cray has the highest share of accelerated systems with 53 such machines.
Lee upholds CS-Storm as an example of a hybrid system that is scalable and power-efficient. Storm is a CS series system with 8 GPU nodes in a 2U chassis optimized for GPU applications. The design supports 176 NVIDIA Tesla K40 or K80 GPUs in a rack offering a potential 329 GPU teraflops per (K80-filled) rack, making it possible to realize 1 petaflops in just three racks.
The power and cooling architecture was designed to ensure that the accelerators run at their maximum performance without power capping or thermal throttling. Innovations in design borrowed from Cray’s flagship XC line include high signal integrity between the host processor and each of the GPUs to ensure reliable error free operation of the GPUs during their heaviest workload. Lee notes that software tools make it easier for customers to extract data level parallelism from their application to take advantage of these manycore architectures. He adds that the name “Storm” heralds from the late 1990s Red Storm project, which marked Cray’s transition to commodity processors.
An example of real-world scaling on GPU nodes can be seen in the case of an oil and gas application called SPECFEM3D, a seismology community code. According to data provided by BP and Princeton, SPECFEM3D has near linear scaling going from 18 minutes on a single GPU to 1.5 minutes across 16 GPUs.
“While not all applications scale this well, for those that do have strong scaling characteristics, CS-Storm can be a very powerful tool,” observes Lee.
Moving on to system resiliency, Lee notes that it is no longer a nice to have feature but a necessity, and that’s in large part because the democratization of supercomputing by clusters has resulted in more non-traditional HPC customers using cluster supercomputers. According to IDC figures, cluster adoption has increased from 65 percent in 2008 to over 80 percent in 2013.
“More mission critical applications are being run on these systems and wider adoption has resulted in increased demand for higher productivity. Sadly the industry trends have been moving in the opposite direction and there are several factors driving this trend,” explains Lee.
“First, as supercomputers have become more economical with increased adoption of affordable commodity clusters, our customers are fielding larger and larger machines. As systems get larger, overall reliability of the system decreases. The second factor that is contributing to the system downtime is individual nodes getting less reliable. This is a byproduct of today’s compute ecosystem. Servers today are vastly different than the servers of yesterday. The server market is being heavily influenced by the hyperscale customers that are pressuring suppliers to drive down costs at the expense of quality and reliability. Hyperscale customers are more tolerant of node level failures because they address that problem at the software layer,” he continues.
“The HPC cluster market has leveraged the larger server ecosystems to drive down cost and these market trends have impacted the overall quality of the systems that we can build. This problem is exacerbated by the fact that the individual nodes in an HPC cluster are becoming more and more powerful. Each node is being asked to do more and this is especially true with hybrid nodes. In some cases each node has one, two, four or even eight accelerators connected to a single host. In those cases, losing a single node means not only losing the host processors but losing all the accelerators and the compute power they deliver.”
Lee goes on to compare the cloud reliability model with clusters. In the hyperscale or cloud reliability model, emphasis is on cost reduction and failure is an every day or every moment occurrence. When a server fails, intelligent software restarts the job on another server. Server failure does not result in much work lost. But in a classic HPC workload environment, many servers are being used to run a single job. Depending on the size of the job and number of nodes, the mean time between failures can be less than a day or perhaps hours. “The reliability of the job is directly proportional to the reliability of your individual servers,” says Lee. “In this case, the loss of one server of course results in the loss of the entire job.”
Reliable systems are engineered from the ground up, the Cray rep observes, from both a micro and macro level. At the micro level it starts with the compute nodes since compute nodes make up the majority of the system and have the biggest impact on reliability. And then there is a holistic approach for the peripherals in order to have a reliable system.
Cray made a decision to go with a strong motherboard partner matched to the needs of demanding HPC applications. Cray says that when it went with a motherboard from an overseas vendor, it found them to be lacking. Since 2012, the Cray cluster product group has been working with Intel to codesign boards that are purposely built for HPC. These are half-width, high reliability boards with a feature set to address specific customer needs.
According to a study from UC Berkeley, single server component failures break down as follows: hard drive at 47 percent, fans at 33 percent, power supplies at 13 percent. Cray engineered its systems to run diskless to eliminate the single highest failing component, and then it engineered built-in redundancy for both fans and power supplies to increase overall system reliability. The remaining 7 percent, which can be attributed to memory, board and processor failures, Cray minimizes with the use of high-quality boards and factory-burn-in tests.
The Soft Side of Big Iron
“What makes our system what it is has just as much to do with our software than our hardware says,” says Lee emphatically, and the company actually has more software engineers than hardware engineers. For customers who manage their own stack, like SDSC and LLNL, Cray can and does ship systems without a software stack, but for those who want a more turnkey solution, Cray ships systems with a Cray HPC software stack, consisting of Cray’s cluster management software framework and other stack tools.
Another prominent example of Cray’s portfolio synergy includes the Cray Programming Environment, which features mature vectorizing compilers designed to improve the performance and ease of programming of clusters. Cray reports this compiler capability is especially important for efficiently exploiting NVIDIA GPGPU accelerators and Intel Xeon Phi coprocessors.