SlideShare a Scribd company logo
1 of 24
ECE 4100/6100
Advanced Computer Architecture
Lecture 2 Instruction-Level Parallelism
(ILP)
Prof. Hsien-Hsin Sean Lee
School of Electrical and Computer Engineering
Georgia Institute of Technology
Sequential Program Semantics
• Human expects “sequential semantics”
– Tries to issue an instruction every clock cycle
– There are dependencies, control hazards and long
latency instructions
• To achieve performance with minimum effort
– To issue more instructions every clock cycle
– E.g., an embedded system can save power by exploiting
instruction level parallelism and decrease clock
frequency
Scalar Pipeline (Baseline)
• Machine Parallelism = D (= 5)
• Issue Latency (IL) = 1
• Peak IPC = 1
1
2
3
4
IFIF DEDE EXEX MEMMEM WBWB
5
Execution Cycle
InstructionSequence
D
6
Superpipelined Machine
• 1 major cycle = M minor cycles
• Machine Parallelism = M x D (= 15) per major cycle
• Issue Latency (IL) = 1 minor cycles
• Peak IPC = 1 per minor cycle = M per baseline cycle
• Superpipelined machines are simply deeper pipelined
Execution Cycle
InstructionSequence
IFIF DEDE EXEX MEMMEM WBWB
1
2
3
4
5
6
7
8
9
1 2 3 4 5 6
I
M
D
D
D
E
E
E
M
D
D
D
D
D
I I
II
I
E
EE
E
E
D
E
MII I DD D W W W
E E
M
D DD D
Superscalar Machine
• Can issue > 1 instruction per cycle by hardware
• Replicate resources, e.g., multiple adders or multi-ported data caches
• Machine Parallelism = S x D (= 10) where S is superscalar degree
• Issue Latency (IL) = 1
• IPC = 2
Execution Cycle
InstructionSequence
1
2
3
4
5
6
7
8
9
10
S
IFIF DEDE EXEX MEMMEM WBWB
What is Instruction-Level Parallelism (ILP)?
• Fine-grained parallelism
• Enabled and improved by RISC
– More ILP of a RISC over CISC does not imply a better overall
performance
– CISC can be implemented like a RISC
• A measure of inter-instruction dependency in an app
– ILP assumes a unit-cycle operation, infinite resources, prefect
frontend
– ILP != IPC
– IPC = # instructions / # cycles
– ILP is the upper bound of attainable IPC
• Limited by
– Data dependency
– Control dependency
c1=i1: load r2, (r12)
c2=i2: add r1, r2, 9
c3=i3: mul r2, r5, r6
δt
δa
δo
ILP Example
• True dependency forces
“sequentiality”
• ILP = 3/3 = 1
• False dependency removed
• ILP = 3/2 = 1.5
i1: load r2, (r12)
i2: add r1, r2, 9
i3: mul r8, r5, r6
δt
c1: load r2, (r12)
c2: add r1, r2, #9 mul r8, r5, r6
Window in Search of ILP
R5 = 8(R6)
R7 = R5 – R4
R9 = R7 * R7
R15 = 16(R6)
R17 = R15 – R14
R19 = R15 * R15
ILP = 1
ILP = 1.5
ILP = ?
Window in Search of ILP
R5 = 8(R6)
R7 = R5 – R4
R9 = R7 * R7
R15 = 16(R6)
R17 = R15 – R14
R19 = R15 * R15
Window in Search of ILP
• ILP = 6/3 = 2 better than 1 and 1.5
• Larger window gives more opportunities
• Who exploit the instruction window?
• But what limits the window?
R5 = 8(R6)
R7 = R5 – R4
R9 = R7 * R7
R15 = 16(R6)
R17 = R15 – R14 R19 = R15 * R15
C1:
C2:
C3:
Memory Dependency
• Ambiguous dependency also forces “sequentiality”
• To increase ILP, needs dynamic memory disambiguation mechanisms
that are either safe or recoverable
• ILP could be 1, could be 3, depending on the actual dependence
i1: load r2, (r12)
i2: store r7, 24(r20)
i3: store r1, (0xFF00)
?
?
?
ILP, Another Example
R1 = 8(R0)
R3 = R1 – 5
R2 = R1 * R3
24(R0) = R2
R1 = 16(R0)
R3 = R1 – 5
R2 = R1 * R3
32(R0) = R2
ILP =
When only 4 registers available
ILP, Another Example
ILP =
When more registers (or register renaming) available
R1 = 8(R0)
R3 = R1 – 5
R2 = R1 * R3
24(R0) = R2
R5 = 16(R0)
R6 = R5 – 5
R7 = R5 * R6
32(R0) = R7
R1 = 8(R0)
R3 = R1 – 5
R2 = R1 * R3
24(R0) = R2
R1 = 16(R0)
R3 = R1 – 5
R2 = R1 * R3
32(R0) = R2
Basic Blocks
a = array[i];
b = array[j];
c = array[k];
d = b + c;
while (d<t) {
a++;
c *= 5;
d = b + c;
}
array[i] = a;
array[j] = d;
i1: lw r1, (r11)
i2: lw r2, (r12)
i3: lw r3, (r13)
i4: add r2, r2, r3
i5: bge r2, r9, i9
i6: addi r1, r1, 1
i7: mul r3, r3, 5
i8: j i4
i9: sw r1, (r11)
i10: sw r2, (r12)
I11: jr r31
Basic Blocks
a = array[i];
b = array[j];
c = array[k];
d = b + c;
while (d<t) {
a++;
c *= 5;
d = b + c;
}
array[i] = a;
array[j] = d;
i1: lw r1, (r11)
i2: lw r2, (r12)
i3: lw r3, (r13)
i4: add r2, r2, r3
i5: bge r2, r9, i9
i6: addi r1, r1, 1
i7: mul r3, r3, 5
i8: j i4
i9: sw r1, (r11)
i10: sw r2, (r12)
I11: jr r31
Control Flow Graph
i1: lw r1, (r11)
i2: lw r2, (r12)
i3: lw r3, (r13)
i4: add r2, r2, r3
i5: jge r2, r9, i9
i6: addi r1, r1, 1
i7: mul r3, r3, 5
i8: j i4
i9: sw r1, (r11)
i10: sw r2, (r12)
I11: jr r31
BB1
BB2
BB3 BB4
ILP (without Speculation)
i1: lw r1, (r11)
i2: lw r2, (r12)
i3: lw r3, (r13)
i4: add r2, r2, r3
i5: jge r2, r9, i9
i6: addi r1, r1, 1
i7: mul r3, r3, 5
i8: j i4
i9: sw r1, (r11)
i10: sw r2, (r12)
I11: jr r31
BB1 = 3
BB1
BB2
BB3 BB4
lw r1, (r11) lw r2, (r12) lw r3, (r13)
BB2 = 1
add r2, r2, r3
jge r2, r9, i9
BB3 = 3
addi r1, r1, 1 mul r3, r3, 5 j i4
BB4 = 1.5
sw r1, (r11)
sw r2, (r12)
jr r31
ILP = 8/4 = 2
BB1  BB2  BB3
ILP = 8/5 = 1.6
BB1  BB2  BB4
ILP (with Speculation, No Control Dependence)
i1: lw r1, (r11)
i2: lw r2, (r12)
i3: lw r3, (r13)
i4: add r2, r2, r3
i5: jge r2, r9, i9
i6: addi r1, r1, 1
i7: mul r3, r3, 5
i8: j i4
i9: sw r1, (r11)
i10: sw r2, (r12)
I11: jr r31
BB1
BB2
BB3 BB4
BB1  BB2  BB3
ILP = 8/3 = 2.67
BB1  BB2  BB4
ILP = 8/3 = 2.67
lw r1, (r11) lw r2, (r12) lw r3, (r13)
add r2, r2, r3
jge r2, r9, i9
addi r1, r1, 1 mul r3, r3, 5
j i4
lw r1, (r11) lw r2, (r12) lw r3, (r13)
add r2, r2, r3
jge r2, r9, i9
sw r1, (r11)
sw r2, (r12) jr r31
Flynn’s Bottleneck
• ILP ≈ 1.86 
– Programs on IBM 7090
– ILP exploited within basic blocks
• [Riseman & Foster’72]
– Breaking control dependency
– A perfect machine model
– Benchmark includes numerical programs, assembler and compiler
passed jumps 0
jump
1
jump
2
jumps
8
jumps
32
jumps
128
jumps
∞
jumps
Average ILP 1.72 2.72 3.62 7.21 14.8 24.2 51.2
BB0
BB1
BB3
BB2
BB4
David Wall (DEC) 1993
• Evaluating effects of microarchitecturemicroarchitecture on ILP
• OOO with 2K instruction window, 64-wide, unit latency
• Peephole alias analysis  inspecting instructions to see if any obvious
independence between addresses
• Indirect jump predict 
– Ring buffer (for procedure return): similar to return address stack
– Table: last time prediction
models branch predict ind jump predict reg renaming alias analysis ILP
Stupid NO NO NO NO 1.5 - 2
Poor 64b counter NO NO peephole 2 - 3
Fair 2Kb ctr/gsh 16-addr ring
no table
NO Perfect 3 - 4
Good 16kb loc/gsh 16-addr ring
8-addr table
64 registers perfect 5 - 8
Great 152 kb loc/gsh 2k-addr ring
2k-addr table
256 perfect 6 - 12
Superb fanout 4, then 152kb loc/gsh 2k-addr ring
2k-addr table
256 perfect 8 - 15
Perfect Perfect Perfect Perfect perfect 18 - 50
Stack Pointer Impact
• Stack Pointer register dependency
– True dependency upon each function call
– Side effect of language abstraction
– See execution profiles in the paper
• “Parallelism at a distance”
– Example: printf()
– One form of Thread-level parallelism
old sp
sp=sp-48
arg
locals
return addr
return val
Stack memory
Removing Stack Pointer Dependency [Postiff’98]
$sp effect
Exploiting ILP
• Hardware
– Control speculation (control)
– Dynamic Scheduling (data)
– Register Renaming (data)
– Dynamic memory disambiguation (data)
• Software
– (Sophisticated) program analysis
– Predication or conditional instruction (control)
– Better register allocation (data)
– Memory Disambiguation by compiler (data)
Many embedded system designers chose this
Other Parallelisms
• SIMD (Single instruction, Multiple data)
– Each register as a collection of smaller data
• Vector processing
– e.g. VECTOR ADD: add long streams of data
– Good for very regular code containing long vectors
– Bad for irregular codes and short vectors
• Multithreading and Multiprocessing (or Multi-core)
– Cycle interleaving
– Block interleaving
– High performance embedded’s option (e.g., packet processing)
• Simultaneous Multithreading (SMT): Hyper-threading
– Separate contexts, shared other microarchitecture modules

