Future Directions Flashcards

1
Q

What is the fundamental limiter of processor performance?

A

Energy efficiency

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

Why is reliability of processors a challenge?

A

Transistors can wear out and get stuck at 1 or 0, or slow down so they don’t switch as quickly

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

How can we use multicores to try and overcome the challenge of energy efficiency?

A

Move from complex single core to simple multicore, and dial down clock frequency to save power (since increasing pipelining and clock frequency took too much power)

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

What does multicore scaling tell us?

A

Just adding cores will not allow us to deliver speed ups that keep up with Moore’s law - we need to fundamentally alter the cores themselves eg. making them more efficient by eliminating overheads

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

How can we specialise multicore chips for energy efficiency?

A
  1. Make the cores heterogenous
  2. Remove the core altogether for some algorithms
  3. Create accelerators for certain tasks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Why are accelerators more efficient?

A

Specialised - lacks out-of-order hardware, caches, multithreading etc.

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

What does ASIC stand for?

A

Application Specific Integrated Circuits

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

Do programs run faster on ASICs or FPGAs?

A

ASICs

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

What is speeding sequential code?

A

Temporarily exceeding power budget, allowing some cores to run faster
Used when we have more sequential work to do in a core

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

What is dual-core lockstep?

A

In safety-critical applications, we have two separate processors running the same core with some checking logic ensuring results are the same

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

Draw a diagram of dual-core lockstep

A

.

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

Give an example of an application in which we might be able to reduce energy usage because they don’t require 100% accuracy

A

Video games

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

Why do we need processors to be secure?

A

May be running on untrusted services eg. cloud
May be computing with sensitive information

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

How can we help keep processors secure?

A

Programming languages eg. prevent buffer overflow

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

What is spectre?

A

A class of speculative execution CPU vulnerabilities

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

How does spectre work?

A
  1. Train branch predictor to mispredict
  2. Victim loads secret data
  3. These misspeculated instructions are executed
  4. Check cache again after speculative execution - execution is rolled back because speculation is incorrect, but effects left in cache so can work out what victim loaded
17
Q

Draw a diagram showing how spectre works

18
Q

How can we deal with spectre?

A

Try to hide any speculative state

19
Q

Which whole class of attack does the CHERI secure processor protect against?

A

Buffer overflow

20
Q

What is lowRISC?

A

An open source SoC capable of running Linux well
Aim to build an open, transparent implementation of a secure root-of-trust

21
Q

What is the lowRISC root-of-trust?

A

Part of the system that is verified to be secure, that means we can start to trust more and more of the system until we have confidence in the integrity of the whole system

22
Q

What is the trade-off to consider when using accelerators?

A

Sacrificing flexibility for performance