Advanced Computer Architecture

Chapter 1
Architectural Foundations and Quantitative Principles

Post Graduate Program in Computer Science Engineering
Advanced Computer Architecture   •   Post Graduate

Architectural Foundations and Quantitative Principles

Introduction

Computer architecture is the study of the organization and behavior of computer systems, including the interfaces visible to software, the internal mechanisms that implement those interfaces, and the quantitative methods used to evaluate design alternatives. At postgraduate level, architecture is not merely the description of processors, memories, and buses. It is a discipline of trade-offs: performance must be obtained within limits of power, area, cost, reliability, programmability, and manufacturability.

A modern computer system is a hierarchy of abstractions. Applications execute algorithms; compilers translate programs into instruction sequences; the instruction set architecture (ISA) defines the contract between software and hardware; microarchitecture implements that contract; digital circuits realize the microarchitecture; and semiconductor technology constrains the circuits. A sound architectural analysis must therefore distinguish what a system does from how it does it.

This chapter develops the foundations needed to reason quantitatively about computer systems. It introduces the principal levels of abstraction, performance metrics, the CPU performance equation, speedup laws, benchmarking, power and energy relationships, memory-system performance, parallelism, and the limitations of simplistic metrics. A concluding case examines architectural choices for a latency-sensitive data-processing service.

Learning Objectives

After completing this chapter, a student should be able to:

  1. distinguish computer architecture, computer organization, implementation, and ISA;
  2. explain the abstraction layers and design trade-offs in a computer system;
  3. derive and apply the CPU performance equation;
  4. calculate speedup using Amdahl’s law and interpret its limitations;
  5. distinguish response time, throughput, clock rate, CPI, IPC, power, and energy;
  6. evaluate memory-system effects using average memory access time;
  7. design meaningful benchmarks and identify common measurement errors;
  8. analyze architectural decisions under performance, power, cost, and reliability constraints;
  9. discuss contemporary issues including heterogeneous computing, accelerators, and AI workloads.

1. The Architectural View of a Computer System

1.1 Architecture, organization, and implementation

Computer architecture concerns programmer-visible behavior and system-level design decisions. The ISA specifies operations, registers, data types, addressing modes, memory consistency rules, privilege levels, and exception behavior. Examples include instruction sets based on x86-64, ARM, and RISC-V.

Computer organization describes the internal arrangement used to implement the ISA. It includes pipelines, issue queues, register renaming, caches, branch predictors, interconnects, and memory controllers. Two processors may implement the same ISA while having substantially different organizations and performance.

Implementation refers to the physical realization of an organization: logic circuits, clock distribution, semiconductor technology, packaging, and physical layout. Implementation choices influence maximum frequency, energy, manufacturing yield, and cost.

The distinction is important. A compiler targets an ISA, whereas a microarchitectural designer may change cache capacity or pipeline depth without changing the ISA. Conversely, adding vector instructions changes the software-visible architecture and requires compiler and operating-system support.

1.2 Levels of abstraction

A useful hierarchy is:

LevelPrincipal concernTypical design question
ApplicationUser functionality and algorithmsWhat computation is required?
Algorithm and programOperations and data movementCan the algorithm expose parallelism?
ISASoftware–hardware contractWhich instructions and memory rules exist?
MicroarchitectureImplementation of the ISAHow are instructions executed efficiently?
Digital logicBoolean and sequential circuitsHow are control and datapath functions realized?
Physical implementationTransistors, wires, packagingCan the design meet timing, power, and yield targets?

Abstraction reduces complexity, but it can conceal costs. An instruction that appears to be one operation may cause several cache accesses, a long-latency division, or a page-table walk. Architectural analysis therefore moves between levels when necessary.

1.3 The stored-program model and its extensions

In the stored-program model, instructions and data reside in memory and are selected by addresses. The processor repeatedly fetches instructions, decodes them, obtains operands, performs operations, and commits results. This model provides generality, but instruction and data movement can become bottlenecks.