More Related Content

What's hot

Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIWLec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIWHsien-Hsin Sean Lee, Ph.D.
 
Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...
Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...
Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...Hsien-Hsin Sean Lee, Ph.D.
 
Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...
Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...
Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...Hsien-Hsin Sean Lee, Ph.D.
 
The 8051 assembly language
The 8051 assembly languageThe 8051 assembly language
The 8051 assembly languagehemant meena
 
Data hazards ppt
Data hazards pptData hazards ppt
Data hazards pptMBalaji9
 
8086 microprocessor instruction set by Er. Swapnil Kaware
8086 microprocessor instruction set by Er. Swapnil Kaware8086 microprocessor instruction set by Er. Swapnil Kaware
8086 microprocessor instruction set by Er. Swapnil KawareProf. Swapnil V. Kaware
 
8086 labmanual
8086 labmanual8086 labmanual
8086 labmanualiravi9
 
Stack and subroutine
Stack and subroutineStack and subroutine
Stack and subroutineAshim Saha
 
Winter training,Readymade Projects,Buy Projects,Corporate Training
Winter training,Readymade Projects,Buy Projects,Corporate TrainingWinter training,Readymade Projects,Buy Projects,Corporate Training
Winter training,Readymade Projects,Buy Projects,Corporate TrainingTechnogroovy
 
