Reducing latency with fast NVMe based storage for cloud
Why Should You Invest In A Really Fast All-Flash Or NvMe Based Networked Storage System
  • Why Should You Invest In A Really Fast All-Flash Or NvMe Based Networked Storage System

Before 2001, the computing world only knew single core processors. In 2001 IBM® introduced the world's first multicore Power4 processor with two 64-bit microprocessors in the same die. Today more popularly we call a single chip die as a processor socket. The first Dual Core Athlon™ Processor was launched by AMD® on April 21, 2005 and Dual Core Xeon® Processor was launched by Intel® on October 10, 2005. 

Processor manufacturers, before the era of multicore processors were busy packing more transistors on the same die and increasing the processor cycles per second or popularly known as the frequency of the processor core. The frequency of the processor core determines how fast a compute instruction is processed by the processor. So essentially the single core processors were doing sequential computing. However large computers or servers with multiple processor sockets, were able to do parallel computing with multiple processors plugged in, supporting symmetric multi-processing (SMP). There was a requirement for the operating system and the application software to be multi-threaded to support SMP, which means that the software should be able to distribute its compute requirements into multiple threads and allocate it to different processors with the help of the operating system to be able to take advantage of SMP.

The thumb rule initially was the higher the frequency of the processor, the better would be the compute capacity of the processor. Although the highest frequency of a single core of the prototype version of a processor has been around 8.5GHz and of a production processor has been around 5.5GHz but there were limitations in increasing the frequency of a single core because of the simple fact that higher the frequency, higher was the power consumption, and equally higher was the heat dissipation. Some people started using liquid cooling to run very high frequency processors which has is getting more and more popular these days. Another interesting article on the processor frequency growth limitations is Why has CPU frequency ceased to grow ? by Victoria Zhislina.

But what was the need for higher core frequency in processors? 

Before the era of multicore processors, the world's major software were either licensed on a per server or per physical processor or socket basis. Oracle®, as per my understanding, was the first major software vendor to come out with Core based licensing which was followed by others including Microsoft®. Currently most database software, which are the most expensive licenses used by enterprises across the globe, are on core-based licenses. Essentially to derive more performance of your databases and to make your applications run faster you need to add more processor cores to the databases.

You must be wondering, why am I telling you about processors when this post is about networked storage. Pardon me for taking your time but it was important for me to explain processor architecture for you to understand its role in selecting your storage system.

Now how do we reduce the cost of an expensive database or any other software that licenses it on per core basis. Every processor core is not working in isolation. It must interact and interface with Random Access Memory (RAM) and I/O such as USB and Ethernet, and the most important of all is the disk which is the persistent data storage system in a compute architecture. All these interfaces may not be as fast as the Processor itself, which means that the interface may not be able to respond at the same speed as a CPU instruction cycle. Here comes into picture the Processor Wait State. A wait state is a delay experienced by a compute processor when accessing external memory or another device that is slow to respond. 

Now if we compare the interfaces of RAM, I/O and storage disk, the storage disk traditionally has been the slowest component in the entire stack to respond to the processor cycles. This means that the RAM and I/O do induce wait states in the processor cores but are much less and the storage disk induces the maximum wait states in the processor core. 

My point here is, if I we able to increase the speed of the disk to respond to the processor then our wait states reduce, and we can use more cycles of the processor core to compute which means a faster response of our application software.

Now coming to the disk storage part. Typically, mechanical disks are the slowest of the lot. Flash Disks are much faster and the latest NVMe Flash Disks are the fastest of the lot. The cost also increases directly in proportion to the performance. Another factor which induces latency in the disk subsystem is the disk interface or storage network. Most popular direct disk attached interfaces are SAS and SATA which I do not want to discuss here for obvious reasons, but for networked storage systems, the most popular interfaces are Fiber Channel and iSCSI over Ethernet. With the high speed and low latency Ethernet such as 40G and 100G, iSCSI is becoming very popular now. The advantage of iSCSI has been reduced complexity of deployment, management and moreover the flexibility of a TCP/IP network, it provides. But Fiber Channel has traditionally been the fastest and lowest in latencies before the NVMe over Fabrics (NVMeOF) was introduced. 

If you invest in a really fast storage system like NVMe disk based; using your disk subsystem reduces the processor wait states and results in dramatic reduction in processor cycles usage, which means that you can run the same application with same or better performance using much lesser number of processor cores and end up saving a lot of licensing costs.

When I architected the setup of ZeaCloud®, my clear choice was NVMe storage and NVMeOF which results in running more workloads on the same processor and happier customers because of better application performance.

Author – Santosh Agrawal, Experienced IT & Cloud Infrastructure Architect, Entrepreneur

Please follow me here on LinkedIn    

Disclaimer - All brands and trademarks are the property of their respective owners. The author does not claim any right to any such brand or Trademark.