Multi Core
Multi Core
Definition:
Working Principle:
A single control unit issues the same instruction to multiple processing elements
(PEs).
Each PE operates on a different piece of data.
Useful for operations that require the same computation across multiple data values.
Example:
Advantages:
Disadvantages:
Definition:
Example:
Advantages:
Disadvantages:
1.5 Conclusion
SIMD is best suited for tasks that require the same operation over large data sets, while
MIMD offers flexibility and power for running diverse tasks concurrently. Understanding
their differences is essential for designing efficient parallel systems.
Definition:
Also called Shared Memory Architecture, SMA enables multiple processors to access a
common memory space.
Working:
Key Features:
Advantages:
Disadvantages:
Use Cases:
Definition:
Each processor has its own local memory, and processors communicate using interconnection
networks.
Working:
No shared memory.
Communication via Message Passing Interface (MPI) or similar protocols.
Key Features:
Advantages:
High scalability
No contention on shared memory
Ideal for parallel computing clusters
Disadvantages:
Use Cases:
2.5 Conclusion
In multicore systems, each processor may have its own cache. Cache coherence ensures that
all caches have a consistent view of shared memory data.
Occurs when:
Example:
A. Snooping Protocols
Types:
B. Directory-Based Protocols
A central directory keeps track of which cache has copies of a data block.
The directory handles coherence by sending invalidations or updates as needed.
3.5 MESI Protocol (Common Coherence Protocol)
States:
Example:
3.7 Conclusion
Cache coherence protocols like MESI, MOESI, and directory-based systems are crucial for
ensuring consistency in modern multicore processors. They play a key role in maintaining
synchronization, reliability, and performance in parallel computing environments.