Symmetric/Symmetrical Multiprocessing

C. Burak Ongay
brakulla
Published in
3 min readJul 6, 2018

In multiprocessor computer, access to all I/O devices, connection to a single main memory can be achieved with a single operating system. This system controls processors as equal, threads are distributed between them without any discrimination.

Consider, there are two Intel Xeon-E5 processors in the same motherboard. These processors access to the same memory, same I/O devices like USB ports and hard disks, same all resources. This system is called symmetric multiprocessing.

It basically provides one processor functionality with more than one processor. One does not need to run separate programs for each processor, or assign different RAM modules, for example.

The only non-shared resource is cache memory because all processors have their cache in processor packages. This, however, may cause some problems like cache coherency.

This problem is solved in hardware. Accessing memory is slow compared to accessing the cache. So if to-be-accessed memory is already is copied to the cache of one of the processors, it will come from the cache of it when requested from other processors, rather then accessing directly to RAM. Then the value in the originating cache is validated.

This mechanism is faster than RAM Symmetric/Symmetrical Multiprocessing
In multiprocessor computer, access to all I/O devices, connection to a single main memory can be achieved with a single operating system. This system controls processors as equal, threads are distributed between them without any discrimination.

Consider, there are two Intel Xeon-E5 processors in the same motherboard. These processors access to the same memory, same I/O devices like USB ports and hard disks, same all resources. This system is called symmetric multiprocessing.

It basically provides one processor functionality with more than one processor. One does not need to run separate programs for each processor, or assign different RAM modules, for example.

The only non-shared resource is cache memory because all processors have their cache in processor packages. This, however, may cause some problems like cache coherency.

This problem is solved in hardware. Accessing memory is slow compared to accessing the cache. So if to-be-accessed memory is already is copied to the cache of one of the processors, it will come from the cache of it when requested from other processors, rather then accessing directly to RAM. Then the value in the originating cache is validated.

This mechanism is faster than RAM access but slower than accessing own cache, and it creates overhead. The overhead results in low utilization, low throughput. Because of additional overhead, multiprocessing systems do not provide an exponential increase in system performance.

One double processor computer is slower than one processor having total process power of the former system.

The thing that I would consider while choosing between these two options would be the cost. Two Xeon-E3 CPUs can perform slower than one Xeon-E5 CPU. No problem, if the cost of two E3 CPUs is lower than the half of the E5 CPU, which is likely for some models of them.

Currently, most operating systems can run SMP architecture. Windows since NT, Linux since 2.0, MacOS since 9, and some Unix varieties support SMP architecture. So no problem of using one for home or workstation.access but slower than accessing own cache, and it creates overhead. The overhead results in low utilization, low throughput. Because of additional overhead, multiprocessing systems do not provide an exponential increase in system performance.

One double processor computer is slower than one processor having total process power of the former system.

The thing that I would consider while choosing between these two options would be the cost. Two Xeon-E3 CPUs can perform slower than one Xeon-E5 CPU. No problem, if the cost of two E3 CPUs is lower than the half of the E5 CPU, which is likely for some models of them.

Currently, most operating systems can run SMP architecture. Windows since NT, Linux since 2.0, MacOS since 9, and some Unix varieties support SMP architecture. So no problem of using one for home or workstation.

--

--