SlideShare a Scribd company logo
1 of 15
INSTRUCTION LEVEL PARALLELISM (ILP)
The Parallelism among instructions
ILP
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
IF ID EX MEM WB
Methods to increase ILP
Increase the depth of pipeline to overlap more instructions
Replicate the internal components of computer so that it can
launch multiple instructions in every pipeline stage.
- Multiple Issue
Multiple Issue
Static Multiple Issue Dynamic Multiple Issue
An approach to implementing a
multiple-issue processor where
many decisions are made by
the compiler before execution
There are two major ways to implement a multiple-issue processor
An approach to implementing a
multiple issue processor where
many decisions are made during
execution by the processor.
There are two primary and distinct responsibilities that must be dealt with in a
multiple-issue pipeline
1. Packaging instructions into issue slots
2. Dealing with data and control hazards
SPECULATION
Based on the great idea of prediction, speculation is an approach that allows
the compiler or the processor to “guess” about the properties of an
instruction, so as to enable execution to begin for other instructions that
may depend on the speculated instruction
SPECULATION
Software
Hardware
Compiler
Processor
The compiler usually inserts
additional instructions that check
the accuracy of the speculation
and provide a fix-up routine to use
when the speculation is incorrect
The processor usually buffers the
speculative results until it knows
they are no longer speculative
Static Multiple Issue Processor
issue slots The positions from which instructions could issue in
a given clock cycle
issue packet The set of instructions that issues together in one
clock cycle
Packaging of instructions done with the help of Compiler
Very Long Instruction Word (VLIW)
Instruction 1 Instruction 2 Instruction 3 Instruction 4 Instruction 5 Instruction 6 Instruction 7
Static Two Issue Processor
Static Two Issue Datapath
Simple Multiple Issue Code Scheduling
Loop Unrolling for Multiple-Issue Pipeline
for (i=0; i<4; i++)
{
Y[i] = A[i] * B[i];
}
for (i=0; i<2; i++)
{
Y[i] = A[i] * B[i];
Y[i+2] = A[i+2] * B[i+2];
}
for (i=0; i<100; i++)
{
Y[i] = A[i] * B[i];
}
for (i=0; i<25; i++)
{
Y[i] = A[i] * B[i];
Y[i+25] = A[i+25] * B[i+25];
Y[i+50] = A[i+50] * B[i+50];
Y[i+75] = A[i+75] * B[i+75];
}
Register Renaming
Used to overcome Anti-name dependency (WAR) and Output dependency (WAW)
R1 = R2 / R3
R4 = R1 * R5
R1 = R3 + R6
R3 = R1 – R4
R1 = R2 / R3
R4 = R1 * R5
R1 = R3 + R6
R3 = R1 – R4R8
R9
R9
Dynamic Multiple Issue Processor
Superscalar Processor / Superscalar
An advanced pipelining technique that enables the processor to
execute more than one instruction per clock cycle by selecting
them during execution
processor decides whether zero, one, or more instructions can issue
in a given clock cycle
Compiler helps to schedule the instructions to remove dependencies
Dynamic Multiple Issue Processor
Dynamic Pipeline Scheduling
Hardware support for reordering the order of instruction execution so as to
avoid stalls.
Dynamic pipeline scheduling chooses which instructions to execute in a
given clock cycle while trying to avoid hazards and stalls.
lw $t0, 20($s2)
addu $t1, $t0, $t2
sub $s4, $s4, $t3
slti $t5, $s4, 20
sub $s4, $s4, $t3
lw $t0, 20($s2)
addu $t1, $t0, $t2
slti $t5, $s4, 20
DynamicPipelineScheduling

More Related Content

What's hot

Ch6 CPU Scheduling galvin
Ch6 CPU Scheduling galvinCh6 CPU Scheduling galvin
Ch6 CPU Scheduling galvinShubham Singh
 
Chapter 01 - Introduction
Chapter 01 - IntroductionChapter 01 - Introduction
Chapter 01 - IntroductionCésar de Souza
 
Pipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptPipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptmali yogesh kumar
 
