L1 & L2 Flashcards

1
Q

What is the result of adding more transistors to a multiprocessor?

A

More performance

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

What are the basic building blocks for integrated circuits?

A

Transistors

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

Why is there an increase in number of cores per chip?

A
  • Transistors are decreasing in size and clock frequency increases
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What are two effects of having smaller transistors?

A
  • Smaller transistor -> faster switching and less power consumption
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

True or False

Single processor speed is expected to keep increasing in the forthcoming years

A

False

Clock speed for single cores has physically reached its limit.
The solution is more cores.

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

What are the implications of multi-core processors?

A

Hardware issues:
 Memory organization
 Connection of processors
 Processor type

Software issues:
 How to program to allow for parallelism

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

What is Moore’s law?

A

Transistor count doubles every 1.5 years.
(Caused by transistor size reduction)

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

Why do smaller transistors mean faster cores?

A

They have a faster swtich delay and can be clocked at a higher frequency.

But, a limit has been reached where cooling becomes a problem

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

What is Dennard scaling? What led to its decline?

A

Dennard scaling: transistors size reduction results in less power consumption as more as packed on the same chip

Broke down in the mid-2000s mostly due to high current leakage

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

Explain the difference between Instruction Level Parallelism, Process Level Parallelism and Thread Level Parallelism, outlining an issue introduced by each.

A

Instruction-level parallelism:
 Compiler/hardware automatically parallelises a sequential stream of instructions
 Issue: Limits parallelism due to dependencies between instructions

Process-level parallelism:
Process level parallelism does not require much effort from the programmer. Process level parallelism consists in running different applications on different cores.
Issue: increased overhead

Thread-level parallelism:
 The programmer divides the program into sequences of instructions in parallel
 Issue: data sharing between threads introduces the need for synchronsiation

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

How is the total execution time calculation done for TLP in:
a. single core
b. multi-core

A

a. sum of each thread’s execution time
(t1 + t2 + .. + tn)

b. sum of each thread’s execution time / number of threads
( (t1 + t2 + .. + tn) / # of parallel threads)

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

What can be used for array computations that perform the same computation on its elements?

A

Data parallelism

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

What are some examples of data parallelism?

A

General:
- Matrix multiplication
- fourier transform

Graphics:
- Anti-aliasing
- Texture mapping
- Illumination and shading

Differential equations:
- Weather forecasting
- Engineering simulation
- Financial modelling

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

What program structure increases the complexity of parallelism?

A

Program structure with large amounts of multiple-write data sharing

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

Compare and contrast MPs and Chip MPs in terms of topology, connection, memory, and application.

A

Topology:
 MPs: Discrete elements
 Chip MPs: same chip

Connection:
 MPs: High-bandwidth network
 Chip MPs: On-chip network

Memory:
 Both utilize shared memory
 MPs may use private memory

Application:
 MPs: specific applications (supercomputers, web)
 Chip MPs: general purpose

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

What are the 4 types of architectures in Flynn’s taxonomy?

A

o SISD: one instruction executed at a time processing one data element at a time

o SIMD: one instruction executed at a time operating on multiple independent streams of data

o MIMD: multiple sequences of instructions executed independently each one operating on a different stream of data

o SPMD: multiple instruction streams but with the same code on multiple independent streams of data

17
Q

What is an application of MIMD?

A

Chip multiprocessors

18
Q

What is an application of SIMD?

A

Vector’s processors, vector units, GPUs

19
Q

What is the worst case complexity for communication in a NxN grid?

A

2*(N-1) steps

20
Q

What is the worst case complexity for communication in a NxN torus?

A

N steps

21
Q

True or False.

In a grid interconnection, all cores have 4 neighbours.

A

False.

Edge cores of the grid have 2 or 3. In torus, all cores have 4 neighbours.

22
Q

How many neighbours does a 3D torus core have?

A

3*2 so 6 neighbours

23
Q

Explain the 3 options for interconnection.

A

Grid:
 Direct link to neighbours
 Private on-chip memory
 Staged communication with non-neighbours

Torus:
 Direct link to neighbours
 Private on-chip memory
 More symmetrical, more paths, and shorter paths
 Like folding the grid, so all cores have 4 neighbours

Bus:
 All cores linked to all cores
 Simple to build
 Constant latency

24
Q

Explain the difference between shared and distributed memory from a hardware and software view.

A

Shared: accessible from every part of the computation
 Hardware: Memory connected to all cores
 Software: Global; accessible from all threads; reads/writes

Distributed: accessible from only part of the computation
 Hardware: Memory connected to only one core
 Software: Local; accessible only by the owning thread; message passing

25
Q

Is data sharing efficient on distributed memory?

A

No, it is slow

26
Q

Is message passing efficient on shared memory?

A

It is fast but slower than data sharing