CENG3420 Lecture 12: Instruction-Level Parallelism
Bei Yu
byu@cse.cuhk.edu.hk
(Latest update: March 14, 2018)
Spring 2018
1 / 35
CENG3420 Lecture 12: Instruction-Level Parallelism Bei Yu - - PowerPoint PPT Presentation
CENG3420 Lecture 12: Instruction-Level Parallelism Bei Yu byu@cse.cuhk.edu.hk (Latest update: March 14, 2018) Spring 2018 1 / 35 Overview Introduction Dependencies VLIW SuperScalar (SS) Summary 2 / 35 Overview Introduction
1 / 35
2 / 35
3 / 35
3 / 35
4 / 35
5 / 35
6 / 35
7 / 35
8 / 35
8 / 35
9 / 35
10 / 35
◮ Increasing or duplicating the troublesome resource ◮ Providing additional registers that are used to re-establish the correspondence between
◮ Allocated dynamically by the hardware in SS processors
11 / 35
12 / 35
13 / 35
14 / 35
14 / 35
15 / 35
16 / 35
Instruction Memory
Add PC 4 Write Data Write Addr
Register File
ALU Add
Data Memory
Sign Extend Add Sign Extend
17 / 35
18 / 35
19 / 35
20 / 35
20 / 35
◮ Eliminate unnecessary loop overhead instructions ◮ Schedule so as to avoid load use hazards
21 / 35
22 / 35
23 / 35
23 / 35
◮ Loop unrolling reduces the number of conditional branches ◮ Predication eliminates if-the-else branch structures by replacing them with predicated instructions
24 / 35
25 / 35
25 / 35
26 / 35
27 / 35
28 / 35
29 / 35
30 / 35
30 / 35
30 / 35
More on: http://www.theregister.co.uk/2018/01/04/intel_amd_arm_cpu_vulnerability/ 31 / 35
32 / 35
33 / 35
34 / 35
35 / 35