Jeff Bier’s Impulse Response—X86 Muscles Into Embedded Multicore

Submitted by Jeff Bier on Wed, 09/23/2009 - 17:00

In 2004 my friend Nick Tredennick wrote an interesting article in which he made the case that the x86 architecture would ultimately dominate embedded applications.  At the time, I thought Nick’s argument was slightly loopy.  But I have to admit that I’m having second thoughts. These second thoughts have almost nothing to do with any snazzy new chips introduced by Intel, and everything to do with software development for multicore processors.

This month Intel announced its acquisition of RapidMind, a vendor of multicore C/C++ software development tools. Intel also recently acquired Cilk Arts, another company that had developed promising multicore software tools, and Wind River, a major provider of development tools and OSs for embedded processors. (Earlier this year, Intel and Wind River announced that they would collaborate on developing multicore solutions for the embedded market.)

The acquisitions aren’t a big surprise; programming challenges have been a key impediment to widespread adoption of multicore engines, and Intel is pushing hard to offer effective multicore solutions, including solutions for high-performance embedded applications.  Furthermore, in recent years the company has been maneuvering the x86 architecture into the embedded space by offering relatively inexpensive, single-core chips with improved (though not outstanding) power efficiency.

Multicore engines are clearly the wave of the future, and multicore x86-based chips have a big advantage over multicore architectures from other vendors (like Texas Instruments, Freescale, and IBM): the number of software developers targeting them. From a tool vendor’s perspective, the number of chips shipped is not as important as the number of developers writing code for a given chip, since that’s what dictates how many copies of the tools are sold—one developer whose application ships on 1 million chips is not equivalent to 1,000 developers each shipping 1,000 chips.

There are bazillions of developers using the x86, so companies creating multicore tools have a big incentive to develop them first (and best) for the x86.  Sure, most of the development projects done on the x86 are not for the embedded space—yet. That doesn’t matter though, because the same software tools can often be used for both types of development. And sure, the x86 may never be able to match the power efficiency of a more application-specific processor, but in many applications, system designers may be willing to trade off some power consumption for a set of multicore tools that really work and that reduce the risk of multicore migration.

BDTI recently published an article on Tensilica’s new ConnX D2 core, a dual-MAC mid-range DSP core intended to replace dual-MAC processors like the ‘C55x or ‘C62x. Tensilica went so far as to port Texas Instruments’ ‘C6x compiler intrinsics to the D2 core to make it easy for TI’s customers to jump ship. I wonder what would happen if Intel did something similar; they certainly have the resources to pull off that trick if they want to.

I hope other embedded multicore processor companies are thinking long and hard about how they’re going to counter the x86 advantage.

Jennifer Eyre White of BDTI contributed to this column.

Add new comment

Log in to post comments