A conventional von Neumann organization uses a logically unified memory space. A Harvard organization separates instruction and data memories, at least in some part of the hierarchy. Most contemporary general-purpose processors use a hybrid arrangement: separate first-level instruction and data caches, followed by larger unified caches and main memory.

The classical model also assumes a central processor executing a sequential instruction stream. Modern systems extend it with superscalar issue, out-of-order execution, multithreading, vector processing, graphics processors, domain-specific accelerators, and distributed memory. These extensions improve performance by exploiting instruction-level, data-level, task-level, or request-level parallelism.

2. Fundamental Quantitative Measures

2.1 Response time and throughput

Response time, also called latency, is the elapsed time required to complete one operation or request. Throughput is the amount of work completed per unit time. They are related but not identical. A server may improve throughput by processing many requests concurrently without reducing the latency of an individual request.

For a workload completing N operations in elapsed time T, average throughput is

Throughput = N ÷ T

If N is measured in requests and T in seconds, throughput is requests per second. The formula assumes that the completed operations are comparable and that the measurement interval is defined consistently.

Execution time should be reported with workload, input size, software version, compiler settings, and system state. A statement such as “Processor A is faster” is incomplete unless the workload and metric are specified.

2.2 Clock period and clock frequency

Clock period is the duration of one clock cycle. Clock frequency is the number of cycles per second:

Clock period = 1 ÷ Clock frequency

If frequency is 2.5 GHz, the period is

1 ÷ (2.5 × 109) s = 0.4 ns

Frequency alone does not determine performance. A processor operating at a higher frequency may execute more cycles per instruction, stall more often, or perform less work per instruction.

2.3 Instruction count, CPI, and IPC

The central performance relationship is

CPU time = Instruction count × CPI × Clock period

Equivalently,

CPU time = (Instruction count × CPI) ÷ Clock frequency

Instruction count is the number of instructions executed for the selected program and input. CPI, or cycles per instruction, is the average number of clock cycles consumed per instruction. Clock period is measured in seconds per cycle. The equation assumes that a single average CPI is meaningful for the measured workload.

Instruction-per-cycle (IPC) is often used for processors capable of issuing multiple instructions:

IPC = Instruction count ÷ Number of clock cycles

When both quantities describe the same interval and instruction definition, CPI and IPC are reciprocals:

IPC = 1 ÷ CPI

This does not mean that a processor can always convert an arbitrary workload from CPI to IPC without qualification. Stalls, speculation, instruction fusion, vector instructions, and differing definitions of “instruction” can make comparisons misleading.

CPI can be decomposed approximately as

CPItotal = CPIbase + CPImemory + CPIbranch + CPIother

where the terms represent the base execution cost and additional average costs due to memory, branch, and other stalls. The decomposition is useful for diagnosis, but the terms may not be strictly independent because events overlap in out-of-order processors.

Worked Example 1: CPU execution time

A program executes 1.2 × 10^9 instructions on a 3 GHz processor. Its average CPI is 1.5. The execution time is

CPU time = (1.2 × 109 × 1.5) ÷ (3 × 109) s = 0.6 s

The corresponding average IPC is 1 ÷ 1.5 ≈ 0.667 instructions per cycle. If an optimization reduces CPI to 1.2 without changing instruction count or frequency, the new time is

(1.2 × 109 × 1.2) ÷ (3 × 109) s = 0.48 s

The speedup is 0.6 ÷ 0.48 = 1.25, or a 20% reduction in execution time.

3. Performance Comparison and Speedup

Speedup compares a baseline with an improved design:

Speedup = Execution timebaseline ÷ Execution timeimproved

A speedup greater than 1 indicates improvement. Percentage reduction in execution time is different from percentage speedup. Reducing time from 10 seconds to 5 seconds gives a speedup of 2, but a 50% reduction in time.

For a workload with multiple components, weighted execution time is more meaningful than an unweighted average. If component i has execution time Tᵢ and constitutes fraction wᵢ of the baseline workload, where ∑wᵢ = 1, then

