SMP

Stands for "Symmetric Multiprocessing." SMP is a type of multiprocessing in which all processors may be used at the same time. It is sometimes contrasted with asymmetric multiprocessing, which delegates each processor to a specific task.

The vast majority of computers with multiple processors (or processing cores) support SMP. It is implemented at the operating system level, which distributes computing tasks across two or more processors. Modern OSes, such as Windows, macOS, and Unix have supported SMP since the late 1990s.

Most software applications benefit automatically from SMP, thanks to the underlying OS support. However, developers may still optimize apps to use multiple processors even more effectively. For example, a video editing program might send specific rendering operations to different processors, which may be more efficient than letting the OS balance the processing load.

How SMP Works

SMP requires multiple homogenous processors, meaning each processor has the same architecture and clock speed. All processors share the same system bus and system memory, so no processor is prioritized over the others. The OS distributes computing operations across the processors (or processing cores), attempting to use them all equally.

SMP can substantially improve a computer's performance compared to a single-processor system. However, since individual threads are sent to different processors, there is overhead in distributing the tasks. Additionally, not all computing operations can be split across multiple processors. Therefore, SMP does not increase performance by 100% for each additional processor.

Updated December 30, 2019 by Per C.

quizTest Your Knowledge

The ACID acronym describes the four characteristics of what?

A
A computer
0%
B
A database
0%
C
A digital image
0%
D
A network
0%
Correct! Incorrect!     View the ACID definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of SMP on this page is an original definition written by the TechTerms.com team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of TechTerms.com is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.