---
title: "How arithmetic pipeline increases performance"
subject: "Computer Organization and Architecture"
chapter: 4
key: "semester_5/computer_organization_and_architecture:arith-pipeline-performance"
source: https://www.bctengineer.com/q/semester_5/computer_organization_and_architecture/arith-pipeline-performance
site: BCT Engineering
---

# How arithmetic pipeline increases performance

Computer Organization and Architecture · Chapter 4: Pipeline & Vector Processing

- Asked in: 2073 Shrawan, 7 marks
- Video: [Arithmetic Pipeline | Example | Parallel Processing | Computer Organisation & Architecture](https://www.youtube.com/watch?v=3rvb8H0OODQ) — Zishan Noorani
- Answer checked by Claude Opus 5.5 (high effort) on 2026-10-14
- Page: https://www.bctengineer.com/q/semester_5/computer_organization_and_architecture/arith-pipeline-performance
- Whole chapter: https://www.bctengineer.com/md/semester_5/computer_organization_and_architecture/chapter-4

## Question

Explain in detail how the arithmetic pipeline increases the performance of a system.

## Short answer

Arithmetic pipeline splits an operation into segments working concurrently on different operand pairs. For k segments and n pairs, speedup = n*k/(k+n-1); e.g., k=4, tp=10ns, n=1000 gives speedup ~3.99, approaching k.

## Answer

An arithmetic pipeline splits an operation such as floating-point addition into k segments (compare exponents, align mantissas, add mantissas, normalise). Each segment works on a different pair of operands in the same clock, so results come out at the rate of one per clock.

#### Performance
Let k = 4 segments, tp = clock time of the slowest segment, n = number of operand pairs.
- Time without pipeline: n · tn, where tn = k · tp (the whole operation done in turn).
- Time with pipeline: (k + n - 1) · tp
- Speedup: S = n·k·tp / ((k + n - 1)·tp) = n·k / (k + n - 1)

Example: k = 4, tp = 10 ns, n = 1000 additions (a vector sum).
- Non-pipelined: 1000 × 4 × 10 = 40,000 ns
- Pipelined: (4 + 999) × 10 = 10,030 ns
- Speedup = 40,000 / 10,030 = **3.99**, almost k.

The first result appears after k clocks (latency), and then one result per clock (throughput of 1 / tp). The gain is greatest when the same operation is done on a long stream of data, as in vector processing, and is limited by the slowest segment and the register delay between segments.

```text
 pair n --> [compare][align][add][normalise] --> result
 pair n+1 -----^ each stage busy with a different pair
```

## Check yourself

The answer's key points as multiple-choice questions, with the correct option and why.

1. After the pipeline is full, at what rate does an arithmetic pipeline produce results?
   A. One result every k clocks
   B. One result per clock
   C. Two results per clock per segment
   D. One result every n clocks
   Answer: B. Each segment works on a different operand pair every clock, so a result emerges each clock after the first. (Key point: Result rate)

2. What decides the clock time tp of the pipeline?
   A. The fastest segment
   B. The average of all segments
   C. The slowest segment (plus register delay)
   D. The number of operand pairs
   Answer: C. All segments share one clock, so the slowest segment and the inter-stage register delay limit it. (Key point: Clock time choice)

3. For k = 4, tp = 10 ns and n = 1000 additions, what is the pipelined time and speedup?
   A. 10,030 ns and 3.99
   B. 10,000 ns and 4.00
   C. 40,000 ns and 1.00
   D. 4,030 ns and 9.9
   Answer: A. (4 + 999) x 10 = 10,030 ns versus 40,000 ns, so S = 3.99. (Key point: Numerical example)

4. Which statement about latency and throughput is correct?
   A. The first result takes k clocks, then throughput is 1/tp
   B. The first result appears after one clock, then throughput is 1/(k·tp)
   C. Latency is n·tp and throughput is k·tp
   D. Latency and throughput are both unchanged by pipelining
   Answer: A. The first result appears after k clocks; afterwards one result per clock gives throughput 1/tp. (Key point: Latency versus throughput)

## Related in Computer Organization and Architecture

- [Arithmetic pipeline with example](https://www.bctengineer.com/question.md?key=semester_5%2Fcomputer_organization_and_architecture%3Aarith-pipeline) — Computer Organization and Architecture, chapter 4, asked 2×
- [Arithmetic and instruction pipeline](https://www.bctengineer.com/question.md?key=semester_5%2Fcomputer_organization_and_architecture%3Aarith-instr-pipeline) — Computer Organization and Architecture, chapter 4, asked 2×
- [Pipeline and performance gain](https://www.bctengineer.com/question.md?key=semester_5%2Fcomputer_organization_and_architecture%3Apipeline-performance) — Computer Organization and Architecture, chapter 4
- [Design goals and performance metrics](https://www.bctengineer.com/question.md?key=semester_5%2Fcomputer_organization_and_architecture%3Adesign-goals-metrics) — Computer Organization and Architecture, chapter 1

## Related in other subjects

- [File system performance indicators](https://www.bctengineer.com/question.md?key=semester_6%2Foperating_system%3Afs-performance-indicators) — Operating System, chapter 5
- [Line efficiency increases with voltage](https://www.bctengineer.com/question.md?key=semester_4%2Fpower_system_analysis_i%3Aefficiency-increases-with-voltage) — Power System Analysis I, chapter 6
- [Speed of response increases with gain](https://www.bctengineer.com/question.md?key=semester_3%2Fcontrol_systems%3Aspeed-increases-with-gain) — Control Systems, chapter 1
- [Force from changing mass; acceleration increases](https://www.bctengineer.com/question.md?key=semester_3%2Fapplied_mechanics_dynamics%3Avariable-mass-force-acceleration-increases) — Applied Mechanics (Dynamics), chapter 3
