By Michael Christofferson, Enea Embedded Technology Inc.Embedded.comNov 5 2005 (9:00 AM)
Multiprocessing programming models have been either inefficient in resource utilization or lack determinism, but a new multiprocessing model is now available that can solve both problems for the right applications.
To meet increasing demand for processing power, chip makers have begun to turn away from the traditional 'wider-larger-faster' approach to scaling and turned, instead, to multi-core processing. These devices implement a distributed processing system on a single chip, using multiple processors to gain performance increases. The trouble is, there has not been an efficient multiprocessing programming model that meets the needs of real-time embedded systems. A new approach, asymmetric multiprocessing (AMP), promises to provide a combination of efficiency and determinism for many applications.
Traditional multiprocessing models have been one of two types. The first, symmetric multiprocessing (SMP), uses algorithms that perform dynamic load balancing by allocating software tasks among a number of identical processors to make maximum use of processor resources (see Figure 1 below). The load-balancing algorithms have been developed and refined over many years, and the approach works well for numerically-intensive data processing (number-crunching) applications. A single operating system controls all of the processors.
Click here to read more ...