SlideShare ist ein Scribd-Unternehmen logo
1 von 23
ComputerComputer
ArchitectureArchitecture
Instruction-Level Parallel
Processors
Improve CPU performance by
• increasing clock rates
• (CPU running at even higher frequencies.)
• increasing the number of instructions to be executed in parallel
• (executing 6-10 instructions at the same time)
• What is the limit for these?
Pipeline (assembly line)
Result of pipeline (e.g.)
• Very long instruction word (VLIW) refers to processor
architectures designed to exploit instruction level
parallelism (ILP).
• VLIW processor allows programs to explicitly specify
instructions to execute at the same time, concurrently, in
parallel
VLIW (very long instruction
word,1024 bits!)
VLIW (very long instruction
word,1024 bits!)
Superscalar (sequential stream of
instructions)
superscalar processor is a CPU that
implements a form of parallelism called
instruction-level parallelism within a single
processor. It therefore allows for more
throughput (the number of instructions that
can be executed in a unit of time) than would
otherwise be possible at a given clock rate
Scalar Vs Superscalar
•In contrast to a scalar processor that can execute at
most one single instruction per clock cycle
• superscalar processor can execute more than one
instruction during a clock cycle by simultaneously
dispatching multiple instructions to different
execution units on the processor.
Superscalar (sequential stream of
instructions)
Flynn's taxonomy,
From Sequential instructions
to parallel execution
• Dependencies between instructions
• Instruction scheduling
• Preserving sequential consistency
Dependencies between instructions
Instructions often depend on each other in such a way that a particular
instruction cannot be executed until a preceding instruction or even two or
three preceding instructions have been executed.
1 Data dependencies
2 Control dependencies
3 Resource dependencies
Data dependencies
• Read after Write (RAW)
• Write after Read (WAR)
• Write after Write (WAW)
• Recurrences
Data dependencies in straight-line code
(RAW)
•RAW dependencies
•i1: load r1, a
•r2: add r2, r1, r1
•flow dependencies
•true dependencies
•cannot be abandoned
Data dependencies in straight-line code
(WAR)
•WAR dependencies
• i1: mul r1, r2, r3
• r2: add r2, r4, r5
•anti-dependencies
•false dependencies
•can be eliminated through register renaming
• i1: mul r1, r2, r3
• r2: add r6, r4, r5
• by using compiler or ILP-processor
Data dependencies in straight-line code
(WAW)
•WAW dependencies
• i1: mul r1, r2, r3
• r2: add r1, r4, r5
•output dependencies
•false dependencies
•can be eliminated through register renaming
• i1: mul r1, r2, r3
• r2: add r6, r4, r5
• by using compiler or ILP-processor
Data dependencies in loops
(recurrences)
for (int i=2; i<10; i++) {
x[i] = a*x[i-1] + b
}
• cannot be executed in parallel
S1. if (a == b)
S2. a = a + b
S3. b = a + b
Data dependencies in conditional
statement
Data dependency graphs
• i1: load r1, a;
• i2: load r2, b;
• i3: add r3, r1, r2; RAW -> δt
• i4: mul r1, r2, r4; WAR -> δa
• i5: div r1, r2, r4; WAW -> δo
i1 i2
i3
i4
i5
δt δt
δa
δo
Control dependencies
mul r1, r2, r3
jz zproc
:
zproc: load r1, x
:
•actual path of execution depends on the outcome
of multiplication
•impose dependencies on the logical subsequent
instructions
Control Dependency Graph
Resource dependencies
•An instruction is resource-dependent on a
previously issued instruction if it requires a
hardware resource which is still being used by a
previously issued instruction.
•e.g.
• div r1, r2, r3
• div r4, r2, r5

Weitere ähnliche Inhalte

Was ist angesagt?

ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
Paul Brebner
 
Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...
Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...
Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...
Spark Summit
 

Was ist angesagt? (20)

Kafka for Microservices – You absolutely need Avro Schemas! | Gerardo Gutierr...
Kafka for Microservices – You absolutely need Avro Schemas! | Gerardo Gutierr...Kafka for Microservices – You absolutely need Avro Schemas! | Gerardo Gutierr...
Kafka for Microservices – You absolutely need Avro Schemas! | Gerardo Gutierr...
 
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...ApacheCon2019 Talk: Kafka, Cassandra and Kubernetesat Scale – Real-time Ano...
ApacheCon2019 Talk: Kafka, Cassandra and Kubernetes at Scale – Real-time Ano...
 