Stacks & subroutines 1
Stacks & subroutines 1Stacks & subroutines 1
Stacks & subroutines 1deval patel
 
Understanding Tomasulo Algorithm
Understanding Tomasulo AlgorithmUnderstanding Tomasulo Algorithm
Understanding Tomasulo Algorithmonesuper
 
Introduction to Assembly Language
Introduction to Assembly LanguageIntroduction to Assembly Language
Introduction to Assembly LanguageMotaz Saad
 
1347 Assembly Language Programming Of 8051
1347 Assembly Language Programming Of 80511347 Assembly Language Programming Of 8051
1347 Assembly Language Programming Of 8051techbed
 
8086-instruction-set-ppt
 8086-instruction-set-ppt 8086-instruction-set-ppt
8086-instruction-set-pptjemimajerome
 
Data transfer instruction set of 8085 micro processor
Data transfer instruction set of 8085 micro processorData transfer instruction set of 8085 micro processor
Data transfer instruction set of 8085 micro processorvishalgohel12195
 
Counters &amp; time delay
Counters &amp; time delayCounters &amp; time delay
Counters &amp; time delayHemant Chetwani
 
Stack in 8085 microprocessor
Stack in 8085 microprocessorStack in 8085 microprocessor
Stack in 8085 microprocessorhepzijustin
 
8051 micro controllers Instruction set
8051 micro controllers Instruction set 8051 micro controllers Instruction set
8051 micro controllers Instruction set Nitin Ahire
 

What's hot (20)

Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIWLec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
Lec15 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- EPIC VLIW
 
Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...
Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...
Lec6 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Instruction...
 
Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...
Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...
Lec9 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Com...
 
The 8051 assembly language
The 8051 assembly languageThe 8051 assembly language
The 8051 assembly language
 
Class4
Class4Class4
Class4
 
Data hazards ppt
Data hazards pptData hazards ppt
Data hazards ppt
 
8086 microprocessor instruction set by Er. Swapnil Kaware
8086 microprocessor instruction set by Er. Swapnil Kaware8086 microprocessor instruction set by Er. Swapnil Kaware
8086 microprocessor instruction set by Er. Swapnil Kaware
 
8086 labmanual
8086 labmanual8086 labmanual
8086 labmanual
 
Stack and subroutine
Stack and subroutineStack and subroutine
Stack and subroutine
 
Winter training,Readymade Projects,Buy Projects,Corporate Training
Winter training,Readymade Projects,Buy Projects,Corporate TrainingWinter training,Readymade Projects,Buy Projects,Corporate Training
Winter training,Readymade Projects,Buy Projects,Corporate Training
 
Stacks & subroutines 1
Stacks & subroutines 1Stacks & subroutines 1
Stacks & subroutines 1
 
Understanding Tomasulo Algorithm
Understanding Tomasulo AlgorithmUnderstanding Tomasulo Algorithm
Understanding Tomasulo Algorithm
 
Introduction to Assembly Language
Introduction to Assembly LanguageIntroduction to Assembly Language
Introduction to Assembly Language
 
1347 Assembly Language Programming Of 8051
1347 Assembly Language Programming Of 80511347 Assembly Language Programming Of 8051
1347 Assembly Language Programming Of 8051
 
8086-instruction-set-ppt
 8086-instruction-set-ppt 8086-instruction-set-ppt
8086-instruction-set-ppt
 
17
1717
17
 