Concept of Pipelining
Concept of PipeliningConcept of Pipelining
Concept of PipeliningSHAKOOR AB
 
Real-Time Scheduling
Real-Time SchedulingReal-Time Scheduling
Real-Time Schedulingsathish sak
 
Bit pair recoding
Bit pair recodingBit pair recoding
Bit pair recodingBasit Ali
 
isa architecture
isa architectureisa architecture
isa architectureAJAL A J
 
BASIC COMPUTER ORGANIZATION AND DESIGN
BASIC  COMPUTER  ORGANIZATION  AND  DESIGNBASIC  COMPUTER  ORGANIZATION  AND  DESIGN
BASIC COMPUTER ORGANIZATION AND DESIGNDr. Ajay Kumar Singh
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memoryMazin Alwaaly
 
Instruction Execution Cycle
Instruction Execution CycleInstruction Execution Cycle
Instruction Execution Cycleutsav_shah
 
Instruction sets of 8086
Instruction sets of 8086Instruction sets of 8086
Instruction sets of 8086Mahalakshmiv11
 
basic computer programming and micro programmed control
basic computer programming and micro programmed controlbasic computer programming and micro programmed control
basic computer programming and micro programmed controlRai University
 
Signed Addition And Subtraction
Signed Addition And SubtractionSigned Addition And Subtraction
Signed Addition And SubtractionKeyur Vadodariya
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set ArchitectureDilum Bandara
 
Superscalar processor
Superscalar processorSuperscalar processor
Superscalar processornoor ul ain
 

What's hot (20)

Program control
Program controlProgram control
Program control
 
Ch6 CPU Scheduling galvin
Ch6 CPU Scheduling galvinCh6 CPU Scheduling galvin
Ch6 CPU Scheduling galvin
 
Chapter 01 - Introduction
Chapter 01 - IntroductionChapter 01 - Introduction
Chapter 01 - Introduction
 
Pipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptPipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture ppt
 
Computer arithmetic
Computer arithmeticComputer arithmetic
Computer arithmetic
 
Concept of Pipelining
Concept of PipeliningConcept of Pipelining
Concept of Pipelining
 
VLIW Processors
VLIW ProcessorsVLIW Processors
VLIW Processors
 
Semaphores
SemaphoresSemaphores
Semaphores
 
Real-Time Scheduling
Real-Time SchedulingReal-Time Scheduling
Real-Time Scheduling
 
Instruction format
Instruction formatInstruction format
Instruction format
 
Bit pair recoding
Bit pair recodingBit pair recoding
Bit pair recoding
 
isa architecture
isa architectureisa architecture
isa architecture
 
BASIC COMPUTER ORGANIZATION AND DESIGN
BASIC  COMPUTER  ORGANIZATION  AND  DESIGNBASIC  COMPUTER  ORGANIZATION  AND  DESIGN
BASIC COMPUTER ORGANIZATION AND DESIGN
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memory
 
Instruction Execution Cycle
Instruction Execution CycleInstruction Execution Cycle
Instruction Execution Cycle
 
Instruction sets of 8086
Instruction sets of 8086Instruction sets of 8086
Instruction sets of 8086
 
basic computer programming and micro programmed control
basic computer programming and micro programmed controlbasic computer programming and micro programmed control
basic computer programming and micro programmed control
 
Signed Addition And Subtraction
Signed Addition And SubtractionSigned Addition And Subtraction
Signed Addition And Subtraction
 
Instruction Set Architecture
Instruction Set ArchitectureInstruction Set Architecture
Instruction Set Architecture
 
Superscalar processor
Superscalar processorSuperscalar processor
Superscalar processor
 

Similar to Instruction Level Parallelism | Static Multiple Issue & Dynamic Multiple Issue Processors

Supporting Enterprise System Rollouts with Splunk
Supporting Enterprise System Rollouts with SplunkSupporting Enterprise System Rollouts with Splunk
Supporting Enterprise System Rollouts with SplunkErin Sweeney
 
