Lecture 1 - Computer Architecture Intro Flashcards

(13 cards)

1
Q

Computer Architecture Overview
(Definition and Key Components)

A

Definition: Computer architecture encompasses the design of circuits, gates, and chips for desktops, servers, and mobile devices, focusing on cost, performance, and energy efficiency.

Key Components: Instruction Set Architecture (ISA), microarchitecture (µ-arch), and hardware circuitry.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

ISA - Instruction Set Architecture
(Definiton and examples)

A

Definition: An ISA is defined as a set of instructions that a computer processor can perform to execute.

Examples: Various ISAs exist, including x86 (Intel, AMD), Arm (Apple, Qualcomm, Samsung, Google), and RISC-V (Nvidia).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Microarchitecture - µ-arch
(Definiton and examples)

A

Definition: A Microarchitecture describes the design of the CPU circuits and components used to implement the ISA.

Examples: Different microarchitectures are used in processors, such as (Intel’s Pentium, Core i5, Core i3, and Celeron), as well as (AMD’s Opteron, Athlon, Ryzen, Phenom, and Cyrix).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Single Processor Performance
(Describe the trend in single processor over time)

A

Performance improvements in single processors have slowed down significantly since around 2013, leading to a shift towards multi-processor systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Computer Architecture Trends
(Describe the curernt trends in computer architecture)

A

The focus has shifted from Instruction Level Parallelism (ILP) to Data Level Parallelism (DLP) and Thread Level Parallelism (TLP), requiring explicit restructuring of applications.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Parallelism
(Definition and Classes)

A

Defintion: The use of executing multiple processes simultaneously for solving a problem.

Two types of parallelism:
Applications:
- Data Level Parallelism (DLP)
- Task Level Parallelism (TLP)

Architectural:
- Instruction Level Parallelism (ILP)
- Vector Architectures/Graphics Processing Units (GPUs)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Flynn’s Taxonomy
(Definition and Classes)

A

Definition: A classification of computer architectures, proposed by Michael J. Flynn 1966.

Classes:
- SISD (Single Instruction, Single Data)
* Executes a single instruction stream to operate on a single data stream. (Ex, older single-core CPUs)
- SIMD (Single Instruction, Multiple Data)
* Executes a single instruction simultaneously on multiple data streams. (Ex, Vector Processors and GPUs). Suitable for parallel processing tasks like image and video processing.
- MISD (Multiple Instruction, Single Data)
* Executes multiple instructions operate on a single data stream. Less common, used in fault tolerant system (where multiple processors perform the same calculations on the same data for redundancy).
- MIMD (Multiple Instruction, Multiple Data)
* Executes multiple instructions on different data streams. Most Common type. Examples being Multi-Core, clusters, and distrbuted systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Bandwidth and Latency
(Defintions)

A

Bandwidth: Total work done in a given time

Latency: Time between start and completion of an event

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Power and Energy
(Description)

A

Power consumption is a critical concern, with Thermal Design Power (TDP) being a key metric. Energy per task is also an important consideration.

Note: Clock rate can be reduced dynamically to limit power consumption.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Static Power and Dynamic Power
(What is the difference?)

A

Static Power: Power drawn from leakage with no activity.

Dynamic Power: Power used by actitivity (things actaully happening in the hardware circuitry).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Quick Question: How do you reduce power consumption?

A
  • Reducing clock rate reduces power, not energy.
  • Turning off cores.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Measuring Performance

A
  • Typical performance metrics include response time (Latency) and throughput.
  • Speed-up calculations compare execution times.
  • Execution time can be measured as wall clock time or CPU time.
  • Benchmarks are used to evaluate performance.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Principles of Computer Design

A

Key principles include taking advantage of parallelism, leveraging locality, focusing on the common case (Amdahl’s Law), and optimizing memory placement.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly