SMP and AMP

This posting describes SMP (Symmetric Multi-Processing) and AMP (Asymmetric Multi-Processing).

Symmetric Multi-Processing (SMP) is an architecture in which multiple processors (or cores) share the same memory space and process tasks symmetrically.Each processor operates independently but plays an equal role on the same operating system (OS).

Asymmetric Multi-Processing (AMP) is a multi-processing architecture in which multiple processors or cores have asymmetric roles and operate specifically for a particular task.Unlike Symmetric Multi-Processing (SMP), where tasks are processed equally among processors, AMP allows each processor to have a different function.

Comparison of SMP and AMP

ItemSMPAMP
Role of the ProcessorAll processors are equal and can handle the same tasks.Different roles for each processor (master-slave structure).
Memory accessUse shared memory (single memory space).Different memory configurations are possible per processor (shared or dedicated).
OS ManagementSingle OS manages all processors.Different OS and firmware can be run on each processor.
Task AssignmentOS scheduler allocates tasks evenly.Assign tasks uniquely to each processor.
Parallel processingParallel processing is possible on all processors.Parallel processing is possible, but load balancing is less flexible.
Real time processingReal-time performance is generally low (latency-prone)Can be dedicated to specific processors for real-time processing
Power efficiencyAll processors operate at the same power levelLow-power and high-performance processors can be used separately
Implementation complexityRelatively simple (managed by OS)Requires advanced design (inter-processor communication and task allocation considerations)
Main applicationsPC, servers, general purpose computingEmbedded systems, mobile devices, real-time control
Typical examplex86 multi-core CPUs (Intel, AMD), servers, workstationsARM big.LITTLE, embedded systems (automotive ECU, robot control)
OSS-ECAL English
error: Content is protected !!