I thought I knew the embedded computing industry, but now I'm starting to have my doubts. Embedded computing for military embedded systems used to mean single-board computers. It wasn't that complicated. We all knew we were talking about the same thing-even when mezzanine boards, VPX, high-speed switch fabrics, and what DARPA calls "cyber-physical systems" entered the conversation.
Yet, new terms are entering the industry's lexicon that have me confused, and apparently have a lot of others in this business confused, as well...and it's not only new terms that are causing trouble. Some of the old terms seem to be going the way of the buggy whip.
I started feeling a tad off-balance when companies like GE and Intel stopped talking about embedded computing altogether. Instead, they're substituting a new term, "intelligent systems." People tell me the names mean pretty much the same thing, but this change took me by surprise.
Now there's a new term on the block, and I think it's got plenty of people just as confused as I am. Here it is: high-performance embedded computing, or HPEC for short. Okay, it doesn't sound all that frightening. Look at those words; doesn't the name sound straightforward enough?
Well, you'd think, but I guess not. In fact, I have a feeling that little acronym, HPEC, is going to define the marketing wars in this industry for a good while. So what's high-performance embedded computing mean, anyway? Well, I think it depends a lot on who's selling it. Remember COTS, or commercial off-the-shelf? Many of us recall the debate over what COTS meant. Heck, we used to have whole trade shows to fight over the term.
COTS, in its day, meant different things to different people, but the best definition I ever heard is "whatever my customer says it is." I have a feeling HPEC is headed the same way.
Here's where I think we are now in the HPEC-terminology wars. The early pioneers are looking at a fairly narrow definition, one that closely resembles their cutting-edge technology. For these companies, high-performance embedded computing mirrors the IT industry's move into high-performance computing, or HPC. It has to do with parallel processing techniques for running complex application programs with large clusters of processors. Some say it only applies to systems that function at speeds in excess of 1 trillion floating point operations per second (teraflop). This is the kind of high-speed cluster comput- ing used in high-end military embedded systems for complex digital signal processing where complex sensor processing in radar, sonar, and electronic warfare are concerned.
More to the point, this definition involves software more than it does hardware. Large clusters of parallel processing computer hardware are becoming commodity items in this brave new world of ours. Some of the biggest challenges have to do with programming these large computer clusters to run complex algorithms quickly and reliably.
Following this definition, the real difference between HPEC and HPC is the packaging. High-performance embedded computing is built to be small, rugged, and lightweight. It's not a data center, but might fit aboard a ground vehicle, aircraft, or unmanned vehicle.
But then what does HPEC mean to the rest of the embedded computing world? For many companies, HPEC simply means embedded computing that offers performance far in excess of what many would consider to be a typical embedded system. It's high performance, it's embedded computing, so then it's high-performance embedded computing. Simple.