Ibm connections 5.0 installation step-by-step (windows and tds)
Ibm connections 5.0   installation step-by-step (windows and tds)Ibm connections 5.0   installation step-by-step (windows and tds)
Ibm connections 5.0 installation step-by-step (windows and tds)Fuangwith Sopharath
 
SAP strikes back Your SAP server now counter attacks.
SAP strikes back Your SAP server now counter attacks.SAP strikes back Your SAP server now counter attacks.
SAP strikes back Your SAP server now counter attacks.Dmitry Iudin
 
Rifartek Robot Training Course - How to use ClientRobot
Rifartek Robot Training Course - How to use ClientRobotRifartek Robot Training Course - How to use ClientRobot
Rifartek Robot Training Course - How to use ClientRobotTsai Tsung-Yi
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREVLSICS Design
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREVLSICS Design
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREVLSICS Design
 
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.jsJavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.jsSteve Wallin
 
ENCOR_350-401_June_2023-v1.8.pdf
ENCOR_350-401_June_2023-v1.8.pdfENCOR_350-401_June_2023-v1.8.pdf
ENCOR_350-401_June_2023-v1.8.pdfCCIEHOMER
 
Presentation slides: "How to get 100% code coverage"
Presentation slides: "How to get 100% code coverage" Presentation slides: "How to get 100% code coverage"
Presentation slides: "How to get 100% code coverage" Rapita Systems Ltd
 
Data Entry Operator Certification
Data Entry Operator CertificationData Entry Operator Certification
Data Entry Operator CertificationVskills
 
Tibco i process ( staffware ) online & corporate training by virtual nuggets
Tibco i process ( staffware ) online & corporate training by virtual nuggetsTibco i process ( staffware ) online & corporate training by virtual nuggets
Tibco i process ( staffware ) online & corporate training by virtual nuggetspsrani
 
Mathematically Guaranteed C and C++ Code
Mathematically Guaranteed C and C++ CodeMathematically Guaranteed C and C++ Code
Mathematically Guaranteed C and C++ CodePauline Schellenberger
 
f37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.pptf37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.pptssuserf06014
 
f37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.pptf37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.pptVhhvf
 
Introduction to open_sbi
Introduction to open_sbiIntroduction to open_sbi
Introduction to open_sbiNylon
 
SystemVerilog_veriflcation and UVM for IC design.ppt
SystemVerilog_veriflcation and UVM for IC design.pptSystemVerilog_veriflcation and UVM for IC design.ppt
SystemVerilog_veriflcation and UVM for IC design.pptntareq91
 
ECET 340 Entire Course NEW
ECET 340 Entire Course NEWECET 340 Entire Course NEW
ECET 340 Entire Course NEWshyamuopfive
 

Similar to Instruction Level Parallelism | Static Multiple Issue & Dynamic Multiple Issue Processors (20)

6. ILP.pptx
6. ILP.pptx6. ILP.pptx
6. ILP.pptx
 
Supporting Enterprise System Rollouts with Splunk
Supporting Enterprise System Rollouts with SplunkSupporting Enterprise System Rollouts with Splunk
Supporting Enterprise System Rollouts with Splunk
 
Ibm connections 5.0 installation step-by-step (windows and tds)
Ibm connections 5.0   installation step-by-step (windows and tds)Ibm connections 5.0   installation step-by-step (windows and tds)
Ibm connections 5.0 installation step-by-step (windows and tds)
 
SAP strikes back Your SAP server now counter attacks.
SAP strikes back Your SAP server now counter attacks.SAP strikes back Your SAP server now counter attacks.
SAP strikes back Your SAP server now counter attacks.
 
Rifartek Robot Training Course - How to use ClientRobot
Rifartek Robot Training Course - How to use ClientRobotRifartek Robot Training Course - How to use ClientRobot
Rifartek Robot Training Course - How to use ClientRobot
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
 
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER COREUVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
UVM BASED REUSABLE VERIFICATION IP FOR WISHBONE COMPLIANT SPI MASTER CORE
 
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.jsJavaOne 2016 -Emerging Web App Architectures using Java and node.js
JavaOne 2016 -Emerging Web App Architectures using Java and node.js
 