Ttotal = ∑(wᵢ × Tᵢ)

The weights must represent a justified workload distribution, not an arbitrary average of benchmark scores.

3.1 Amdahl’s law

Amdahl’s law estimates the maximum speedup when only part of a workload is improved:

Speeduptotal = 1 ÷ [(1 − f) + (f ÷ s)]

Here, f is the fraction of original execution time affected by the enhancement, and s is the speedup of that fraction. The unaffected fraction is 1 − f. The law assumes that the workload remains fixed, fractions are measured in time rather than instruction count, and enhancement overheads are either included in s or negligible.

If 40% of execution time is accelerated by a factor of 5,

Speeduptotal = 1 ÷ [0.6 + (0.4 ÷ 5)] = 1 ÷ 0.68 ≈ 1.47

Thus a fivefold improvement in one part produces only about a 1.47-fold total improvement.

Amdahl’s law exposes diminishing returns. As s approaches infinity, the maximum speedup approaches 1 ÷ (1 − f). If f = 0.4, no improvement to the accelerated component can produce more than 1 ÷ 0.6 ≈ 1.67 overall speedup.

3.2 Gustafson’s perspective

Amdahl’s law assumes a fixed-size problem. In scientific and engineering computing, a faster system may be used to solve a larger problem in approximately the same time. Gustafson’s law models scaled workloads:

Scaled speedup = s − α × (s − 1)

where s is the number of processors or scaling factor and α is the serial fraction measured in the parallel execution. The law does not contradict Amdahl’s law; it answers a different question. Amdahl asks how quickly a fixed problem finishes, while Gustafson asks how much larger a problem can be solved in a fixed time.

4. Parallelism and the Limits of Scaling

Architectural parallelism appears at several levels:

  • instruction-level parallelism: independent instructions overlap;
  • data-level parallelism: one operation applies to multiple data elements;
  • thread-level parallelism: independent threads execute concurrently;
  • task-level parallelism: distinct tasks execute simultaneously;
  • request-level parallelism: multiple external requests are served concurrently.

Parallel speedup is limited by serial work, synchronization, communication, load imbalance, memory bandwidth, and resource contention. More cores do not guarantee proportional performance.

For p processors, an ideal upper bound is p-fold speedup, but real speedup is lower because of overhead. A simplified model is

Tp = Tserial + (Tparallel ÷ p) + Toverhead

where T_serial is inherently sequential time, T_parallel is parallelizable time on one processor, and T_overhead includes synchronization, communication, scheduling, and imbalance. The terms may depend on p, so the model is an approximation rather than a universal law.

Parallel efficiency is

Efficiency = Speedup ÷ p

Efficiency of 1 represents ideal linear scaling. Efficiency declines when additional processors contribute less useful work than their cost.

5. Memory Hierarchy and Average Access Time

The memory hierarchy exploits locality. Temporal locality means recently used data are likely to be used again. Spatial locality means addresses near a recently used address are likely to be accessed soon. Registers, caches, main memory, and storage differ in capacity, latency, bandwidth, and cost per bit.

A cache hit finds the requested block at a given level. A miss requires access to a lower level. For a two-level hierarchy, a simple average memory access time is

AMAT = Hit timeL1 + Miss rateL1 × Miss penaltyL1

where Hit time_L1 is the time to access the first-level cache, Miss rate_L1 is misses divided by accesses, and Miss penalty_L1 is the additional time required after an L1 miss. If the L1 miss penalty includes the complete lower-level behavior, this expression is sufficient.

For two explicit cache levels,

AMAT = Hit timeL1 + Miss rateL1 × (Hit timeL2 + Miss rateL2 × Miss penaltyL2)

Here, L2 miss rate is usually a local miss rate: L2 misses divided by L2 accesses. Confusing local miss rate with global miss rate is a common analytical error.

Worked Example 2: AMAT

