Multi-core Arrives for Work on the Shop Floor

In May 2004, Intel Corp. (www.intel.com), Santa Clara, Calif., announced its abandonment of the 5 gigahertz (GHz) Tejas microprocessor as the successor to the 3 GHz Pentium 4.

Aw 1990 1004 Tech

Although not really a surprise at the time, the withdrawal of Tejas conferred a sense of official closure on the 20‑year era of performance‑through‑speed in microprocessor design.

Henceforth, indicated Intel, the company would focus on performance through multiple processors: multi‑core. It was a design shift with lasting implications for all computing, including the industrial sector. “Within the practical limits of their thermal envelopes, processors reached a point—at about 3 GHz—where you just couldn’t push them any faster,” says Markus Levy, president of The Multicore Association (www.multicore-association.org), El Dorado Hills, Calif. But evolution is opportunistic; clock speed isn’t the only way to obtain performance. Moore’s Law is still valid: transistor density can still be expected to double about every 18 to 24 months for the foreseeable future. Consequently, this opens the door for multiple processors on the same chip. “Today,” continues Levy, “multi‑core is about much more than power efficiency. It’s about working in new ways to meet application performance requirements.”

Synchronous vs. asynchronous

In some industrial applications, multi‑core is primarily about finding parallelism in a problem that, until now, would have been solved with a familiar sequential program running on a single processor. For multi‑core execution, the sequential program is decomposed into “threads”—individual program tasks—some of which can be run in parallel on different cores simultaneously. As hardware, the cores are identical, and the operating system considers all cores to be equal. During program execution, the operating system decides which threads run on which cores in what order, depending on run‑time conditions. This is synchronous multi‑core processing.

Synchronous multi‑core, which employs parallel programming techniques that have been staples in multiprocessor supercomputers for years, is often the choice for achieving advanced functionality. “Industrial control algorithms are becoming more and more complex,” says Casey Weltzin, product manager for LabView Real‑Time at test and controls vendor National Instruments Corp. (www.ni.com ), in Austin, Texas. “In each development cycle, the limits are pushed farther out. People always want more safety checks and more sophisticated responses. Multi‑core is one important strategy for getting that level of performance.”

Rob Enderle, principal analyst for the Enderle Group (www.enderlegroup.com), in San Jose, Calif., agrees, “Multi‑core is appealing anywhere that you want concentrated computing intelligence. Although multi‑core in the embedded space is relatively new, it is an area with potential because of its stringent, low‑power requirements.”

Synchronous multi‑core is also a likely design choice when the application requires migrating large amounts of legacy code. In this case, main memory is typically shared among the cores in an SMP (Symmetric Multiprocessor) architecture. The desire to use legacy code may be motivated by work efficiency or to avoid wholesale recertification of critical processes, which is often the case in regulated industries such as pharmaceuticals.

Asynchronous multi‑core configurations, on the other hand, are often preferred when combining disparate functionality in a single package, where multi‑core may be deployed as a discrete process controller or as an embedded system. “In the industrial world—and in automotive applications as well—there are heavy real‑time requirements,” says Levy. “This is a good place for an asynchronous design in which the cores work largely independently, often with their own dedicated memories, but can communicate when needed by message passing.”

Multi‑core microprocessors began as a response to fundamental thermodynamic realities. In their relatively short history, they have been adapted to solve a broad range of problems that involve everything from supercomputers to SOCs (Systems On a Chip). The industrial automation sector is no exception. Multi‑core has arrived on the shop floor.

Marty Weil, martyweil@charter.net, is an Automation World Contributing Writer.

Intel Corp.
www.intel.com

The Multicore Association
www.multicore-association.org

National Instruments Corp.
www.ni.com

Enderle Group
www.enderlegroup.com

Subscribe to Automation World's RSS Feeds for Columns & Departments

More in Control