Apache kafka
Apache kafkaApache kafka
Apache kafka
 
WSO2Con USA 2015: Deployment Patterns and Capacity Planning
WSO2Con USA 2015: Deployment Patterns and Capacity PlanningWSO2Con USA 2015: Deployment Patterns and Capacity Planning
WSO2Con USA 2015: Deployment Patterns and Capacity Planning
 
Streaming and Messaging
Streaming and MessagingStreaming and Messaging
Streaming and Messaging
 
Topic and schema management-meetupberlin
Topic and schema management-meetupberlinTopic and schema management-meetupberlin
Topic and schema management-meetupberlin
 
How to manage large amounts of data with akka streams
How to manage large amounts of data with akka streamsHow to manage large amounts of data with akka streams
How to manage large amounts of data with akka streams
 
Serverless log analytics with Amazon Kinesis
Serverless log analytics with Amazon KinesisServerless log analytics with Amazon Kinesis
Serverless log analytics with Amazon Kinesis
 
Deploying Kafka at Dropbox, Mark Smith, Sean Fellows
Deploying Kafka at Dropbox, Mark Smith, Sean FellowsDeploying Kafka at Dropbox, Mark Smith, Sean Fellows
Deploying Kafka at Dropbox, Mark Smith, Sean Fellows
 
Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...
Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...
Reactive Streams, linking Reactive Application to Spark Streaming by Luc Bour...
 
Kafka Summit NYC 2017 Introduction to Kafka Streams with a Real-life Example
Kafka Summit NYC 2017 Introduction to Kafka Streams with a Real-life ExampleKafka Summit NYC 2017 Introduction to Kafka Streams with a Real-life Example
Kafka Summit NYC 2017 Introduction to Kafka Streams with a Real-life Example
 
Building your own Distributed System The easy way - Cassandra Summit EU 2014
Building your own Distributed System The easy way - Cassandra Summit EU 2014Building your own Distributed System The easy way - Cassandra Summit EU 2014
Building your own Distributed System The easy way - Cassandra Summit EU 2014
 
Vitalii Korzh - "Exciting Migrations"
Vitalii Korzh - "Exciting Migrations"Vitalii Korzh - "Exciting Migrations"
Vitalii Korzh - "Exciting Migrations"
 
Openzipkin conf: Zipkin at Yelp
Openzipkin conf: Zipkin at YelpOpenzipkin conf: Zipkin at Yelp
Openzipkin conf: Zipkin at Yelp
 
KELK Stack on AWS
KELK Stack on AWSKELK Stack on AWS
KELK Stack on AWS
 
How to Lock Down Apache Kafka and Keep Your Streams Safe
How to Lock Down Apache Kafka and Keep Your Streams SafeHow to Lock Down Apache Kafka and Keep Your Streams Safe
How to Lock Down Apache Kafka and Keep Your Streams Safe
 
The Many Faces of Apache Kafka: Leveraging real-time data at scale
The Many Faces of Apache Kafka: Leveraging real-time data at scaleThe Many Faces of Apache Kafka: Leveraging real-time data at scale
The Many Faces of Apache Kafka: Leveraging real-time data at scale
 
Apache Kafka® at Dropbox
Apache Kafka® at DropboxApache Kafka® at Dropbox
Apache Kafka® at Dropbox
 
SignalFx Kafka Consumer Optimization
SignalFx Kafka Consumer OptimizationSignalFx Kafka Consumer Optimization
SignalFx Kafka Consumer Optimization
 
Kafka Streams: The Stream Processing Engine of Apache Kafka
Kafka Streams: The Stream Processing Engine of Apache KafkaKafka Streams: The Stream Processing Engine of Apache Kafka
Kafka Streams: The Stream Processing Engine of Apache Kafka
 

Ähnlich wie Computer Architecture Instruction-Level paraallel processors

Ähnlich wie Computer Architecture Instruction-Level paraallel processors (20)

