Considering the cost of high-end supercomputers, the ones found at top academic institutions and national labs, can run into many millions of dollars, it’s only natural to want to treat these valuable resources as gingerly as possible. Administators are prudent to enact conservative permissions schemes and only allow well-vetted applications to be run on these machines. But such protective measures, while understandable and even commendable, could stifle the kind of innovation and tinkering that often leads to better code and time-saving efficiencies. That’s where the idea of a test system comes into play. A computational testbed allows developers and researchers to try out new software ideas on smaller-scale, and less-expensive machinery. This type of resource is implemented with the idea that it’s ok to break.
The testbed cluster recently completed at North Carolina State University was the brainchild of Frank Mueller, a computer science professor at NC State. Seeing the need for a more flexible supercomputer, he decided to create his own. Mueller’s team completed work on the ARC cluster March 30. ARC stands for “A Root Cluster” as the computational infrastructure will primarily support research into scalability for system-level software solutions. This will involve making changes to the cluster’s entire software stack, including the operating system. Once Mueller and his team are able to demonstrate the worthiness of a solution, then they can implement it on a big-name system — like the Jaguar supercomputer at Oak Ridge National Labs.
“We can do anything we want with it. We can experiment with potential solutions to major problems, and we don’t have to worry about delaying work being done on the large-scale systems at other institutions.”
Today’s generation of supercomputers experience failures on average a couple times a day, translating into hours of lost work. But the coming class of exaflop-level machines are anticipated to exhibit one-billion-way parallelism. The implication of all those cores is an exponential increase in the number of failures. That is why it’s so important to increase hardware reliability or make systems more error-tolerant. Being able to try out theories on a crash-test cluster will help accomplish these goals.
The ARC cluster was made possible by a $549,999 NSF grant, with additional support coming from NVIDIA and NC State. With 1,728 processor cores and 36 NVIDIA Tesla C2050 GPUs on 108 computer nodes (32GB RAM each), it is now the largest academic HPC system in North Carolina.