ENCOR_350-401_June_2023-v1.8.pdf
ENCOR_350-401_June_2023-v1.8.pdfENCOR_350-401_June_2023-v1.8.pdf
ENCOR_350-401_June_2023-v1.8.pdf
 
Rsockets ofa12
Rsockets ofa12Rsockets ofa12
Rsockets ofa12
 
Presentation slides: "How to get 100% code coverage"
Presentation slides: "How to get 100% code coverage" Presentation slides: "How to get 100% code coverage"
Presentation slides: "How to get 100% code coverage"
 
Data Entry Operator Certification
Data Entry Operator CertificationData Entry Operator Certification
Data Entry Operator Certification
 
Tibco i process ( staffware ) online & corporate training by virtual nuggets
Tibco i process ( staffware ) online & corporate training by virtual nuggetsTibco i process ( staffware ) online & corporate training by virtual nuggets
Tibco i process ( staffware ) online & corporate training by virtual nuggets
 
Mathematically Guaranteed C and C++ Code
Mathematically Guaranteed C and C++ CodeMathematically Guaranteed C and C++ Code
Mathematically Guaranteed C and C++ Code
 
f37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.pptf37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.ppt
 
f37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.pptf37-book-intarch-pres-pt2.ppt
f37-book-intarch-pres-pt2.ppt
 
Introduction to open_sbi
Introduction to open_sbiIntroduction to open_sbi
Introduction to open_sbi
 
SystemVerilog_veriflcation and UVM for IC design.ppt
SystemVerilog_veriflcation and UVM for IC design.pptSystemVerilog_veriflcation and UVM for IC design.ppt
SystemVerilog_veriflcation and UVM for IC design.ppt
 
ECET 340 Entire Course NEW
ECET 340 Entire Course NEWECET 340 Entire Course NEW
ECET 340 Entire Course NEW
 

More from babuece

Hardware Multi-Threading
Hardware Multi-ThreadingHardware Multi-Threading
Hardware Multi-Threadingbabuece
 
Introduction to Advance Computer Architecture
Introduction to Advance Computer ArchitectureIntroduction to Advance Computer Architecture
Introduction to Advance Computer Architecturebabuece
 
Clusters and Wharehouse Scale Computers
Clusters and Wharehouse Scale ComputersClusters and Wharehouse Scale Computers
Clusters and Wharehouse Scale Computersbabuece
 
Introduction to GPU
Introduction to GPUIntroduction to GPU
Introduction to GPUbabuece
 
Shared Memory Multi Processor
Shared Memory Multi ProcessorShared Memory Multi Processor
Shared Memory Multi Processorbabuece
 
Exception | How Exceptions are Handled in MIPS architecture
Exception | How Exceptions are Handled in MIPS architectureException | How Exceptions are Handled in MIPS architecture
Exception | How Exceptions are Handled in MIPS architecturebabuece
 
Introduction to Embedded Laboratory EC 8711
Introduction to Embedded Laboratory EC 8711 Introduction to Embedded Laboratory EC 8711
Introduction to Embedded Laboratory EC 8711 babuece
 
Pipeline hazards | Structural Hazard, Data Hazard & Control Hazard
Pipeline hazards | Structural Hazard, Data Hazard & Control HazardPipeline hazards | Structural Hazard, Data Hazard & Control Hazard
Pipeline hazards | Structural Hazard, Data Hazard & Control Hazardbabuece
 
Implementation of pipelining in datapath
Implementation of pipelining in datapathImplementation of pipelining in datapath
Implementation of pipelining in datapathbabuece
 
Datapath design with control unit
Datapath design with control unitDatapath design with control unit
Datapath design with control unitbabuece
 
Introduction to datapath design
Introduction to datapath designIntroduction to datapath design
Introduction to datapath designbabuece
 
Floating point Binary Represenataion
Floating point Binary RepresenataionFloating point Binary Represenataion
Floating point Binary Represenataionbabuece
 
Introduction to floating point Arithmetic
Introduction to floating point ArithmeticIntroduction to floating point Arithmetic
Introduction to floating point Arithmeticbabuece
 
Improved version of division
Improved version of divisionImproved version of division
Improved version of divisionbabuece
 
Booth's algorithm part 3
Booth's algorithm part 3Booth's algorithm part 3
Booth's algorithm part 3babuece
 
Booth's algorithm part 1
Booth's algorithm part 1Booth's algorithm part 1
Booth's algorithm part 1babuece
 
Modified booths algorithm part 1
Modified booths algorithm part 1Modified booths algorithm part 1
Modified booths algorithm part 1babuece
 
Booth's algorithm part 2
Booth's algorithm part 2Booth's algorithm part 2
Booth's algorithm part 2babuece
 
Booth's algorithm part 4
Booth's algorithm part 4Booth's algorithm part 4
Booth's algorithm part 4babuece
 
Modified booth's algorithm Part 2
Modified booth's algorithm Part 2Modified booth's algorithm Part 2
Modified booth's algorithm Part 2babuece
 

More from babuece (20)

Hardware Multi-Threading
Hardware Multi-ThreadingHardware Multi-Threading
Hardware Multi-Threading
 
Introduction to Advance Computer Architecture
Introduction to Advance Computer ArchitectureIntroduction to Advance Computer Architecture
Introduction to Advance Computer Architecture
 
Clusters and Wharehouse Scale Computers
Clusters and Wharehouse Scale ComputersClusters and Wharehouse Scale Computers
Clusters and Wharehouse Scale Computers
 
Introduction to GPU
Introduction to GPUIntroduction to GPU
Introduction to GPU
 
Shared Memory Multi Processor
Shared Memory Multi ProcessorShared Memory Multi Processor
Shared Memory Multi Processor
 
Exception | How Exceptions are Handled in MIPS architecture
Exception | How Exceptions are Handled in MIPS architectureException | How Exceptions are Handled in MIPS architecture
Exception | How Exceptions are Handled in MIPS architecture
 
Introduction to Embedded Laboratory EC 8711
Introduction to Embedded Laboratory EC 8711 Introduction to Embedded Laboratory EC 8711
Introduction to Embedded Laboratory EC 8711
 
Pipeline hazards | Structural Hazard, Data Hazard & Control Hazard
Pipeline hazards | Structural Hazard, Data Hazard & Control HazardPipeline hazards | Structural Hazard, Data Hazard & Control Hazard
Pipeline hazards | Structural Hazard, Data Hazard & Control Hazard
 
Implementation of pipelining in datapath
Implementation of pipelining in datapathImplementation of pipelining in datapath
Implementation of pipelining in datapath
 
Datapath design with control unit
Datapath design with control unitDatapath design with control unit
Datapath design with control unit
 
Introduction to datapath design
Introduction to datapath designIntroduction to datapath design
Introduction to datapath design
 
Floating point Binary Represenataion
Floating point Binary RepresenataionFloating point Binary Represenataion
Floating point Binary Represenataion
 
Introduction to floating point Arithmetic
Introduction to floating point ArithmeticIntroduction to floating point Arithmetic
Introduction to floating point Arithmetic
 
Improved version of division
Improved version of divisionImproved version of division
Improved version of division
 
Booth's algorithm part 3
Booth's algorithm part 3Booth's algorithm part 3
Booth's algorithm part 3
 
Booth's algorithm part 1
Booth's algorithm part 1Booth's algorithm part 1
Booth's algorithm part 1
 
Modified booths algorithm part 1
Modified booths algorithm part 1Modified booths algorithm part 1
Modified booths algorithm part 1
 
Booth's algorithm part 2
Booth's algorithm part 2Booth's algorithm part 2
Booth's algorithm part 2
 
Booth's algorithm part 4
Booth's algorithm part 4Booth's algorithm part 4
Booth's algorithm part 4
 
