- 2071 Shrawan · 4 marks
Parallel processing and pipelining
Short answer
Parallel processing uses multiple units to perform tasks simultaneously. Pipelining achieves temporal parallelism by overlapping instruction stages; for k stages and n instructions, speedup approaches k, giving one result per clock after the pipe fills.
Discuss parallel processing. How can parallel processing be achieved in pipelining?
Parallel processing is the use of multiple processing units or overlapped operations to perform several tasks at the same time, so that the system's throughput and speed increase. Instead of processing in sequence, the work is divided into parts that are done together.
Levels: job or program level, task level, instruction level (pipelining), arithmetic and bit level.
Parallelism achieved in pipelining
A pipeline is a form of parallel processing in time (temporal parallelism). The instruction cycle is divided into segments (FI, DA, FO, EX) that work simultaneously on different instructions.
- Several instructions are in different phases at one time, so one instruction is completed per clock once the pipe fills.
- The time for n instructions is (k + n - 1) tp instead of n·k·tp, so the speedup approaches k.
- More parallelism comes from several pipelines (superscalar), multiple functional units and vector pipelines.
Clock: 1 2 3 4 5 6
I1 FI DA FO EX
I2 FI DA FO EX
I3 FI DA FO EX
Other ways: multiple functional units, SIMD array processors and multiprocessors.
✓ Answer checked by Claude Opus 5.5 (high effort)
Related questions
- Vector processing and pipelining performance · Computer Organization and Architecture, chapter 4 · asked 2×
- Parallel processing and pipeline speedup · Microprocessor, chapter 6
All Computer Organization and Architecture chapter 4 questions →