Fusion-io was once a behemoth of flash memory storage. Back when SSDs were having a hard time saturating SATA 3Gb/sec, Fusion-io was making fire breathing PCIe SSDs full of SLC flash and pushing relatively insane IOPS and throughput figures. Their innovations were a good formula at the time. They made the controller a very simple device, basically just a simple bridge from the PCIe bus to the flash memory. This meant that most of the actual work was done in the driver. This meant that Fusion-io SSDs were able to leverage the CPU and memory of the host system to achieve very high performance.
Fusion-io ioDrive 160 creams the competition back in 2010.
Being the king of IOPS back in the early days of flash memory storage, Fusion-io was able to charge a premium for their products. In a 2010 review, I priced their 160GB SSD at about $40/GB. In the years since, while flash memory prices (and therefore SSD products) have steadily dropped in price while achieving higher and higher performance figures, Fusion-io products have mostly remained static in price. All of this time, the various iterations of the ioDrive continued to bank on the original model of a simple controller and the bulk of the work taking place in the driver. This actually carries a few distinct disadvantages, in that the host system has to spent a relatively large amount of CPU and memory resources towards handling the Fusion-io devices. While this enables higher performance, it leaves less resources available to actually do stuff with the data. This ends up adding to the build cost of a system, as more CPU cores and memory must be thrown at the chassis handling the storage. In more demanding cases, additional systems would need to be added to the rack space in order to handle the additional storage overhead in addition to the other required workloads. Lastly, the hefty driver means Fusion-io devices are not bootable, despite early promises to the contrary. This isn't necessarily a deal breaker for enterprise use, but it does require system builders to add an additional storage device (from a different vendor) to handle OS duties.
In 2014, the other guys are making faster stuff. Note this chart is 4x the scale of the 2010 chart.
Lets fast forward to present times. Just over a week ago, Fusion-io announced their new 'Atomic' line of SSDs. The announcement seemed to fall flat, and did little to save the continuous decline of their stock price. I suspect this was because despite new leadership, these new products are just another iteration of the same resource consuming formula. Another reason for the luke warm reception might have been the fact that Intel launched their P3700 series a few days prior. The P3700 is a native PCIe SSD that employs the new NVM Express communication standard. This open standard was developed specifically for flash memory communication, and it allows more direct access to flash in a manner that significantly reduces the overhead required to perform high data throughputs and very high IO's per second. NVMe is a very small driver stack with native support built into modern operating systems, and is basically the polar opposite of the model Fusion-io has relied on for years now.
Intel's use of NVMe enables very efficient access to flash memory with minimal CPU overhead.
Fusion-io's announcement claimed "The Atomic Series of ioMemory delivers the highest transaction rate per gigabyte for everything from read intensive workflows to mixed workloads.". Let's see how this stacks up against the Intel P3700 – an SSD that launched the same week:
Model | Fusion-io PX600 | Intel P3700 | ||||||
Capacity (TB) | 1.0 | 1.3 | 2.6 | 5.2 | 0.4 | 0.8 | 1.6 | 2.0 |
Interface / Flash type | PCIe 2.0 x8 / 20nm MLC | PCIe 3.0 x4 / 20nm MLC | ||||||
Read BW (GB/sec) | 2.7 | 2.7 | 2.7 | 2.7 | 2.7 | 2.8 | 2.8 | 2.8 |
Write BW (GB/sec) | 1.5 | 1.7 | 2.2 | 2.1 | 1.2 | 1.9 | 1.9 | 1.9 |
4k random read IOPS | 196,000 | 235,000 | 330,000 | 276,000 | 450,000 | 460,000 | 450,000 | 450,000 |
Read transactions/GB | 196 | 181 | 127 | 53 | 1,125 | 575 | 281 | 225 |
4k random write IOPS | 320,000 | 370,000 | 375,000 | 375,000 | 75,000 | 90,000 | 150,000 | 175,000 |
Write transactions/GB | 320 | 285 | 144 | 72 | 188 | 113 | 94 | 88 |
4k 70/30 R/W IOPS | Unlisted | 150,000 | 200,000 | 240,000 | 250,000 | |||
Read latency | 92us | 20/115us | ||||||
Write latency | 15us | 20/25us | ||||||
Endurance (PBW) | 12 | 16 | 32 | 64 | 7.3 | 14.6 | 29.2 | 36.5 |
Endurance / TB | 12.0 | 12.3 | 12.3 | 12.3 | 18.3 | 18.3 | 18.3 | 18.3 |
Cost | Unlisted | $1,207 | $2,414 | $4,828 | $6,035 | |||
Cost/GB | Unlisted | $3.02 | $3.02 | $3.02 | $3.02 | |||
Warranty | 5 years | 5 years |
We are comparing flagship to flagship (in a given form factor) here. Starting from the top, the Intel P3700 is available in generally smaller capacities than the Fusion-io PX600. Both use 20nm flash, but the P3700 uses half the data lanes at twice the throughput. Regarding Fusion-io's 'transaction rate per GB' point, well, it's mostly debunked by the Intel P3700, which has excellent random read performance all the way down to its smallest 400GB capacity point. The seemingly unreal write specs seen from the PX600 are, well, actually unreal. Flash memory writes take longer than reads, so the only logical explanation for the inversion we see here is that Fusion-io's driver is passing those random writes through RAM first. Writing to RAM might be quicker, but you can't sustain it indefinitely, and it consumes more host system resources in the process. Moving further down the chart, we see Intel coming in with a ~50% higher endurance rating when compared to the Fusion-io. The warranties may be of equal duration, but the Intel drive is (on paper / stated warranty) guaranteed to outlast the Fusion-io part when used in a heavy write environment.
For pricing, Intel launched the P3700 at a competitive $3/GB. Pricing data for Fusion-io is not available, as they are behind a bit of a 'quote wall', and no pricing at all was included with the Atomic product launch press materials. Let's take a conservative guess and assume the new line is half the cost/GB of their previous long-standing flagship, the Octal. One vendor lists pricing directly at $124,995 for 10.24TB ($12.21/GB) and $99,995 for 5.12TB ($19.53/GB), both of which require minumum support contracts as an additional cost. Half of $12/GB is still more than twice the $3/GB figure from Intel.
My theory as to why SanDisk is going for Fusion-io?
- A poor track record since the Fusion-io IPO have driven the stock price way down, making it prime for a buyout.
- SanDisk is one of the few remaining flash memory companies that does not own their own high end controller tech.
- Recent Fusion-io product launch overshadowed by much larger (Intel) company launching a competing superior product at a lower cost/GB.
So yeah, the buyout seemed inevitable. The question that remains is what will SanDisk do with them once they've bought them? Merging the two will mean that Fusion-io can include 'in house' flash and (hopefully) offer their products at a lower cost/GB, but that can only succeed if the SanDisk flash performs adequately. Assuming it does, there's still the issue of relatively high costs when compared to freshly competing products from Intel and others. Last but not least is the ioDrive driver model, which grows incresingly dated while the rest of the industry adopts NVMe.
Very good article. Here’s a
Very good article. Here’s a couple thoughts:
1) FusionIo should have sent an Octal drive for review to every SSD reviewing site they could find *years ago*. Brand visibility, combined with holding the undisputed performance crown could have gone a long way to helping them sell their warez to enterprises with tech departments run by geeks.
2) The “quote wall” as you put it is quite simply a disgraceful way of doing business. They’re not slime-ball car salesmen trying to wring every last penny from their prospects are they? Arbitrary pricing is as dishonest as it gets. This deplorable business practice probably cost them a lot more in revenue than they realize. Nobody wants to deal with that shit. What was Woz thinking?
3) Still using PCIe 2.0? What the hell have they been doing over there for the past 3 years?
Anyway great article, thanks.
Good thoughts. They prompted
Good thoughts. They prompted me to look back in my emails. Turns out I sent an email to no less than 7 Fusion-io staff, on November 18, 2009, containing a multi-paragraph pitch for us doing an in-depth review of the Octal. I'm saying this here just so it's clear that we did request a sample (and received no reply).
It's always been 'smoke and mirrors' on product sampling from Fusion-io. I suspect it was classic over-promising on their part (i.e. they still do not make a bootable product, mainly due to their driver model). They seem to be failing in a few other areas as well, as when I was researching this piece, I was unable to login to their support site to download current drivers. I could do a passwork reset, but login simply would not work, and creating a new account failed for a separate unknown reason. Pretty annoying, considering we have a few of their cards on hand here (most provided by independent vendors, not from Fusion-io).
Regarding Woz, I suspect he was hired more as a figurehead (not that there's anything wrong with that). The fundamental basis of their driver / technology has been in place since before he joined up with them, and it hasn't really changed. Like you said, still on PCIe 2.0.
Awesome article. You compared
Awesome article. You compared a 4 year old fusionio drive to more modern SSD’s. Also, your understanding of how fusionio’s VSL processes writes is way off. You’re guessing. And if your guess was true of any system that would put the system at risk of data loss. But hey, I’m just a car salesman and you’re the (un)intelligent author.
have you measured the PX600
have you measured the PX600 performance listed here. On other websites measured data shows the 4k random writes performance at about 160K on Windows, that will bring the 4K random writes per GB to measured values. Thoughts?