Computing Hardware Flashcards

1
Q

What is meant by an Instruction Set Architecture (ISA)?

A

The ISA is the structure of a computer that a machine language programmer/compiler must understand to write a correct program for that machine. It includes the operations it can execute, the data transfer mechanisms, control mechanisms and the ‘contract’ between compiler and hardware.

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

What is the difference between a Personal Mobile Device (PMD) and a desktop computer?

A

A PMD is a wireless device with a multimedia interface, while a desktop computer is a computer workstation that must balance battery life around cost-performance tradeoffs.

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

What is the difference between a server computer and a cluster?

A

A server computer is large-scape and has more reliable file computing services, while a cluster is a group of interconnected servers working together to complete tasks.

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

What is meant by an embedded computer?

A

An embedded computer is one found in everyday machines, such as microwave ovens, washing machines, etc. It relies heavily on temporal correctness and reliability compared to PMDs.

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

What are the two types of application parallelism?
(Parallelism occurring within applications)

A

Data-Level Parallelism - working on multiple data items at the same time - and Task-Level Parallelism - tasks that can be operated on independently on each thread.

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

What are the four ways we can exploit application parallelism?

A

Instruction-Level Parallelism (ILP), where we use instruction pipelining and speculative execution to speed up instructions. Thread-Level Parallelism (TLP), where we use threads to perform tasks on separate ‘instances’. Request-Level Parallelism (RLP), where we take ‘requests’ to decouple tasks and exploit parallelism.

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

What is Flynn’s Taxonomy?

A

Flynn’s Taxonomy is a classification for parallelism exploitation techniques which classifies computers into four classes based on how many instructions and data points it can handle at once.

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

What is an example of a system that falls under the Single Instruction, Multiple Data classification of Flynn’s Taxonomy?

A

A graphics card - it performs the same instruction, typically vector calculus, on a large amount of data (coordinate pixels).

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

What are the two locality assumptions we can make when dealing with parallel systems?

A

With temporal locality, we assume that data that has been accessed recently will likely be accessed again soon.

With spatial locality, we assume data that is spatially near one another will likely be accessed again soon, since they may potentially be part of the same program.

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

What is Amdahl’s Law?

A

Amdahl’s Law states that the performance improvement gained from using a faster mode of execution is limited by the fraction of time that mode may be used. In other words, if we achieve a performance improvement, it only improves whatever computation it will be used for.

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

What is speedup in relation to computer hardware?

A

Speedup is how much faster a task will run, overall, with an enhancement compared to the original.

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

A program takes 12 seconds to run before enhancements, but 10 afterwards. What is the speedup?

A

Since we are working with units of time, we use the second ‘mode’ of the speedup equation, where the original is placed on top.

12 / 10 = 1.2x faster

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