Suppose an L1 cache has a 1-cycle hit time and a 5% local miss rate. An L2 access takes 8 cycles and has a 20% local miss rate. Main-memory service after an L2 miss requires 80 cycles. Then

AMAT = 1 + 0.05 × (8 + 0.20 × 80)
AMAT = 1 + 0.05 × 24 = 2.2 cycles

This is an average; individual accesses may take 1, 9, or 89 cycles depending on where the data are found. The result assumes serial lookup and that the stated penalties include all relevant transfer and refill costs.

Memory performance also depends on bandwidth. Latency is the time to begin or complete one access, while bandwidth is the rate at which data can be transferred. A workload with many independent accesses may be bandwidth-bound even when individual latency is acceptable.

6. Power, Energy, and Thermal Constraints

Power is the rate of energy consumption:

Power = Energy ÷ Time

Energy for a fixed interval is

Energy = Power × Time

Dynamic CMOS power is commonly approximated by

Pdynamic ≈ α × C × V² × f

where α is activity factor, C is switched capacitance in farads, V is voltage in volts, and f is switching frequency in hertz. The relationship assumes a simplified capacitive-switching model. It omits leakage, short-circuit power, voltage-regulator losses, and system-level effects.

Leakage power becomes increasingly important as devices scale and transistor counts increase. Total power is therefore often represented as

Ptotal = Pdynamic + Pleakage

Performance per watt is useful for data centers and battery-powered systems:

Performance per watt = Performance ÷ Power

Energy per task is often more appropriate than instantaneous power:

Energy per task = Total energy ÷ Number of completed tasks

A design that finishes twice as fast but consumes three times the power may have higher peak power and worse energy efficiency, depending on the exact execution interval and idle behavior.

7. Benchmarking and Experimental Methodology

Benchmarking converts architectural claims into measured evidence. A credible experiment specifies the workload, input data, compiler and flags, operating-system configuration, processor frequency policy, number of runs, warm-up procedure, and measured event.

Important principles include:

  1. Use representative workloads. Synthetic tests can isolate mechanisms, but application suites reveal interactions.
  2. Measure the relevant metric. Use response time for interactive systems, throughput for batch services, and energy per task for energy-constrained systems.
  3. Control the environment. Thermal throttling, background processes, frequency scaling, and memory placement can change results.
  4. Report variation. Median, mean, standard deviation, or confidence intervals may be appropriate depending on the distribution.
  5. Avoid invalid averages. Arithmetic averaging of ratios can be misleading. When combining normalized execution times across workloads, use a clearly justified method; the geometric mean is often used for ratios, but it does not replace workload-weighted analysis.
  6. Separate training and test data. This is essential for AI accelerators and machine-learning benchmarks to avoid overstating general performance.

Benchmark results are conditional observations, not universal properties. A processor may perform well on vectorizable numerical kernels but poorly on pointer-heavy graph workloads. Reproducibility requires publishing sufficient configuration and measurement details.

8. ISA and Microarchitectural Design Choices

8.1 RISC and CISC perspectives

Reduced instruction set computer (RISC) designs traditionally emphasize regular instruction formats, load/store operation, and a relatively simple decoding structure. Complex instruction set computer (CISC) designs traditionally provide richer instructions and addressing modes. Modern processors blur this distinction: complex external instructions may be translated into simpler internal micro-operations, while RISC processors increasingly include sophisticated speculation and vector extensions.

The relevant architectural question is not whether an ISA label is “better,” but whether the instruction set supports efficient compilation, code density, compatibility, verification, security, and implementation across intended workloads.

8.2 Pipelining and superscalar execution

Pipelining overlaps stages of multiple instructions. A basic pipeline may contain fetch, decode, execute, memory access, and write-back stages. The ideal throughput approaches one instruction per cycle after filling, but hazards reduce this ideal.

Data hazards arise when instructions depend on earlier results. Control hazards arise from branches. Structural hazards arise when instructions compete for a hardware resource. Forwarding, scheduling, register renaming, branch prediction, and speculation reduce these effects, but they add area, power, verification complexity, and recovery mechanisms.