Data transfer instruction set of 8085 micro processor
Data transfer instruction set of 8085 micro processorData transfer instruction set of 8085 micro processor
Data transfer instruction set of 8085 micro processor
 
Counters &amp; time delay
Counters &amp; time delayCounters &amp; time delay
Counters &amp; time delay
 
Stack in 8085 microprocessor
Stack in 8085 microprocessorStack in 8085 microprocessor
Stack in 8085 microprocessor
 
8051 micro controllers Instruction set
8051 micro controllers Instruction set 8051 micro controllers Instruction set
8051 micro controllers Instruction set
 

Viewers also liked

Lec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Intro
Lec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- IntroLec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Intro
Lec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- IntroHsien-Hsin Sean Lee, Ph.D.
 
Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...
Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...
Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...Hsien-Hsin Sean Lee, Ph.D.
 
Lec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISA
Lec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISALec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISA
Lec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISAHsien-Hsin Sean Lee, Ph.D.
 
Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...
Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...
Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...Hsien-Hsin Sean Lee, Ph.D.
 
Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...
Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...
Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...Hsien-Hsin Sean Lee, Ph.D.
 
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- PerformanceLec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- PerformanceHsien-Hsin Sean Lee, Ph.D.
 
Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...
Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...
Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...Hsien-Hsin Sean Lee, Ph.D.
 
Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...
Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...
Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...Hsien-Hsin Sean Lee, Ph.D.
 
Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...
Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...
Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...Hsien-Hsin Sean Lee, Ph.D.
 
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...Hsien-Hsin Sean Lee, Ph.D.
 
Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...
Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...
Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...Hsien-Hsin Sean Lee, Ph.D.
 
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...Hsien-Hsin Sean Lee, Ph.D.
 
Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...
Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...
Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...Hsien-Hsin Sean Lee, Ph.D.
 
Lec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOS
Lec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOSLec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOS
Lec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOSHsien-Hsin Sean Lee, Ph.D.
 
Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...
Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...
Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...Hsien-Hsin Sean Lee, Ph.D.
 
Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...
Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...
Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...Hsien-Hsin Sean Lee, Ph.D.
 
Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...
Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...
Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...Hsien-Hsin Sean Lee, Ph.D.
 
Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...
Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...
Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...Hsien-Hsin Sean Lee, Ph.D.
 
CMOS Topic 6 -_designing_combinational_logic_circuits
CMOS Topic 6 -_designing_combinational_logic_circuitsCMOS Topic 6 -_designing_combinational_logic_circuits
CMOS Topic 6 -_designing_combinational_logic_circuitsIkhwan_Fakrudin
 
CMOS logic circuits
CMOS logic circuitsCMOS logic circuits
CMOS logic circuitsMahesh_Naidu
 

Viewers also liked (20)

Lec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Intro
Lec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- IntroLec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Intro
Lec1 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Intro
 
Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...
Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...
Lec6 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Can...
 
Lec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISA
Lec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISALec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISA
Lec4 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ISA
 
Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...
Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...
Lec2 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Num...
 
Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...
Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...
Lec14 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Se...
 
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- PerformanceLec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
Lec3 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Performance
 
Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...
Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...
Lec10 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Mu...
 
Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...
Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...
Lec8 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Qui...
 
Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...
Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...
Lec3 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMO...
 
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
Lec17 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Me...
 
Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...
Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...
Lec13 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Sh...
 
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
Lec16 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Fi...
 
Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...
Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...
Lec12 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Ad...
 
Lec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOS
Lec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOSLec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOS
Lec4 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- CMOS
 
Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...
Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...
Lec7 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Dynamic Sch...
 
Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...
Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...
Lec7 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Kar...
 
Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...
Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...
Lec11 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- De...
 
Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...
Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...
Lec5 Intro to Computer Engineering by Hsien-Hsin Sean Lee Georgia Tech -- Boo...
 
CMOS Topic 6 -_designing_combinational_logic_circuits
CMOS Topic 6 -_designing_combinational_logic_circuitsCMOS Topic 6 -_designing_combinational_logic_circuits
CMOS Topic 6 -_designing_combinational_logic_circuits
 
CMOS logic circuits
CMOS logic circuitsCMOS logic circuits
CMOS logic circuits
 

Similar to Lec2 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ILP

Pragmatic Optimization in Modern Programming - Mastering Compiler Optimizations
Pragmatic Optimization in Modern Programming - Mastering Compiler OptimizationsPragmatic Optimization in Modern Programming - Mastering Compiler Optimizations
Pragmatic Optimization in Modern Programming - Mastering Compiler OptimizationsMarina Kolpakova
 
An introduction to ROP
An introduction to ROPAn introduction to ROP
An introduction to ROPSaumil Shah
 
High Performance Computer Architecture
High Performance Computer ArchitectureHigh Performance Computer Architecture
High Performance Computer ArchitectureSubhasis Dash
 
Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06
Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06
Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06ManhHoangVan
 
Using Raspberry Pi GPU for DNN
Using Raspberry Pi GPU for DNNUsing Raspberry Pi GPU for DNN
Using Raspberry Pi GPU for DNNnotogawa
 
Register transfer and micro-operation
Register transfer and micro-operationRegister transfer and micro-operation
Register transfer and micro-operationNikhil Pandit
 
LPC 2148 Instructions Set.ppt
LPC 2148 Instructions Set.pptLPC 2148 Instructions Set.ppt
LPC 2148 Instructions Set.pptProfBadariNathK
 
Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1Tom Paulus
 
