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
Q

What is under-utilisation?

A

Each hardware will have its maximum capabilities

Not utilising hardware resources to their full potential decreases efficiency

26
Q

What is load imbalance?

A

Uneven distribution of work to processors

27
Q

What is power consumption proportional to?

A

The cube of processor frequency f

28
Q

What are 4 strategies to gain the best performance and optimisation?

A

Selection of the right algorithm

Following basic principles for writing efficient code

Architecture specific optimisation

Micro-level optimisation

29
Q

What is (1-f), f and p in Amdahl’s law?

A
(1-f) = fraction of serial code (0-1)
f = fraction of parallel code (0-1)
p = number of processors