A deeper pipeline can increase frequency by reducing work per stage, but it may increase branch-misprediction penalties and pipeline-control complexity. This is a classic architectural trade-off rather than a universally optimal choice.

8.3 Heterogeneous and accelerator-based systems

Contemporary systems combine general-purpose cores with GPUs, tensor engines, media engines, cryptographic units, and programmable accelerators. Accelerators can provide high performance per watt for suitable kernels, but data movement, programming effort, memory coherence, and workload irregularity may dominate.

The total application time should include transfer and coordination overhead:

Ttotal = Thost + Ttransfer + Taccelerator + Tsynchronization

An accelerator is valuable only when its computational benefit exceeds these additional costs. AI workloads particularly emphasize matrix operations, memory bandwidth, numerical precision, sparsity, and model-serving latency. Claims such as “tera-operations per second” must be interpreted with precision, sparsity assumptions, batch size, and sustained—not merely peak—performance.

9. Reliability, Security, and Governance

Architecture must account for more than speed. Soft errors, manufacturing defects, aging, and overheating can cause incorrect computation. Error-detecting and error-correcting codes, parity, redundancy, checkpointing, and recovery mechanisms improve dependability at additional cost.

Security is also architectural. Privilege levels, memory protection, secure boot, trusted execution environments, isolation, and cryptographic accelerators establish protection boundaries. Speculative execution has demonstrated that microarchitectural state can create side channels even when the ISA-level result is correct. Mitigations may reduce performance and must be evaluated quantitatively.

Governance concerns include transparent performance claims, reproducible evaluation, responsible energy use, supply-chain trust, and protection of data processed by specialized accelerators. For safety-critical systems, architectural decisions may need to satisfy domain-specific standards for failure analysis, traceability, and verification.

10. Illustrative Case: Selecting a Platform for a Latency-Sensitive Analytics Service

Background

Consider an illustrative online analytics service that receives independent queries. Each query performs filtering, aggregation, and a small machine-learning inference. The service must meet a 20 ms 95th-percentile latency target while supporting 10,000 queries per second. Energy and operating cost are also important.

Problem

Three candidate designs are available:

  • a high-frequency general-purpose CPU;
  • a many-core CPU with lower frequency but greater thread capacity;
  • a CPU connected to a specialized inference accelerator.

A peak-throughput comparison alone is inadequate because query latency includes queueing, data movement, cache misses, and accelerator invocation overhead.

Analysis

The team decomposes each query into CPU preprocessing, memory access, inference, and synchronization. Profiling shows that inference represents 35% of baseline response time, while preprocessing and irregular memory access represent 65%. The accelerator provides a tenfold improvement for inference but adds transfer and invocation overhead. Applying Amdahl’s law gives an idealized limit:

Speedup = 1 ÷ [0.65 + (0.35 ÷ 10)] = 1 ÷ 0.685 ≈ 1.46

Thus the accelerator cannot provide a tenfold end-to-end improvement. It may still be attractive if it reduces energy or increases throughput, but the latency target must be assessed using tail latency rather than average latency.

The team also measures cache behavior. A data-layout transformation reduces L1 miss rate, but it increases memory footprint. AMAT improves only if the additional footprint does not substantially increase L2 and memory traffic. This illustrates why optimizing one metric in isolation can produce a worse system.

Approach and solution

The selected design uses a moderate-frequency CPU, a small inference accelerator for sufficiently large batches, and a software path for small requests where transfer overhead would dominate. The service pins critical threads, reserves memory capacity, monitors thermal frequency reduction, and reports median and 95th-percentile latency, throughput, and energy per query.

A queue-aware load balancer prevents a single accelerator from becoming a tail-latency bottleneck. Continuous production monitoring detects workload drift because changes in query shape can alter cache locality and accelerator utilization.

Outcome and learning points

