🔎 What is Multiprocessing?

The Computer World

First, the basics: Multiprocessing is when multiple processors (or cores) work at the same time. The goals are:

  • Higher performance 💨
  • More parallelism ⚡
  • Better resource utilization

In the past, CPUs were single-core. One processor handled the entire workload, like a village headman organizing all the weddings alone. But data grew, AI arrived, games became massive… and the headman couldn’t handle it alone anymore. The solution: multicore CPUs.


🟢 Symmetric Multiprocessing (SMP)

Symmetry here means “everyone is equal.” All processors are at the same level:

  • They access the same memory (shared memory).
  • They can perform the same tasks.
  • They are treated equally by the operating system.

📌 Technical Features:

  • Shared Memory Architecture: All CPUs use the same memory.
  • Cache Coherency: Cores must synchronize their caches. This is achieved with protocols like MESI.
  • Load Balancing: The OS distributes tasks evenly across cores.

📊 Advantages:

  • High flexibility: any core can take on any task.
  • Easy programming: transparent for the developer (the OS handles it).
  • Modern operating systems (Linux, Windows, macOS) support SMP.

⚠️ Disadvantages:

  • Memory access can become a bottleneck.
  • Extra cost for cache coherence traffic.
  • Complexity increases as the number of cores grows.

📌 In short: SMP = A shared kitchen where everyone dips their spoon into the same pot.


🔴 Asymmetric Multiprocessing (AMP)

Asymmetry here means “boss–worker relationship.” One core (master) manages tasks, the other cores (slaves) execute them.

📌 Technical Features:

  • Master CPU: Handles the operating system and scheduling.
  • Slave CPUs: Only execute tasks assigned by the master.
  • Memory access is usually through the master.

📊 Advantages:

  • Simpler hardware and software design.
  • Less coordination overhead.
  • Lower power consumption in embedded systems.

⚠️ Disadvantages:

  • Dependence on the master: if the master fails, the system crashes.
  • Efficiency may drop: slave cores might stay idle.
  • Not suitable for complex workloads.

📌 Example: ARM’s big.LITTLE architecture → High-performance big cores + energy-efficient LITTLE cores in smartphones.


🔗 Tightly Coupled vs. Loosely Coupled

Multiprocessing isn’t just about SMP vs. AMP. The connection between cores is also critical.

1️⃣ Tightly Coupled Systems

  • CPUs directly access the same memory.
  • A single operating system is used.
  • Very low latency.

💡 Advantages:

  • Fast data sharing.
  • Excellent for parallel computing.

⚠️ Disadvantages:

  • Increased memory traffic.
  • Synchronization becomes harder as CPUs increase.

📌 Example: Multicore CPUs in laptops/desktops we use daily.


2️⃣ Loosely Coupled Systems

  • Each processor has its own memory.
  • Communication happens through “message passing.”
  • Works more like distributed systems.

💡 Advantages:

  • More scalable: thousands of processors possible.
  • No memory contention.

⚠️ Disadvantages:

  • Message passing = latency.
  • Programming is more complex.

📌 Example: Supercomputer clusters, HPC (High-Performance Computing) clusters.


🎭 Everyday Metaphors

  • SMP (Symmetric): Shared kitchen → Everyone uses the same pot at the same time (sometimes spoon fights happen 🥄😅).
  • AMP (Asymmetric): In a family, one person cooks while others do dishes or set the table. The boss is clear.
  • Tightly Coupled: Living in the same house, sharing the same fridge.
  • Loosely Coupled: Everyone lives in separate houses with separate kitchens but sends recipes to each other via WhatsApp.

🚀 Where Are They Used?

  • SMP + Tightly Coupled:
    • Modern laptops and desktops
    • Servers
    • Game consoles
  • AMP + Loosely Coupled:
    • Embedded systems (IoT devices, smartphone SoCs)
    • Supercomputers
    • HPC clusters

🎯 Conclusion

  • If the system requires high-speed cooperationSMP + Tightly Coupled is the way to go.
  • If the system needs scalability and energy efficiencyAMP + Loosely Coupled is preferred.

Think of it as a superhero team:

  • SMP: The Avengers → Everyone is equal, all can fight.
  • AMP: The Justice League → Batman strategizes, Superman fights, Flash runs.
  • Tightly Coupled: Same headquarters, instant communication.
  • Loosely Coupled: Different cities, connected by radios.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir