Hardware vs. software innovation – round 4

We, the industry and I, have had a long running debate on whether hardware innovation still makes sense anymore (see my Hardware vs. software innovation – rounds 1, 2, & 3 posts).

The news within the last week or so is that Dell-EMC cancelled their multi-million$, DSSD project, which was a new hardware innovation intensive, Tier 0 flash storage solution, offering 10 million of IO/sec at 100µsec response times to a rack of servers.

DSSD required specialized hardware and software in the client or host server, specialized cabling between the client and the DSSD storage device and specialized hardware and flash storage in the storage device.

What ultimately did DSSD in, was the emergence of NVMe protocols, NVMe SSDs and RoCE (RDMA over Converged Ethernet) NICs.

Last weeks post on Excelero (see my 4.5M IO/sec@227µsec … post) was just one example of what can be done with such “commodity” hardware. We just finished a GreyBeardsOnStorage podcast (GreyBeards podcast with Zivan Ori, CEO & Co-founder, E8 storage) with E8 Storage which is yet another approach to using NVMe-RoCE “commodity” hardware and providing amazing performance.

Both Excelero and E8 Storage offer over 4 million IO/sec with ~120 to ~230µsec response times to multiple racks of servers. All this with off the shelf, commodity hardware and lots of software magic.

Lessons for future hardware innovation

What can be learned from the DSSD to NVMe(SSDs & protocol)-RoCE technological transition for future hardware innovation:

  1. Closely track all commodity hardware innovations, especially ones that offer similar functionality and/or performance to what you are doing with your hardware.
  2. Intensely focus any specialized hardware innovation to a small subset of functionality that gives you the most bang, most benefits at minimum cost and avoid unnecessary changes to other hardware.
  3. Speedup hardware design-validation-prototype-production cycle as much as possible to get your solution to the market faster and try to outrun and get ahead of commodity hardware innovation for as long as possible.
  4. When (and not if) commodity hardware innovation emerges that provides  similar functionality/performance, abandon your hardware approach as quick as possible and adopt commodity hardware.

Of all the above, I believe the main problem is hardware innovation cycle times. Yes, hardware innovation costs too much (not discussed above) but I believe that these costs are a concern only if the product doesn’t succeed in the market.

When a storage (or any systems) company can startup and in 18-24 months produce a competitive product with only software development and aggressive hardware sourcing/validation/testing, having specialized hardware innovation that takes 18 months to start and another 1-2 years to get to GA ready is way too long.

What’s the solution?

I think FPGA’s have to be a part of any solution to making hardware innovation faster. With FPGA’s hardware innovation can occur in days weeks rather than months to years. Yes ASICs cost much less but cycle time is THE problem from my perspective.

I’d like to think that ASIC development cycle times of design, validation, prototype and production could also be reduced. But I don’t see how. Maybe AI can help to reduce time for design-validation. But independent FABs can only speed the prototype and production phases for new ASICs, so much.

ASIC failures also happen on a regular basis. There’s got to be a way to more quickly fix ASIC and other hardware errors. Yes some hardware fixes can be done in software but occasionally the fix requires hardware changes. A quicker hardware fix approach should help.

Finally, there must be an expectation that commodity hardware will catch up eventually, especially if the market is large enough. So an eventual changeover to commodity hardware should be baked in, from the start.

~~~~

In the end, project failures like this happen. Hardware innovation needs to learn from them and move on. I commend Dell-EMC for making the hard decision to kill the project.

There will be a next time for specialized hardware innovation and it will be better. There are just too many problems that remain in the storage (and systems) industry and a select few of these can only be solved with specialized hardware.

Comments?

Picture credit(s): Gravestones by Sherry NelsonMotherboard 1 by Gareth Palidwor; Copy of a DSSD slide photo taken from EMC presentation by Author (c) Dell-EMC

TPU and hardware vs. software innovation (round 3)

tpu-2At Google IO conference this week, they revealed (see Google supercharges machine learning tasks …) that they had been designing and operating their own processor chips in order to optimize machine learning.

They called the new chip, a Tensor Processing Unit (TPU). According to Google, the TPU provides an order of magnitude more power efficient machine learning over what’s achievable via off the shelf GPU/CPUs. TensorFlow is Google’s open sourced machine learning  software.

This is very interesting, as Google and the rest of the hype-scale hive seem to have latched onto open sourced software and commodity hardware for all their innovation. This has led the industry to believe that hardware customization/innovation is dead and the only thing anyone needs is software developers. I believe this is incorrect and that hardware innovation combined with software innovation is a better way, (see Commodity hardware always loses and Better storage through hardware posts).
Continue reading “TPU and hardware vs. software innovation (round 3)”

Commodity hardware loses again …

IMG_4528It seemed only a a couple of years back that everyone was touting how hardware engineering no longer mattered anymore.

What with Intel and others playing out Moore’s law, why invest in hardware engineering when the real smarts were all in software?

We said then that hardware engineered solutions still had a significant place to play but few believed me (see my posts:  Commodity hardware always loses and Commodity hardware debate heats up ).

Well hardware’s back, …