The hybrid design meets the latency target for small requests and improves throughput for larger requests. Its success depends not on peak accelerator capability but on workload partitioning, data movement, queue management, and measurement discipline.

The case demonstrates five principles:

  1. optimize end-to-end time rather than an isolated kernel;
  2. apply Amdahl’s law before assuming large speedup;
  3. distinguish average latency from tail latency;
  4. evaluate energy and transfer costs with performance;
  5. use adaptive policies when workload characteristics vary.

11. Limitations of Quantitative Models

Architectural equations are abstractions. The CPU performance equation is exact as an accounting identity when its quantities are consistently defined, but average CPI can hide overlap and phase behavior. Amdahl’s law assumes stable fractions and may exclude changing problem sizes. AMAT may ignore nonblocking caches, multiple outstanding misses, prefetching, bank conflicts, and queueing. Power equations are approximations and do not automatically predict temperature.

Consequently, models should be combined with measurement, simulation, sensitivity analysis, and, where possible, analytical bounds. A useful research practice is to state assumptions explicitly, vary uncertain parameters, and compare predictions with hardware measurements.

Best Practices for Architectural Analysis

  • Define the workload and system boundary before selecting a metric.
  • Use execution time, not clock frequency, as the primary performance measure.
  • Separate latency, throughput, bandwidth, power, and energy.
  • Apply Amdahl’s law to identify the highest-value optimization target.
  • Check whether measured fractions are time fractions, instruction fractions, or event fractions.
  • Include software, data movement, synchronization, and operating-system overhead.
  • Report uncertainty and avoid unsupported generalization from one benchmark.
  • Evaluate performance per watt and energy per task when deployment cost matters.
  • Treat security, reliability, and maintainability as architectural requirements.
  • Validate models through controlled experiments and reproducible configurations.

Chapter Summary

Computer architecture connects software-visible behavior with the internal and physical mechanisms that implement it. The ISA defines the contract, while microarchitecture and implementation determine how efficiently that contract is realized. The principal performance identity is CPU time = instruction count × CPI × clock period, but meaningful evaluation also requires response time, throughput, memory behavior, power, energy, and workload context.

Speedup is bounded by the portion of a workload affected by an enhancement. Amdahl’s law therefore discourages optimization of small components without understanding their contribution to total time. Parallel systems face serial fractions, synchronization, communication, imbalance, bandwidth limits, and overhead. Memory hierarchies exploit locality, and AMAT provides a useful—though simplified—method for estimating average access cost. Power and energy models explain why frequency, voltage, capacitance, and activity must be considered together.

Modern systems increasingly use heterogeneous cores and specialized accelerators. Their value depends on end-to-end execution time, data movement, programmability, reliability, and security, not merely peak computational rate. Sound architectural practice combines quantitative models with carefully designed benchmarks, explicit assumptions, reproducible experiments, and critical interpretation.

Key Terms

Computer architecture: The design of a computer system and its programmer-visible behavior.

Computer organization: The internal arrangement that implements an ISA.

Instruction set architecture (ISA): The software–hardware interface defining instructions, registers, memory behavior, and system facilities.

Microarchitecture: The internal processor design used to implement an ISA.

Latency: Time required to complete one operation or request.

Throughput: Amount of work completed per unit time.

Clock period: Duration of one processor clock cycle.

CPI: Average clock cycles required per executed instruction.

IPC: Average instructions completed per clock cycle.

Speedup: Baseline execution time divided by improved execution time.

Amdahl’s law: A model showing that total speedup is limited by the unimproved fraction of execution time.

Instruction-level parallelism: Overlap among independent instructions.

Memory hierarchy: Ordered levels of storage differing in latency, capacity, bandwidth, and cost.

Cache hit: An access satisfied at the searched cache level.

Cache miss: An access requiring service from a lower memory level.

AMAT: Average memory access time, incorporating hit time and miss penalties.

Bandwidth: Rate of data transfer.

Dynamic power: Power associated primarily with capacitive switching.