Go Go Gadget! - An Intro to Return Oriented Programming (ROP)
Go Go Gadget! - An Intro to Return Oriented Programming (ROP)Go Go Gadget! - An Intro to Return Oriented Programming (ROP)
Go Go Gadget! - An Intro to Return Oriented Programming (ROP)Miguel Arroyo
 
Pragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the CompilerPragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the CompilerMarina Kolpakova
 
digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdf
digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdfdigitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdf
digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdfDuy-Hieu Bui
 
Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)
Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)
Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)Uri Laserson
 
Exploring the x64
Exploring the x64Exploring the x64
Exploring the x64FFRI, Inc.
 

Similar to Lec2 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ILP (20)

Pragmatic Optimization in Modern Programming - Mastering Compiler Optimizations
Pragmatic Optimization in Modern Programming - Mastering Compiler OptimizationsPragmatic Optimization in Modern Programming - Mastering Compiler Optimizations
Pragmatic Optimization in Modern Programming - Mastering Compiler Optimizations
 
Limen Alpha Processor
Limen Alpha ProcessorLimen Alpha Processor
Limen Alpha Processor
 
An introduction to ROP
An introduction to ROPAn introduction to ROP
An introduction to ROP
 
optimization c code on blackfin
optimization c code on blackfinoptimization c code on blackfin
optimization c code on blackfin
 
High Performance Computer Architecture
High Performance Computer ArchitectureHigh Performance Computer Architecture
High Performance Computer Architecture
 
Arm architecture
Arm architectureArm architecture
Arm architecture
 
Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06
Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06
Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06Lect-06
 
Using Raspberry Pi GPU for DNN
Using Raspberry Pi GPU for DNNUsing Raspberry Pi GPU for DNN
Using Raspberry Pi GPU for DNN
 
Register transfer and micro-operation
Register transfer and micro-operationRegister transfer and micro-operation
Register transfer and micro-operation
 
OptimizingARM
OptimizingARMOptimizingARM
OptimizingARM
 
LPC 2148 Instructions Set.ppt
LPC 2148 Instructions Set.pptLPC 2148 Instructions Set.ppt
LPC 2148 Instructions Set.ppt
 
Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1Getting Started with Raspberry Pi - DCC 2013.1
Getting Started with Raspberry Pi - DCC 2013.1
 
Go Go Gadget! - An Intro to Return Oriented Programming (ROP)
Go Go Gadget! - An Intro to Return Oriented Programming (ROP)Go Go Gadget! - An Intro to Return Oriented Programming (ROP)
Go Go Gadget! - An Intro to Return Oriented Programming (ROP)
 
ARM instruction set
ARM instruction  setARM instruction  set
ARM instruction set
 
Pragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the CompilerPragmatic Optimization in Modern Programming - Demystifying the Compiler
Pragmatic Optimization in Modern Programming - Demystifying the Compiler
 
digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdf
digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdfdigitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdf
digitaldesign-2020-lecture10a-lc3andmips-beforelecture.pdf
 
Pipelining1
Pipelining1Pipelining1
Pipelining1
 
Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)
Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)
Numba-compiled Python UDFs for Impala (Impala Meetup 5/20/14)
 
Exploring the x64
Exploring the x64Exploring the x64
Exploring the x64
 
module2.ppt
module2.pptmodule2.ppt
module2.ppt
 

More from Hsien-Hsin Sean Lee, Ph.D.

Lec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- Coherence
Lec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- CoherenceLec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- Coherence
Lec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- CoherenceHsien-Hsin Sean Lee, Ph.D.
 
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMP
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMPLec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMP
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMPHsien-Hsin Sean Lee, Ph.D.
 
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- MulticoreLec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- MulticoreHsien-Hsin Sean Lee, Ph.D.
 
Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3
Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3
Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3Hsien-Hsin Sean Lee, Ph.D.
 
Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2
Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2
Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2Hsien-Hsin Sean Lee, Ph.D.
 
Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1
Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1
Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1Hsien-Hsin Sean Lee, Ph.D.
 

More from Hsien-Hsin Sean Lee, Ph.D. (6)

Lec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- Coherence
Lec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- CoherenceLec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- Coherence
Lec14 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech --- Coherence
 
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMP
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMPLec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMP
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- SMP
 
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- MulticoreLec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
Lec13 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Multicore
 
Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3
Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3
Lec11 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part3
 
Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2
Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2
Lec10 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part2
 
Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1
Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1
Lec9 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- Memory part 1
 

Recently uploaded

Call Girls Delhi {Rohini} 9711199012 high profile service
Call Girls Delhi {Rohini} 9711199012 high profile serviceCall Girls Delhi {Rohini} 9711199012 high profile service
Call Girls Delhi {Rohini} 9711199012 high profile servicerehmti665
 
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...Amil baba
 
萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程1k98h0e1
 
Hifi Babe North Delhi Call Girl Service Fun Tonight
Hifi Babe North Delhi Call Girl Service Fun TonightHifi Babe North Delhi Call Girl Service Fun Tonight
Hifi Babe North Delhi Call Girl Service Fun TonightKomal Khan
 
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一C SSS
 
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证gwhohjj
 
毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree 毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree z zzz
 
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...Authentic No 1 Amil Baba In Pakistan
 
Vip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best Services
Vip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best ServicesVip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best Services
Vip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best Servicesnajka9823
 
定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一
定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一
定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一ss ss
 
the cOMPUTER SYSTEM - computer hardware servicing.pptx
the cOMPUTER SYSTEM - computer hardware servicing.pptxthe cOMPUTER SYSTEM - computer hardware servicing.pptx
the cOMPUTER SYSTEM - computer hardware servicing.pptxLeaMaePahinagGarciaV
 
美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作
美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作
美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作ss846v0c
 
Dubai Call Girls O525547819 Spring Break Fast Call Girls Dubai
Dubai Call Girls O525547819 Spring Break Fast Call Girls DubaiDubai Call Girls O525547819 Spring Break Fast Call Girls Dubai
Dubai Call Girls O525547819 Spring Break Fast Call Girls Dubaikojalkojal131
 
Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作
Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作
Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作f3774p8b
 
1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree
1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree
1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degreeyuu sss
 
existing product research b2 Sunderland Culture
existing product research b2 Sunderland Cultureexisting product research b2 Sunderland Culture
existing product research b2 Sunderland CultureChloeMeadows1
 
NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...Amil Baba Dawood bangali
 

Recently uploaded (20)

9953330565 Low Rate Call Girls In Jahangirpuri Delhi NCR
9953330565 Low Rate Call Girls In Jahangirpuri  Delhi NCR9953330565 Low Rate Call Girls In Jahangirpuri  Delhi NCR
9953330565 Low Rate Call Girls In Jahangirpuri Delhi NCR
 
Call Girls Delhi {Rohini} 9711199012 high profile service
Call Girls Delhi {Rohini} 9711199012 high profile serviceCall Girls Delhi {Rohini} 9711199012 high profile service
Call Girls Delhi {Rohini} 9711199012 high profile service
 
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
NO1 Qualified Best Black Magic Specialist Near Me Spiritual Healer Powerful L...
 
萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程
 
Hifi Babe North Delhi Call Girl Service Fun Tonight
Hifi Babe North Delhi Call Girl Service Fun TonightHifi Babe North Delhi Call Girl Service Fun Tonight
Hifi Babe North Delhi Call Girl Service Fun Tonight
 
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
(办理学位证)韩国汉阳大学毕业证成绩单原版一比一
 
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
 
毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree 毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
毕业文凭制作#回国入职#diploma#degree加拿大瑞尔森大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
 
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...Papular No 1 Online Istikhara Amil Baba Pakistan  Amil Baba In Karachi Amil B...
Papular No 1 Online Istikhara Amil Baba Pakistan Amil Baba In Karachi Amil B...
 
Low rate Call girls in Delhi Justdial | 9953330565
Low rate Call girls in Delhi Justdial | 9953330565Low rate Call girls in Delhi Justdial | 9953330565
Low rate Call girls in Delhi Justdial | 9953330565
 
Vip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best Services
Vip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best ServicesVip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best Services
Vip Udupi Call Girls 7001305949 WhatsApp Number 24x7 Best Services
 
定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一
定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一
定制(RHUL学位证)伦敦大学皇家霍洛威学院毕业证成绩单原版一比一
 
the cOMPUTER SYSTEM - computer hardware servicing.pptx
the cOMPUTER SYSTEM - computer hardware servicing.pptxthe cOMPUTER SYSTEM - computer hardware servicing.pptx
the cOMPUTER SYSTEM - computer hardware servicing.pptx
 
young call girls in Gtb Nagar,🔝 9953056974 🔝 escort Service
young call girls in Gtb Nagar,🔝 9953056974 🔝 escort Serviceyoung call girls in Gtb Nagar,🔝 9953056974 🔝 escort Service
young call girls in Gtb Nagar,🔝 9953056974 🔝 escort Service
 
美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作
美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作
美国IUB学位证,印第安纳大学伯明顿分校毕业证书1:1制作
 
Dubai Call Girls O525547819 Spring Break Fast Call Girls Dubai
Dubai Call Girls O525547819 Spring Break Fast Call Girls DubaiDubai Call Girls O525547819 Spring Break Fast Call Girls Dubai
Dubai Call Girls O525547819 Spring Break Fast Call Girls Dubai
 
Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作
Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作
Erfurt FH学位证,埃尔福特应用技术大学毕业证书1:1制作
 
1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree
1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree
1:1原版定制美国加州州立大学东湾分校毕业证成绩单pdf电子版制作修改#真实留信入库#永久存档#真实可查#diploma#degree
 
existing product research b2 Sunderland Culture
existing product research b2 Sunderland Cultureexisting product research b2 Sunderland Culture
existing product research b2 Sunderland Culture
 
NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...
NO1 Certified Black Magic Specialist Expert Amil baba in Uk England Northern ...
 