A few examples;

  1. EMC DSSD – at EMCWorld2015 a couple of weeks back, EMC demoed a new rack-scale flash storage system that was targeted at extremely high IOPS and very low latency. DSSD is a classic study on how proprietary hardware could enable new levels of performance. The solution connected to servers over a PCIe switched network, which didn’t really exist before and used hardware engineered, Flash Modules which were extremely dense, extremely fast and extremely reliable. (See my EMCWorld post on DSSD and our Greybeards on Storage (GBoS) podcast with Chad Sakac for more info on DSSD)
  2. Diablo Memory Channel Storage (MCS) /SanDisk UltraDIMMs – Diablo’s MCS is coming out in SanDisk’s UltraDIMM NAND storage that plugs into DRAM slots and provides a memory paged access to NAND storage. The key is that the hardware logic provides overheads that are ~50 μsecs to access NAND storage. (We’ve wrote  about MCS and UltraDIMMs here).
  3. Hitachi VSP G1000 storage and their Hitachi Accelerated Flash (HAF) – recent SPC-1 results showed that a G1000 outfitted with HAF modules could generate over 2M IOPS and had very low latency (220 μsecs).  (See our announcement summary on the Hitachi G1000 here).

Diablo ran into some legal problems but that’s all behind them now, so the way forward is clear of any extraneous hurdles.

There are other examples of proprietary hardware engineering from IBM FlashSystems,  networking companies, PCIe flash vendors and others but these will suffice to make my point.

My point is if you want to gain orders of magnitude of better performance, you need to seriously consider engaging in some proprietary hardware engineering. Proprietary hardware may take longer than software-only solutions (although that’s somewhat of a function of the resources you throw at), but the performance gains are sometimes unobtainable any other way.

~~~~

Chad made an interesting point on our GBoS podcast, hardware innovation is somewhat cyclical. For a period of time, commodity hardware is much better than any storage solution really needs, so innovation swings to the software arena. But over time, software functionality comes up to speed and maxes out the hardware that’s available and then you need more hardware innovation to take performance to the next level. Then the cycle swings back to hardware engineering. And the cycle will swing back and forth again a lot more times before storage is ever through as an IT technology.

Today when it seems that there’s a new software defined storage solution coming out every month we seem very close to peak software innovation with little left for performance gains, but there’s still plenty left if we open our eyes to consider proprietary hardware.

Welcome to the start of the next hardware innovation cycle – take that commodity hardware.

Comments?

Upverter, electronic design-as-a-service

Read a recent article on TechCrunch about Upverter a cloud based service supporting electronic hardware design and development.  The ultimate intent is to provide a electronic design as a service  (EDaaS) offering that’s almost equivalent to electronic design automation (EDA) tools available on the market today.

EDA tools available

I am no EDA expert but currently, they have some basic electronic design, simulation and build tools available.  These allow a person or an organization to design, simulate and build real electronic circuits, boards etc. They even provided tools for motherboard routing and layout as well as services to have a circuit manufactured.  But this all came with a cloud oriented electronic design versioning system which seemed pretty slick.

The TechCrunch article had a video of a tour of the service (also available on their website).  I was especially impressed with the rollback-undo options on the electronic circuit design pallet.  Seeing an electronic circuit being designed in almost a line by line build was interesting to say the least.

Not sure if we are talking ASICs or FPGA design yet but they certainly have the platform to support these tools if and when they develop it.  However, simulation time and cost might go off the charts for circuits including custom designed ASICs and FPGAs.

Everything seems to execute in the cloud and any EDA specifications reside in the cloud under their control as well. However, they do offer some tools to import EDA information from other tools and provide a JSON file format export of the EDA information you provide.

EDA service pricing

Pricing seemed pretty reasonable $7/month for an individual part timer, $99/month for full time user and both these include 10 CPU hrs of simulation time and can work on public and private projects.  Other pricing options are available for bigger teams and/or more part and full timers on a project.  I didn’t see any information on more simulation time but I am sure these would be available.

And if you are just interested in working on public projects the price is FREE.

Open source electronic design

Now, I am no hardware design expert but having such a cloud based service and essentially free for public projects opens up a whole new dimension in hardware design. Open source electronic hardware wouldn’t be as easy to support/perform as open source software but the advantages seem similar.  Such as, open sourced PCIe card instrumentation, an open sourced X86 CPU, perhaps even an open sourced server.

For instance in data storage alone I could foresee open sourced circuitry to perform NAND wear leveling, data compression and/or protocol handling to name just a few.  Any of these might make it easier for companies and even individuals to create their own, hardware accelerated storage systems.

Unclear what IP licensing requirements would be for open sourced hardware. I am certainly no lawyer but something akin to GPL might be required to help create the ecosystem of open sourced electronic design.

A new renaissance of hardware innovation?

Innovation in hardware design has always been harder mostly because of the cost and time involved.  Now Upverter doesn’t seem to do much about the time involved but it can have a bearing on the cost’s associated with electronic design if they can scale up their service to provide more sophisticated EDA tools.

Nonetheless, the advantages of hardware innovation are many and include speeding up processing by orders of magnitude over what can often be done in software alone. (For more please see our posts on Better storage through hardwareCommodity hardware always loses and Commodity hardware debates heat up again). So anything which can make hardware innovation easier to accomplish is a good thing in my book.

Also having these sorts of tools available in the cloud opens up a whole array of educational opportunities never before available.  EDA tools were never cheap and if schools had access to some of these they were often limited to only a few select students.  So with cloud based service that’s essentially free for open sourced circuit design this should no longer be a problem.

Finally, I firmly believe having more hardware designers is a good thing, having the ability to contribute and collaborate on hardware design for free is a great thing and anything that makes it easier to innovate in electronic hardware design is an important step and deserves our support.

It appears that electronic design is undergoing a radical shift from an enterprise/organizational based endeavor back to something a single person can do from anywhere connected to the internet.  Some would say this is back to the roots of electronic design when this could all be done in a garage, with a soldering iron and some electronic componentry.

Comments?

Photo Credit: 439 – Circuit Board Texture by Patrick Hoesly