2. ILP Processors.ppt
2. ILP Processors.ppt2. ILP Processors.ppt
2. ILP Processors.ppt
 
14 superscalar
14 superscalar14 superscalar
14 superscalar
 
VLIW(Very Long Instruction Word)
VLIW(Very Long Instruction Word)VLIW(Very Long Instruction Word)
VLIW(Very Long Instruction Word)
 
13 superscalar
13 superscalar13 superscalar
13 superscalar
 
Lec1 final
Lec1 finalLec1 final
Lec1 final
 
13_Superscalar.ppt
13_Superscalar.ppt13_Superscalar.ppt
13_Superscalar.ppt
 
Instruction Level Parallelism and Superscalar Processors
Instruction Level Parallelism and Superscalar ProcessorsInstruction Level Parallelism and Superscalar Processors
Instruction Level Parallelism and Superscalar Processors
 
The Challenges facing Libraries and Imperative Languages from Massively Paral...
The Challenges facing Libraries and Imperative Languages from Massively Paral...The Challenges facing Libraries and Imperative Languages from Massively Paral...
The Challenges facing Libraries and Imperative Languages from Massively Paral...
 
Superscalar processor
Superscalar processorSuperscalar processor
Superscalar processor
 
Lect 1.pptx
Lect 1.pptxLect 1.pptx
Lect 1.pptx
 
Optimization Techniques
Optimization TechniquesOptimization Techniques
Optimization Techniques
 
Load Balancing
Load BalancingLoad Balancing
Load Balancing
 
Instruction Level Parallelism (ILP) Limitations
Instruction Level Parallelism (ILP) LimitationsInstruction Level Parallelism (ILP) Limitations
Instruction Level Parallelism (ILP) Limitations
 
13 risc
13 risc13 risc
13 risc
 
AP4R on RubyKaigi2007 (English only)
AP4R on RubyKaigi2007 (English only)AP4R on RubyKaigi2007 (English only)
AP4R on RubyKaigi2007 (English only)
 
14 superscalar
14 superscalar14 superscalar
14 superscalar
 
Cassandra Day SV 2014: Spark, Shark, and Apache Cassandra
Cassandra Day SV 2014: Spark, Shark, and Apache CassandraCassandra Day SV 2014: Spark, Shark, and Apache Cassandra
Cassandra Day SV 2014: Spark, Shark, and Apache Cassandra
 
Network Functions Virtualization and CloudStack
Network Functions Virtualization and CloudStackNetwork Functions Virtualization and CloudStack
Network Functions Virtualization and CloudStack
 
Intro to Apache Apex @ Women in Big Data
Intro to Apache Apex @ Women in Big DataIntro to Apache Apex @ Women in Big Data
Intro to Apache Apex @ Women in Big Data
 
Vliw or epic
Vliw or epicVliw or epic
Vliw or epic
 

Mehr von Haris456

Mehr von Haris456 (11)

Hazards Computer Architecture
Hazards Computer ArchitectureHazards Computer Architecture
Hazards Computer Architecture
 
Pipelining of Processors Computer Architecture
Pipelining of  Processors Computer ArchitecturePipelining of  Processors Computer Architecture
Pipelining of Processors Computer Architecture
 
Computer Architecture Vector Computer
Computer Architecture Vector ComputerComputer Architecture Vector Computer
Computer Architecture Vector Computer
 
Multithreading computer architecture
 Multithreading computer architecture  Multithreading computer architecture
Multithreading computer architecture
 
Graphics processing uni computer archiecture
Graphics processing uni computer archiectureGraphics processing uni computer archiecture
Graphics processing uni computer archiecture
 
Computer Memory Hierarchy Computer Architecture
Computer Memory Hierarchy Computer ArchitectureComputer Memory Hierarchy Computer Architecture
Computer Memory Hierarchy Computer Architecture
 
Pipeline Computer Architecture
Pipeline Computer ArchitecturePipeline Computer Architecture
Pipeline Computer Architecture
 
Addressing mode Computer Architecture
Addressing mode  Computer ArchitectureAddressing mode  Computer Architecture
Addressing mode Computer Architecture
 
Ca lecture 03
Ca lecture 03Ca lecture 03
Ca lecture 03
 
