Making big ones out of small ones: RNA networks
Giving users more flexibility in how they configure systems to attack various workloads was a big thread running through SC09 last year. At the show, we took at look at three different companies who are, in one way or another, providing large system images. (Click to see our posts on ScaleMP, 3Leaf, and SGI.)
One company we didn’t get a chance to talk to at SC09 is RNA networks, a Portland, Oregon based start-up that has a unique take on pasting together small commodity hardware to give it big iron capabilities.
Over the holidays, we ventured downtown to RNA’s headquarters and spent some time with Product Manager Don Whitehead. As we sat down to meet, the steady rain had somehow turned to heavy snow, but we didn’t anticipate any problems driving as the temperatures were so warm that the snow wasn’t going to stick to the roads.
RNA does something it calls memory virtualization, although memory aggregation is probably a more apt description. Its software allows users to dedicate memory on compute nodes to a common pool that can be used by any systems on the network. Our pal TPM did a great job of writing up the whats, whys, and hows of RNA here, so we’re not going to duplicate his explanation. The major change from Tim’s story is that RNA has released its RNAcache product and is pushing forward in its sales efforts.
Where RNA’s approach is different from the others we mentioned above is that RNA is not trying to provide a cache-coherent SMP image built from distributed systems. RNA’s products are aimed at providing large, shared memory spaces only.
The company firmly believes that current quad-core and six-core chips provide more than enough CPU cycles to satisfy the majority of workloads. According to RNA, memory capacity is the major bottleneck: it has a good point.
While you certainly can throw a lot of memory into a quad-socket system, performance-sensitive users (think financial services, traditional HPC, predictive analytics, Web 2.0, etc.) hit the limits when they try to put huge objects or entire databases in memory.
To maximize performance, they typically have to buy high-end boxes with large numbers of memory slots, and then populate them with expensive 8GB DIMMs. Even 8GB DIMMs, however, still don’t provide large enough memory spaces for these customers.
With RNA, these customers can devote big (or small) chunks of memory from distributed systems to the common good. RNA's admittedly small customer base is doing exactly that – on a very large scale. One installation has 300 servers working off of an 11TB shared memory pool, which is an astounding amount of resource. RNA shared some performance data from their own tests and from customer tests, and the results are profound.