11 - Performance & Optimisation Flashcards

1
Q

What is implicit with the goal of parallelism?

A

Optimisation

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

What are 2 ways to decide which parallelisation strategy is better?

A

Use theoretical measures

Measure the performance and compare

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

What is theoretical performance?

A

Span/step and work complexity

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

What is the most critical part when parallelising code?

A

The theoretical performance.

It can give you huge speedup gains

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

What is latency?

A

The time it takes to complete a single task

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

What is throughput?

A

The rate at which tasks can be complete

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

What is better, higher or lower latency?

A

Lower

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

What is better, higher or lower throughput?

A

Higher

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

What does latency minimise?

A

Time at the expense of power

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

What does throughput minimise?

A

Quantity of tasks processed per unit of time

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

What is optimised for low latency computations, CPU or GPU?

A

CPU

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

What is optimised for data-parallel and high throughput computations?

A

GPU

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

What has the larger cache? CPU or GPU?

A

CPU

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

What is speedup?

A

Compares the time T for solving the identical problem on one processor versus on p processors

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

What is the ideal speedup?

A

Linear

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

What is the formula for speedup?

A

S = Ts / Tp

17
Q

What is efficiency?

A

Measures the utilisation of hardware resources (return on hardware investment)

18
Q

What are 2 parallelisation metrics?

A

Speedup and efficiency

19
Q

What is the ideal efficiency?

A

1 (or 100%)

20
Q

What are 3 sources of performance loss?

A

Non-parallelisable computation (always small part that is serial)

Overhead (extra effort for communication between processors)

Under-utilisation (idle processors, slow memory)

21
Q

What is Amdahl’s Law?

A

The improvement to be gained from using a faster mode of execution is limited by the fraction of time that this mode is used

22
Q

What is the formula for Amdahl’s law?

A

s = 1/(1-f) + f/p

23
Q

What does Amdahl’s Law provide?

A

A theoretical upper limit on parallel speedup assuming that there are no costs for parallelism

24
Q

What overheads can be an extra cost of parallelisation?

A

Communication (shared memory)

Synchronisation (waiting for work to complete, barriers)

Computation (assignment of tasks to processors)

Memory requirements (parallel algorithms typical require more memory)

25
What is under-utilisation?
Each hardware will have its maximum capabilities Not utilising hardware resources to their full potential decreases efficiency
26
What is load imbalance?
Uneven distribution of work to processors
27
What is power consumption proportional to?
The cube of processor frequency f
28
What are 4 strategies to gain the best performance and optimisation?
Selection of the right algorithm Following basic principles for writing efficient code Architecture specific optimisation Micro-level optimisation
29
What is (1-f), f and p in Amdahl's law?
``` (1-f) = fraction of serial code (0-1) f = fraction of parallel code (0-1) p = number of processors ```