Energy per task: Energy consumed to complete a defined unit of work.

Accelerator: Specialized hardware designed to execute selected computations efficiently.

Review Questions

Short Answer Questions

  1. Distinguish computer architecture from computer organization.
  2. Define CPI and IPC, and state their relationship under consistent definitions.
  3. Why is clock frequency alone an inadequate performance metric?
  4. What is the difference between latency and throughput?
  5. Explain temporal and spatial locality.

Long Answer Questions

  1. Derive the CPU performance equation and explain every term, including its assumptions.
  2. Explain Amdahl’s law, calculate its limiting speedup, and discuss why it matters for architectural optimization.
  3. Describe the major levels of parallelism and the factors that prevent linear scaling.
  4. Explain a two-level cache hierarchy and derive the corresponding AMAT expression.
  5. Discuss how performance, power, energy, reliability, and security interact in modern processor design.

Analytical / Application Questions

  1. A program executes 2.4 × 10^9 instructions on a 4 GHz processor with CPI 1.25. Calculate execution time. If an optimization reduces instruction count by 10% but increases CPI to 1.35, determine whether execution time improves.
  2. A workload spends 70% of its time in a component accelerated by a factor of 8. Calculate total speedup using Amdahl’s law and explain why it is less than 8.
  3. An L1 cache has a 2-cycle hit time and 4% miss rate. The L2 hit time is 12 cycles, its local miss rate is 25%, and main-memory penalty is 100 cycles. Calculate AMAT and identify one architectural or software technique that could reduce it.

Multiple Choice Questions with Answers

Question 1

Which quantity is programmer-visible and defines the software–hardware contract?

A. Instruction set architecture

B. Pipeline depth

C. Cache replacement policy

D. Transistor leakage current

Correct Answer: A. Instruction set architecture

Question 2

A program executes 1 × 10^9 instructions with CPI 2 on a 2 GHz processor. What is its CPU time?

A. 0.25 s

B. 0.5 s

C. 1 s

D. 2 s

Correct Answer: C. 1 s

Question 3

If 25% of execution time is improved by a factor of 5, what is the total speedup according to Amdahl’s law?

A. 1.25

B. 1.33

C. 2.50

D. 5.00

Correct Answer: B. 1.33

Question 4

Which metric measures completed work per unit time?

A. Latency

B. Throughput

C. Clock period

D. CPI

Correct Answer: B. Throughput

Question 5

For a processor with CPI = 0.5 under consistent instruction definitions, the IPC is:

A. 0.25

B. 0.5

C. 1.5

D. 2

Correct Answer: D. 2

Question 6

Which locality means that recently accessed data are likely to be accessed again?

A. Spatial locality

B. Temporal locality

C. Sequential consistency

D. Instruction fusion

Correct Answer: B. Temporal locality

Question 7

In the simplified dynamic-power relationship Pdynamic ≈ α × C × V2 × f, which variable has a squared effect?

A. Activity factor

B. Capacitance

C. Voltage

D. Frequency

Correct Answer: C. Voltage

Question 8

If an L1 cache has a 1-cycle hit time, 10% miss rate, and a 20-cycle miss penalty, what is the AMAT under the simple two-level model?

A. 1.2 cycles

B. 2 cycles

C. 3 cycles

D. 20 cycles

Correct Answer: C. 3 cycles

Question 9

Which factor commonly limits scaling beyond the ideal number of processors?

A. Serial work and synchronization overhead

B. Instruction naming alone

C. Higher storage capacity alone

D. A larger address notation

Correct Answer: A. Serial work and synchronization overhead

Question 10

Why can a specialized accelerator fail to improve end-to-end application latency substantially?

A. It always lowers clock frequency to zero

B. Data transfer and coordination overhead may dominate

C. It cannot execute any arithmetic operation

D. It eliminates all parallelism

Correct Answer: B. Data transfer and coordination overhead may dominate

Advanced Computer Architecture
Chapter 1 of 1