Instruction Set Architecture
Instruction  Set ArchitectureInstruction  Set Architecture
Instruction Set Architecture
 
Computer Architecture
Computer ArchitectureComputer Architecture
Computer Architecture
 

Kürzlich hochgeladen

%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
masabamasaba
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
masabamasaba
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 

Kürzlich hochgeladen (20)

WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
%+27788225528 love spells in Huntington Beach Psychic Readings, Attraction sp...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto%in Soweto+277-882-255-28 abortion pills for sale in soweto
%in Soweto+277-882-255-28 abortion pills for sale in soweto
 
WSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - KeynoteWSO2Con204 - Hard Rock Presentation - Keynote
WSO2Con204 - Hard Rock Presentation - Keynote
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With SimplicityWSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
WSO2Con2024 - Enabling Transactional System's Exponential Growth With Simplicity
 

Computer Architecture Instruction-Level paraallel processors

  • 2. Improve CPU performance by • increasing clock rates • (CPU running at even higher frequencies.) • increasing the number of instructions to be executed in parallel • (executing 6-10 instructions at the same time) • What is the limit for these?
  • 5. • Very long instruction word (VLIW) refers to processor architectures designed to exploit instruction level parallelism (ILP). • VLIW processor allows programs to explicitly specify instructions to execute at the same time, concurrently, in parallel VLIW (very long instruction word,1024 bits!)
  • 6. VLIW (very long instruction word,1024 bits!)
  • 7. Superscalar (sequential stream of instructions) superscalar processor is a CPU that implements a form of parallelism called instruction-level parallelism within a single processor. It therefore allows for more throughput (the number of instructions that can be executed in a unit of time) than would otherwise be possible at a given clock rate
  • 8. Scalar Vs Superscalar •In contrast to a scalar processor that can execute at most one single instruction per clock cycle • superscalar processor can execute more than one instruction during a clock cycle by simultaneously dispatching multiple instructions to different execution units on the processor.
  • 10.
  • 12. From Sequential instructions to parallel execution • Dependencies between instructions • Instruction scheduling • Preserving sequential consistency
  • 13. Dependencies between instructions Instructions often depend on each other in such a way that a particular instruction cannot be executed until a preceding instruction or even two or three preceding instructions have been executed. 1 Data dependencies 2 Control dependencies 3 Resource dependencies
  • 14. Data dependencies • Read after Write (RAW) • Write after Read (WAR) • Write after Write (WAW) • Recurrences
  • 15. Data dependencies in straight-line code (RAW) •RAW dependencies •i1: load r1, a •r2: add r2, r1, r1 •flow dependencies •true dependencies •cannot be abandoned
  • 16. Data dependencies in straight-line code (WAR) •WAR dependencies • i1: mul r1, r2, r3 • r2: add r2, r4, r5 •anti-dependencies •false dependencies •can be eliminated through register renaming • i1: mul r1, r2, r3 • r2: add r6, r4, r5 • by using compiler or ILP-processor
  • 17. Data dependencies in straight-line code (WAW) •WAW dependencies • i1: mul r1, r2, r3 • r2: add r1, r4, r5 •output dependencies •false dependencies •can be eliminated through register renaming • i1: mul r1, r2, r3 • r2: add r6, r4, r5 • by using compiler or ILP-processor
  • 18.
  • 19. Data dependencies in loops (recurrences) for (int i=2; i<10; i++) { x[i] = a*x[i-1] + b } • cannot be executed in parallel S1. if (a == b) S2. a = a + b S3. b = a + b Data dependencies in conditional statement
  • 20. Data dependency graphs • i1: load r1, a; • i2: load r2, b; • i3: add r3, r1, r2; RAW -> δt • i4: mul r1, r2, r4; WAR -> δa • i5: div r1, r2, r4; WAW -> δo i1 i2 i3 i4 i5 δt δt δa δo
  • 21. Control dependencies mul r1, r2, r3 jz zproc : zproc: load r1, x : •actual path of execution depends on the outcome of multiplication •impose dependencies on the logical subsequent instructions
  • 23. Resource dependencies •An instruction is resource-dependent on a previously issued instruction if it requires a hardware resource which is still being used by a previously issued instruction. •e.g. • div r1, r2, r3 • div r4, r2, r5