The Difference Between Multiprocessor & Multicomputer Systems
The difference between a multiprocessor system and a multicomputer system is the number of computers involved in each. Both are multiprocessing environments: Both use more than one CPU at a time. A multiprocessor system is a single computer that operates with multiple CPUs, and a multicomputer system is a cluster of computers that operate as a singular computer. Multiprocessing environments can operate with CPUs sharing an operating system -- called symmetric multiprocessing -- or with each CPU running an individual instance of the operating system -- called Massively Parallel Processing.
Multiple CPU Systems
A computer that has two or more free-standing processors connected to the same motherboard is a multiprocessor system. Each processor gets its own socket and cooling unit in a multiple CPU system. The processors are like individual construction workers at the same construction site. They can work together to finish one task faster or work separately to finish more than one task concurrently. Multiple CPU systems can be used for all general computing tasks, but are usually reserved for the high-end market and intensive uses such as servers and professional video editing because of the high cost. Some application workloads can't be split across more than one CPU, limiting performance improvements.
Multicore CPU Computers
Multicore processors are singular chips that contain more than one CPU. Computers using multicore CPUs behave exactly like multiple CPU systems except all the processor cores share the same chip and socket. It's as if the previously mentioned construction crew carpooled to the work site. Multicore systems cost much less than multiprocessor systems and don't need sprawling motherboards: Multicore CPUs have replaced multiple processor systems in most cases. Multicore CPUs are used for any kind of computing and are found in smartphones, tablets, budget laptops and high-end desktops. Additionally, a multiprocessor system can use several multicore CPUs.
Networked and Enclosed Multicomputer Environments
Multicomputers are similar to cartoon superheroes who combine the powers of lesser heros, such as Voltron or Captain Planet. A multicomputer is a cluster of computers that function as a single computer. Each system in a multicomputer has its own dedicated hardware, instances of its own operating system, and handles data though MPP. Multicomputers can be embedded within the same motherboard or be housed in different computer cases and networked together. Multicomputers are used in mass data processing situations like science simulations, processing business information and hosting websites on the Internet.
Distributed Computing Environments
Distributed computing is a type of multicomputing that is literally outside of the box -- sometimes out of the geographical region. Instead of sharing a motherboard or local network, distributed computing uses a server to break up a large task into multiple segments, distributes those segments to other systems (usually over the Internet), uses the distribution systems to process the data and returns the processed data to the server for analysis. The SETI@home (searching for alien life) and Folding@home (processing medical research data) projects are two notable uses of distributed computing that almost anyone with a computer can volunteer to take part in.
References & Resources
- PC Magazine Encyclopedia: Definition of: Multiprocessing
- PC Magazine Encyclopedia: Definition of: MPP
- Computer Hope Jargon: Multiprocessing
- PC Magazine Encyclopedia: Definition of: Multiprocessor
- Computer Hope Jargon: Multicore Processor
- Techopedia Definitions: Multi-Processing
- PC Magazine Encyclopedia: Definition of: Multicomputer
- PC Magazine Encyclopedia: Definition of: Distributed Computer
- SETI@home: What is SETI@home?
- Stanford Folding: What If... Even While You Sleep You Could Help Find a Cure?
- BOINC: Compute for Science
- Standford Folding: What If...