Cloud Onload® – Eliminating the Primary Limits of Application Performance
In part one of our application acceleration blog series, we discussed the business value of accelerating applications in today’s data center. If you missed part one, you can read it here. In today’s post I’d like to discuss the variety of sources that limit application performance in the enterprise data center.
For most network-centric and storage-centric applications, I/O throughput is the primary limiter to application performance. The primary limiter to I/O throughput is the kernel I/O software driver stack. When a call is made by an application to a kernel driver, the application is paused (running in user space), its memory contents are copied to external swap space, and the operating system kernel is invoked to run the driver in kernel space. When the I/O is completed, the reverse process happens. These context switches have a significant impact on application performance by consuming server CPU cycles, reducing the CPU cycles available for applications. By eliminating these context switches, the number of CPU cycles for I/O can be significantly reduced, making them available to accelerate application performance.
Solarflare’s Cloud Onload application acceleration platform eliminates context switches, resulting in significant application acceleration. The platform consists of Solarflare’s Cloud Onload software and our latest-generation XtremeScale 10/25/40/50/100 GbE adapters that feature capabilities such as dedicated vNICs, protected memory, and extremely efficient frame and packet switching. The platform takes advantage of these capabilities to reduce I/O demands on the CPU, providing more cycles for applications. Internal testing has shown that the Cloud Onload platform can increase the performance of cloud applications up to 10X over the performance of kernel drivers.
What is the business value of these performance improvements? In our previous example of a data center with 10,000 servers that was growing its load by 30% per year, 17,000 servers were required after two years. Using the Cloud Onload platform and a 25% reduction conservative estimate reduction in the number of I/O CPU cycles required, the number of servers that would have to be added drops from 7,000 to 2,750 (for a total of 12,750 servers). This results in a massive reduction in CapEx and OpEx, and significantly reduces the cost per user session.
In our next post, we’ll discuss some real-world examples of applications that have been accelerated with Cloud Onload.