Modified booth's algorithm Part 2
Modified booth's algorithm Part 2Modified booth's algorithm Part 2
Modified booth's algorithm Part 2
 

Recently uploaded

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17Celine George
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 

Recently uploaded (20)

How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17How to Configure Email Server in Odoo 17
How to Configure Email Server in Odoo 17
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Staff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSDStaff of Color (SOC) Retention Efforts DDSD
Staff of Color (SOC) Retention Efforts DDSD
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 

Instruction Level Parallelism | Static Multiple Issue & Dynamic Multiple Issue Processors

  • 1. INSTRUCTION LEVEL PARALLELISM (ILP) The Parallelism among instructions
  • 2. ILP IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB IF ID EX MEM WB
  • 3. Methods to increase ILP Increase the depth of pipeline to overlap more instructions Replicate the internal components of computer so that it can launch multiple instructions in every pipeline stage. - Multiple Issue
  • 4. Multiple Issue Static Multiple Issue Dynamic Multiple Issue An approach to implementing a multiple-issue processor where many decisions are made by the compiler before execution There are two major ways to implement a multiple-issue processor An approach to implementing a multiple issue processor where many decisions are made during execution by the processor. There are two primary and distinct responsibilities that must be dealt with in a multiple-issue pipeline 1. Packaging instructions into issue slots 2. Dealing with data and control hazards
  • 5. SPECULATION Based on the great idea of prediction, speculation is an approach that allows the compiler or the processor to “guess” about the properties of an instruction, so as to enable execution to begin for other instructions that may depend on the speculated instruction
  • 6. SPECULATION Software Hardware Compiler Processor The compiler usually inserts additional instructions that check the accuracy of the speculation and provide a fix-up routine to use when the speculation is incorrect The processor usually buffers the speculative results until it knows they are no longer speculative
  • 7. Static Multiple Issue Processor issue slots The positions from which instructions could issue in a given clock cycle issue packet The set of instructions that issues together in one clock cycle Packaging of instructions done with the help of Compiler Very Long Instruction Word (VLIW) Instruction 1 Instruction 2 Instruction 3 Instruction 4 Instruction 5 Instruction 6 Instruction 7
  • 8. Static Two Issue Processor
  • 9. Static Two Issue Datapath
  • 10. Simple Multiple Issue Code Scheduling
  • 11. Loop Unrolling for Multiple-Issue Pipeline for (i=0; i<4; i++) { Y[i] = A[i] * B[i]; } for (i=0; i<2; i++) { Y[i] = A[i] * B[i]; Y[i+2] = A[i+2] * B[i+2]; } for (i=0; i<100; i++) { Y[i] = A[i] * B[i]; } for (i=0; i<25; i++) { Y[i] = A[i] * B[i]; Y[i+25] = A[i+25] * B[i+25]; Y[i+50] = A[i+50] * B[i+50]; Y[i+75] = A[i+75] * B[i+75]; }
  • 12. Register Renaming Used to overcome Anti-name dependency (WAR) and Output dependency (WAW) R1 = R2 / R3 R4 = R1 * R5 R1 = R3 + R6 R3 = R1 – R4 R1 = R2 / R3 R4 = R1 * R5 R1 = R3 + R6 R3 = R1 – R4R8 R9 R9
  • 13. Dynamic Multiple Issue Processor Superscalar Processor / Superscalar An advanced pipelining technique that enables the processor to execute more than one instruction per clock cycle by selecting them during execution processor decides whether zero, one, or more instructions can issue in a given clock cycle Compiler helps to schedule the instructions to remove dependencies
  • 14. Dynamic Multiple Issue Processor Dynamic Pipeline Scheduling Hardware support for reordering the order of instruction execution so as to avoid stalls. Dynamic pipeline scheduling chooses which instructions to execute in a given clock cycle while trying to avoid hazards and stalls. lw $t0, 20($s2) addu $t1, $t0, $t2 sub $s4, $s4, $t3 slti $t5, $s4, 20 sub $s4, $s4, $t3 lw $t0, 20($s2) addu $t1, $t0, $t2 slti $t5, $s4, 20