New Book Released

I’m proud to announce that I am a co-author on a new book just released. It’s available now for download and later via print edition. Frank Denneman announced on his blog the official release, as he was the main organizer and author for this project. This is not only my first published book, but also a first as a main co-author. It was indeed exciting and challenging at the same time. I can now at some level appreciate those that have tackled such a feat, as it wasn’t the easiest thing I have ever done! :) 

Being a 300-page book that talks about the many architectural decisions when designing for storage performance, is not something for the faint of heart. The focus and desire was to articulate a deeper technical understanding of the software layers that intersect and interact with the differing hardware designs.

I would like to thank Frank for giving me the opportunity to work with him on this project. It was truly a delight and a rewarding experience!

You can directly download the book here. Enjoy!

FVP Tip: Change Storage Device Display Name

As you might know, you have the ability to change a storage device display name on a particular ESXi host. This can be useful when you have several different devices installed on a given host and/or have different raid controllers backing the devices.

When you are wanting to test several different flash device models with different controllers and configurations with PernixData FVP, then it might become difficult to remember which identifier is which device. 

It's my reccomendation that you add the name of the controller as an extension to a friendlier device name. This way you can monitor performance by SSD with assigned controller.  An example could be: “Intel 520 – H310” The SSD model is represented and the controller is identified as a H310 for a Dell host.



vSphere Web Client Steps:

  1. Browse to the host in the vSphere Web Client navigator. Click the Manage tab and click Storage.
  2. Select the device to rename and click Rename. 
  3. Change the device name to a name that reflects your needs.


Now that you have renamed your flash device then you will see the changed device names show up in the FVP Plugin UI. 

Features of an Enterprise SSD

When looking for a flash device to use for PernixData FVP or other enterprise use cases, performance and reliability are important aspects to factor in. Just because a drive is spec’d with high IOPs and low latency numbers, doesn’t mean that it will keep up at that rate over time with enterprise workloads.

I would guess that most of you would prefer a consistent performing, reliable flash to higher IOPs or lower latency.  This is one reason why I like the Intel S3700 SSD. This drive does a good job at repeatable results and withstands heavy workloads over time. I’m not saying this drive or others are slow, these drives are still very fast, but they do favor consistency and reliability by design.


A little over a year ago Intel introduced a technology that enhanced the reliability of MLC flash. Intel called it HET – High Endurance Technology. This is basically an enhancement in firmware, controller and high-cycling NAND for endurance and performance. The optimization was in error avoidance techniques and write amplification reduction algorithms. The result is new enterprise SSD’s that are inexpensive and deliver good performance at predictable behavior. Keep in mind though that not all Intel drives have HET, this is what separates consumer from enterprise class drives.

This is one reason why Intel can claim “10 full drive writes per day over the 5-year life of the drive”. You will also notice that other manufactures/vendors OEM and incorporate Intel’s 25nm MLC HET NAND into their products. The incorporation of HET set’s Intel apart from the rest, but this doesn’t mean however that there are not others to choose from. It’s when you factor price, reliability, performance, and customer satisfaction that currently leads many to the S3700. 

The other important aspect to consider when looking for an enterprise SSD is read/write performance consistency. Some drives are architected just for read performance consistency. So if you have workloads that are balanced between read/write, or are write heavy then you want to look at a drive that provides consistency for both read and write.

As an example, the Intel S3500 gives better read performance consistency while the Intel S3700 gives consistency for both read and write. (Keep in mind that the Intel S3500 doesn't use HET)


Intel S3500 


Intel S3700


I reccomend taking a look at Frank Denneman's current blog Series that goes into some other aspects of flash performance with FVP. 


Pernixdata – 5 Points of Differentiation

Since Pernixdata recently came out of stealth with their Flash Virtualization Platform, I thought it would be good to do a short breakdown of what makes Pernixdata so special and different from anything else in the industry.

1)   NO VSA – The Flash Virtualization Platform (FVP) from Pernixdata does not need or rely on any virtual appliance. It’s truly a Hypervisor based product that doesn’t have to deal with the latency of an appliance.

 2)   NO OS/Guest Agents – There is also no need to install any operating system or guest agent. Pernixdata is invisible to any workload. The operating system or application only sees increased performance and lower latency!

3)   Not Just Read  – Pernixdata is not like traditional caching solutions where the only performance gain is from read operations. The FVP can also leverage performance gains in write operations as well. (Think tiering instead of caching.)

 4)   No Proprietary Flash – Pernixdata does not need or require proprietary SSD devices or PCIe based flash solutions. The FVP can use any type of flash based device that is available.

 5)   No Single Point of Failure – Pernixdata is the first to build a truly scale out platform that can transparently leverage existing clusters and use local or remote server-side flash devices. This architecture is designed for read and write acceleration on local or remote hosts.

 As you can see these five “No’s” make Pernixdata different and revolutionary. Organizations can now say “Yes” to a platform that answers their perspective issues with performance without sacrificing on features and redundancy. 

Pernixdata - Solving the I/O Bottleneck

As some of you already know Pernixdata came out of stealth yesterday. I have been eagerly waiting for this time to share how I think Poojan Kumar (CEO) & Satyam Vaghani (CTO) and their great team plan to take the lead in a new market opportunity.

I have had the privilege and opportunity of testing the Flash Virtualization Platform from Pernixdata and I can honestly tell you that it works and it works well. The technology is truly revolutionary and thus plan to post several times over the coming weeks and months about this new innovation.

The best way to describe the “FVP –Flash Virtualization Platform” is to look at it from a data tier perspective instead of just a caching solution. It’s easy just to call it a caching solution, because there isn’t anything like it. Its the breadth of this new platform that masters the I/O workloads and commoditizes the use of Flash in compute. 


The I/O bottleneck between storage and compute has hampered the industry for sometime. This started to change when VMware released their VAAI API, but adoption was slow and expensive. Purchasing additional arrays was not the answer from a financial or technological perspective. There really needed to be a new technology to bring everything together. This is where Pernixdata comes in to play, solving the scale and performance problems that have plagued many in the industry. This is done without vendor lock in and architectural changes to the datacenter, saving organizations thousands of dollars.

To join the beta program, send an email request to

Congratulations Pernixdata for creating a solution for the SMB, and Enterprise market that solves a known virtualization/Cloud problem. 

Changing SSD "Drive Type" Error

I recently was reading William Lam's and Duncan Epping's blog posts about the issue of vSphere not correctly reading local SSD drive types on a host. If a SSD is installed behind a RAID controller, the drive type will often show "Non-SSD".

I followed the steps on changing the drive type or as Duncan calls it "Faking an SSD in your Virtualized vSphere lab"!! During this process I received an error message, when running the add rule command.


esxcli storage nmp satp rule add --satp VMW_SATP_LOCAL --device naa.60024e805cb75f001886b896132d69ff --option=enable_ssd


"Error adding SATP user rule: Duplicate user rule found for SATP VMW_SATP_LOCAL"


After doing some digging, I realized that this drive already had a user rule setup. In order to see all user defined rules, run this command.

 esxcli storage nmp satp rule list

(You will notice the rules that have be defined by you will be labeled "user")


All I had to do is run the remove command to remove the duplicate user defined rule.


esxcli storage nmp satp rule remove --satp VMW_SATP_LOCAL --device naa.60024e805cb75f001886b896132d69ff


Then you can run the add rule and reclaim commands as before and all will be successful! 


esxcli storage core claiming reclaim -d naa.60024e805cb75f001886b896132d69ff


I also found out that you don't have to create a VMFS datastore to run these commands. They worked as available SSD drives as well.