Lec2 Computer Architecture by Hsien-Hsin Sean Lee Georgia Tech -- ILP

  • 1. ECE 4100/6100 Advanced Computer Architecture Lecture 2 Instruction-Level Parallelism (ILP) Prof. Hsien-Hsin Sean Lee School of Electrical and Computer Engineering Georgia Institute of Technology
  • 2. Sequential Program Semantics • Human expects “sequential semantics” – Tries to issue an instruction every clock cycle – There are dependencies, control hazards and long latency instructions • To achieve performance with minimum effort – To issue more instructions every clock cycle – E.g., an embedded system can save power by exploiting instruction level parallelism and decrease clock frequency
  • 3. Scalar Pipeline (Baseline) • Machine Parallelism = D (= 5) • Issue Latency (IL) = 1 • Peak IPC = 1 1 2 3 4 IFIF DEDE EXEX MEMMEM WBWB 5 Execution Cycle InstructionSequence D 6
  • 4. Superpipelined Machine • 1 major cycle = M minor cycles • Machine Parallelism = M x D (= 15) per major cycle • Issue Latency (IL) = 1 minor cycles • Peak IPC = 1 per minor cycle = M per baseline cycle • Superpipelined machines are simply deeper pipelined Execution Cycle InstructionSequence IFIF DEDE EXEX MEMMEM WBWB 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 I M D D D E E E M D D D D D I I II I E EE E E D E MII I DD D W W W E E M D DD D
  • 5. Superscalar Machine • Can issue > 1 instruction per cycle by hardware • Replicate resources, e.g., multiple adders or multi-ported data caches • Machine Parallelism = S x D (= 10) where S is superscalar degree • Issue Latency (IL) = 1 • IPC = 2 Execution Cycle InstructionSequence 1 2 3 4 5 6 7 8 9 10 S IFIF DEDE EXEX MEMMEM WBWB
  • 6. What is Instruction-Level Parallelism (ILP)? • Fine-grained parallelism • Enabled and improved by RISC – More ILP of a RISC over CISC does not imply a better overall performance – CISC can be implemented like a RISC • A measure of inter-instruction dependency in an app – ILP assumes a unit-cycle operation, infinite resources, prefect frontend – ILP != IPC – IPC = # instructions / # cycles – ILP is the upper bound of attainable IPC • Limited by – Data dependency – Control dependency
  • 7. c1=i1: load r2, (r12) c2=i2: add r1, r2, 9 c3=i3: mul r2, r5, r6 δt δa δo ILP Example • True dependency forces “sequentiality” • ILP = 3/3 = 1 • False dependency removed • ILP = 3/2 = 1.5 i1: load r2, (r12) i2: add r1, r2, 9 i3: mul r8, r5, r6 δt c1: load r2, (r12) c2: add r1, r2, #9 mul r8, r5, r6
  • 8. Window in Search of ILP R5 = 8(R6) R7 = R5 – R4 R9 = R7 * R7 R15 = 16(R6) R17 = R15 – R14 R19 = R15 * R15 ILP = 1 ILP = 1.5 ILP = ?
  • 9. Window in Search of ILP R5 = 8(R6) R7 = R5 – R4 R9 = R7 * R7 R15 = 16(R6) R17 = R15 – R14 R19 = R15 * R15
  • 10. Window in Search of ILP • ILP = 6/3 = 2 better than 1 and 1.5 • Larger window gives more opportunities • Who exploit the instruction window? • But what limits the window? R5 = 8(R6) R7 = R5 – R4 R9 = R7 * R7 R15 = 16(R6) R17 = R15 – R14 R19 = R15 * R15 C1: C2: C3:
  • 11. Memory Dependency • Ambiguous dependency also forces “sequentiality” • To increase ILP, needs dynamic memory disambiguation mechanisms that are either safe or recoverable • ILP could be 1, could be 3, depending on the actual dependence i1: load r2, (r12) i2: store r7, 24(r20) i3: store r1, (0xFF00) ? ? ?
  • 12. ILP, Another Example R1 = 8(R0) R3 = R1 – 5 R2 = R1 * R3 24(R0) = R2 R1 = 16(R0) R3 = R1 – 5 R2 = R1 * R3 32(R0) = R2 ILP = When only 4 registers available
  • 13. ILP, Another Example ILP = When more registers (or register renaming) available R1 = 8(R0) R3 = R1 – 5 R2 = R1 * R3 24(R0) = R2 R5 = 16(R0) R6 = R5 – 5 R7 = R5 * R6 32(R0) = R7 R1 = 8(R0) R3 = R1 – 5 R2 = R1 * R3 24(R0) = R2 R1 = 16(R0) R3 = R1 – 5 R2 = R1 * R3 32(R0) = R2
  • 14. Basic Blocks a = array[i]; b = array[j]; c = array[k]; d = b + c; while (d<t) { a++; c *= 5; d = b + c; } array[i] = a; array[j] = d; i1: lw r1, (r11) i2: lw r2, (r12) i3: lw r3, (r13) i4: add r2, r2, r3 i5: bge r2, r9, i9 i6: addi r1, r1, 1 i7: mul r3, r3, 5 i8: j i4 i9: sw r1, (r11) i10: sw r2, (r12) I11: jr r31
  • 15. Basic Blocks a = array[i]; b = array[j]; c = array[k]; d = b + c; while (d<t) { a++; c *= 5; d = b + c; } array[i] = a; array[j] = d; i1: lw r1, (r11) i2: lw r2, (r12) i3: lw r3, (r13) i4: add r2, r2, r3 i5: bge r2, r9, i9 i6: addi r1, r1, 1 i7: mul r3, r3, 5 i8: j i4 i9: sw r1, (r11) i10: sw r2, (r12) I11: jr r31
  • 16. Control Flow Graph i1: lw r1, (r11) i2: lw r2, (r12) i3: lw r3, (r13) i4: add r2, r2, r3 i5: jge r2, r9, i9 i6: addi r1, r1, 1 i7: mul r3, r3, 5 i8: j i4 i9: sw r1, (r11) i10: sw r2, (r12) I11: jr r31 BB1 BB2 BB3 BB4
  • 17. ILP (without Speculation) i1: lw r1, (r11) i2: lw r2, (r12) i3: lw r3, (r13) i4: add r2, r2, r3 i5: jge r2, r9, i9 i6: addi r1, r1, 1 i7: mul r3, r3, 5 i8: j i4 i9: sw r1, (r11) i10: sw r2, (r12) I11: jr r31 BB1 = 3 BB1 BB2 BB3 BB4 lw r1, (r11) lw r2, (r12) lw r3, (r13) BB2 = 1 add r2, r2, r3 jge r2, r9, i9 BB3 = 3 addi r1, r1, 1 mul r3, r3, 5 j i4 BB4 = 1.5 sw r1, (r11) sw r2, (r12) jr r31 ILP = 8/4 = 2 BB1  BB2  BB3 ILP = 8/5 = 1.6 BB1  BB2  BB4
  • 18. ILP (with Speculation, No Control Dependence) i1: lw r1, (r11) i2: lw r2, (r12) i3: lw r3, (r13) i4: add r2, r2, r3 i5: jge r2, r9, i9 i6: addi r1, r1, 1 i7: mul r3, r3, 5 i8: j i4 i9: sw r1, (r11) i10: sw r2, (r12) I11: jr r31 BB1 BB2 BB3 BB4 BB1  BB2  BB3 ILP = 8/3 = 2.67 BB1  BB2  BB4 ILP = 8/3 = 2.67 lw r1, (r11) lw r2, (r12) lw r3, (r13) add r2, r2, r3 jge r2, r9, i9 addi r1, r1, 1 mul r3, r3, 5 j i4 lw r1, (r11) lw r2, (r12) lw r3, (r13) add r2, r2, r3 jge r2, r9, i9 sw r1, (r11) sw r2, (r12) jr r31
  • 19. Flynn’s Bottleneck • ILP ≈ 1.86  – Programs on IBM 7090 – ILP exploited within basic blocks • [Riseman & Foster’72] – Breaking control dependency – A perfect machine model – Benchmark includes numerical programs, assembler and compiler passed jumps 0 jump 1 jump 2 jumps 8 jumps 32 jumps 128 jumps ∞ jumps Average ILP 1.72 2.72 3.62 7.21 14.8 24.2 51.2 BB0 BB1 BB3 BB2 BB4
  • 20. David Wall (DEC) 1993 • Evaluating effects of microarchitecturemicroarchitecture on ILP • OOO with 2K instruction window, 64-wide, unit latency • Peephole alias analysis  inspecting instructions to see if any obvious independence between addresses • Indirect jump predict  – Ring buffer (for procedure return): similar to return address stack – Table: last time prediction models branch predict ind jump predict reg renaming alias analysis ILP Stupid NO NO NO NO 1.5 - 2 Poor 64b counter NO NO peephole 2 - 3 Fair 2Kb ctr/gsh 16-addr ring no table NO Perfect 3 - 4 Good 16kb loc/gsh 16-addr ring 8-addr table 64 registers perfect 5 - 8 Great 152 kb loc/gsh 2k-addr ring 2k-addr table 256 perfect 6 - 12 Superb fanout 4, then 152kb loc/gsh 2k-addr ring 2k-addr table 256 perfect 8 - 15 Perfect Perfect Perfect Perfect perfect 18 - 50
  • 21. Stack Pointer Impact • Stack Pointer register dependency – True dependency upon each function call – Side effect of language abstraction – See execution profiles in the paper • “Parallelism at a distance” – Example: printf() – One form of Thread-level parallelism old sp sp=sp-48 arg locals return addr return val Stack memory
  • 22. Removing Stack Pointer Dependency [Postiff’98] $sp effect
  • 23. Exploiting ILP • Hardware – Control speculation (control) – Dynamic Scheduling (data) – Register Renaming (data) – Dynamic memory disambiguation (data) • Software – (Sophisticated) program analysis – Predication or conditional instruction (control) – Better register allocation (data) – Memory Disambiguation by compiler (data) Many embedded system designers chose this
  • 24. Other Parallelisms • SIMD (Single instruction, Multiple data) – Each register as a collection of smaller data • Vector processing – e.g. VECTOR ADD: add long streams of data – Good for very regular code containing long vectors – Bad for irregular codes and short vectors • Multithreading and Multiprocessing (or Multi-core) – Cycle interleaving – Block interleaving – High performance embedded’s option (e.g., packet processing) • Simultaneous Multithreading (SMT): Hyper-threading – Separate contexts, shared other microarchitecture modules

Editor's Notes

  1. &amp;lt;number&amp;gt;
  2. &amp;lt;number&amp;gt;
  3. &amp;lt;number&amp;gt;