SlideShare a Scribd company logo
1 of 19
Bus Based
Multiprocessors
1
First of all, what is a bus?
 In computer architecture, a bus is a communication
system that transfers data between components
inside a computer, or between computers.
 This expression covers all related hardware
components (wire, optical fiber, etc.) and
software, including communication protocols.
2
So, what is bus-based multiprocessor?
 A simple but practical way to build a
multiprocessor is to base it on the bus to
which more than one CPU is connected.
 In figure (a), we see a system with three
CPUs and a memory shared among all of them.
3
How do they work with memory?
 When any of the CPUs wants to read a word from the memory, it
puts the address of the word it wants on the bus and puts a
signal on a bus control line indicating that it wants to do read.
 When the memory has fetched the requested word, it puts the
word on the bus and asserts another control line to announce
that it is ready.
 The CPU then reads the word.Writes work in an analogous way.
4
What if access at the same time occurs?
 To prevent two or more CPUs from trying to access memory at
the same time, some kind of bus arbitration is needed.Various
schemes are in use.
 For example, to acquire bus, a CPU might first have to request it
by asserting a special request line. Only after receiving
permission would it be allowed to use the bus.
 The granting of this permission can be done in centralized way,
using bus arbitration device, or in a decentralized way, with first
requesting CPU along the bus winning any conflict.
5
Single bus causes overload
 The disadvantage of having a single bus is that with as few as three or four CPUs
the bus is likely to become overloaded.
 The usual approach taken to reduce the bus load
is to equip each CPU with a snooping cache. (so
called because it snoops on the bus.
 These caches have been a subject of a large amount of research over the years
and the common point of that researches was to make sure that different caches
do not contain different values for the same memory location.
6
An common way to solve overloading
 One particulary simple and common protocol is called write-through.
When CPU first reads a word from memory, the word is fetched over
the bus and is stored in the cache of the CPU making the request.
 If that word is needed again later, the CPU can take it from the cache
without making a memory request, thus reducing bus traffic.
7
An common way to solve overloading
 These two cases, read miss (word not cached) and read hit (word
cached) are shown in table below.
 In simple systems, only the word requested is cached, but in most, a
block of words of say, 16 or 32 words, is transferred and cached on the
initial access and kept for possible future use.
Event Action taken by a cache in response to its own
CPU’s operation
Action taken by a cache to a
remote CPU’s operation
Read miss Fetch data from memory and store in cache (No action)
Read hit Fetch data from local cache (No action)
8
An common way to solve overloading
 Each CPU dos its caching independent of the others. Consequently, it
is possible for a particular word to be cached at two or more CPUs at
the same time.
 Now let us consider what happens when a write is done. If no CPU has
the word being written in its cache, the memory is just updated, as if
caching were not being used.
 This operation requires a normal bus cycle. If the CPU doing the write
has the only copy of the word, its cache is updated and memory is
updated over the bus as well.
9
So, the problem?
 The trouble arises when a CPU wants to write a word that two or
more CPUs have in their caches. If the word is currently in the cache
of the CPU doing the write, the cache entry is updated.
 Whether it is or not, it is also written to the bus to update memory. All
the other caches see the write (because they are snooping on the bus)
and check to see if they are also holding the word being modified. If
so, they invalidate their cache entries, so that after the write
completes, memory is up-to-date and only one machine has the word
in its cache.
10
An alternative way (invalidate vs. update)
 An alternative to invalidating other cache entries is to update all of
them. Updating is slower than invalidating in most cases, however.
 Invalidating requires supplying just the address to be invalidated,
whereas updating needs to provide the new cache entry as well. If
these two items must be presented on the bus consecutively, extra
cycles will be required.
 Even if it is possible to put an address and a data word on the bus
simultaneously, if the cache block size is more than one word,
multiple bus cycles will be needed to update the entire block.The
issue of invalidate vs. update occurs in all cache protocols and also in
DSM systems.
11
The summarize of the write-through protocol
 The complete protocol is summarized in figure below.The first
column lists the four basic events that can happen.The second one
tells what a cache does in response to its own CPU's actions.The third
one tells what happens when a cache sees (by snooping) that
a different CPU has had a hit or miss.The only time cache S (the
snooper) must do something is when it sees that another CPU has
written a word that S has cached (a write hit from 5"s point of view).
The action is for S to delete the word from its cache.
12
Event Action taken by a cache in response to its own
CPU’s operation
Action taken by a cache to a
remote CPU’s operation
Read miss Fetch data from memory and store in cache (No action)
Read hit Fetch data from local cache (No action)
Write miss Update data in memory and store in cache (No action)
Write hit Update memory and cache Invalidate cache entry
The disadvantage of write-through
protocol
 The write-through protocol is simple to understand and implement
but has the serious disadvantage that all writes use the bus. While the
protocol certainly reduces bus traffic to some extent, the number of
CPUs that can be attached to a single bus is still too small to permit
large-scale multiprocessors to be built using it.
13
A different approach: write once protocol
 Fortunately, for many actual programs, once a CPU has written a
word, that CPU is likely to need the word again, and it is unlikely that
another CPU will use the word quickly.This situation suggests that if
the CPU using the word could somehow be given temporary
"ownership" of the word, it could avoid having to update memory on
subsequent writes until a different CPU exhibited interest in the word.
Such cache protocols exist. One of them is called write once. However,
this protocol was designed to work with an existing bus and was
therefore more complicated than is strictly necessary. Below we will
describe a simplified version of it, which is typical of all ownership
protocols.
14
A deeply review
 Our protocol manages cache blocks, each of which can be in one of
the following three states:
1. INVALID —This cache block does not contain valid data.
2. CLEAN — Memory is up-to-date; the block may be in other caches.
3. DIRTY — Memory is incorrect; no other cache holds the block.
 The basic idea is that a word that is being read by multiple CPUs is
allowed to be present in all their caches. A word that is being heavily
written by only one machine is kept in its cache and not written back
to memory on every write to reduce bus traffic.
15
Example
 To simplicity, we will assume that each cache block consist of a single
word. (example of how a cache ownership protocol works.)
16
Example
 Many small multiprocessors use a cache consistency protocol similar
to this one, often with small variations. It has three important
properties:
1. Consistency is achieved by having all the caches do bus snooping.
2. The protocol is built into the memory management unit.
3. The entire algorithm is performed in well under a memory cycle.
17
References
 https://en.wikipedia.org/wiki/Bus_(computing)
 https://www.e-reading.club/chapter.php/143358/205/Tanenbaum_-
_Distributed_operating_systems.html
 Download & view slide on : https://bit.ly/bbmcen347
18
Thanks for listening
 Bilal Coşkun
 Orhan Çelik
 MustafaYumurtacı
19

More Related Content

What's hot

3.Medium Access Control
3.Medium Access Control3.Medium Access Control
3.Medium Access ControlSonali Chauhan
 
Evaluation of morden computer & system attributes in ACA
Evaluation of morden computer &  system attributes in ACAEvaluation of morden computer &  system attributes in ACA
Evaluation of morden computer & system attributes in ACAPankaj Kumar Jain
 
The Google File System (GFS)
The Google File System (GFS)The Google File System (GFS)
The Google File System (GFS)Romain Jacotin
 
Interleaved memory
Interleaved memoryInterleaved memory
Interleaved memoryashishgy
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memoryMazin Alwaaly
 
Presentation on Shared Memory Parallel Programming
Presentation on Shared Memory Parallel ProgrammingPresentation on Shared Memory Parallel Programming
Presentation on Shared Memory Parallel ProgrammingVengada Karthik Rangaraju
 
management of distributed transactions
management of distributed transactionsmanagement of distributed transactions
management of distributed transactionsNilu Desai
 
Memory allocation for real time operating system
Memory allocation for real time operating systemMemory allocation for real time operating system
Memory allocation for real time operating systemAsma'a Lafi
 
Cache coherence
Cache coherenceCache coherence
Cache coherenceEmployee
 
Computer architecture cache memory
Computer architecture cache memoryComputer architecture cache memory
Computer architecture cache memoryMazin Alwaaly
 
Chapter 13 - I/O Systems
Chapter 13 - I/O SystemsChapter 13 - I/O Systems
Chapter 13 - I/O SystemsWayne Jones Jnr
 
Processor Organization and Architecture
Processor Organization and ArchitectureProcessor Organization and Architecture
Processor Organization and ArchitectureVinit Raut
 
Virtual memory presentation
Virtual memory presentationVirtual memory presentation
Virtual memory presentationRanjeet Kumar
 
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
ADVANCED COMPUTER ARCHITECTUREAND PARALLEL PROCESSINGADVANCED COMPUTER ARCHITECTUREAND PARALLEL PROCESSING
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING Zena Abo-Altaheen
 
Comparison of Amoeba, Mach & Chorus: DOS
Comparison of Amoeba, Mach & Chorus: DOSComparison of Amoeba, Mach & Chorus: DOS
Comparison of Amoeba, Mach & Chorus: DOSEr. Shiva K. Shrestha
 

What's hot (20)

Virtual Memory
Virtual MemoryVirtual Memory
Virtual Memory
 
6.Distributed Operating Systems
6.Distributed Operating Systems6.Distributed Operating Systems
6.Distributed Operating Systems
 
3.Medium Access Control
3.Medium Access Control3.Medium Access Control
3.Medium Access Control
 
Evaluation of morden computer & system attributes in ACA
Evaluation of morden computer &  system attributes in ACAEvaluation of morden computer &  system attributes in ACA
Evaluation of morden computer & system attributes in ACA
 
Memory Management
Memory ManagementMemory Management
Memory Management
 
The Google File System (GFS)
The Google File System (GFS)The Google File System (GFS)
The Google File System (GFS)
 
Interleaved memory
Interleaved memoryInterleaved memory
Interleaved memory
 
Computer architecture virtual memory
Computer architecture virtual memoryComputer architecture virtual memory
Computer architecture virtual memory
 
Cache memory
Cache memoryCache memory
Cache memory
 
Distributed shared memory ch 5
Distributed shared memory ch 5Distributed shared memory ch 5
Distributed shared memory ch 5
 
Presentation on Shared Memory Parallel Programming
Presentation on Shared Memory Parallel ProgrammingPresentation on Shared Memory Parallel Programming
Presentation on Shared Memory Parallel Programming
 
management of distributed transactions
management of distributed transactionsmanagement of distributed transactions
management of distributed transactions
 
Memory allocation for real time operating system
Memory allocation for real time operating systemMemory allocation for real time operating system
Memory allocation for real time operating system
 
Cache coherence
Cache coherenceCache coherence
Cache coherence
 
Computer architecture cache memory
Computer architecture cache memoryComputer architecture cache memory
Computer architecture cache memory
 
Chapter 13 - I/O Systems
Chapter 13 - I/O SystemsChapter 13 - I/O Systems
Chapter 13 - I/O Systems
 
Processor Organization and Architecture
Processor Organization and ArchitectureProcessor Organization and Architecture
Processor Organization and Architecture
 
Virtual memory presentation
Virtual memory presentationVirtual memory presentation
Virtual memory presentation
 
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
ADVANCED COMPUTER ARCHITECTUREAND PARALLEL PROCESSINGADVANCED COMPUTER ARCHITECTUREAND PARALLEL PROCESSING
ADVANCED COMPUTER ARCHITECTURE AND PARALLEL PROCESSING
 
Comparison of Amoeba, Mach & Chorus: DOS
Comparison of Amoeba, Mach & Chorus: DOSComparison of Amoeba, Mach & Chorus: DOS
Comparison of Amoeba, Mach & Chorus: DOS
 

Similar to Bus Based Multiprocessors v2

Cache memory and cache
Cache memory and cacheCache memory and cache
Cache memory and cacheVISHAL DONGA
 
Multiprocessor Scheduling
Multiprocessor SchedulingMultiprocessor Scheduling
Multiprocessor SchedulingoDesk
 
PARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTES
PARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTESPARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTES
PARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTESsuthi
 
Operating Systems - memory management
Operating Systems - memory managementOperating Systems - memory management
Operating Systems - memory managementMukesh Chinta
 
Memory consistency models
Memory consistency modelsMemory consistency models
Memory consistency modelspalani kumar
 
Comparative study on Cache Coherence Protocols
Comparative study on Cache Coherence ProtocolsComparative study on Cache Coherence Protocols
Comparative study on Cache Coherence Protocolsiosrjce
 
Summary of Simultaneous Multithreading: Maximizing On-Chip Parallelism
Summary of Simultaneous Multithreading: Maximizing On-Chip ParallelismSummary of Simultaneous Multithreading: Maximizing On-Chip Parallelism
Summary of Simultaneous Multithreading: Maximizing On-Chip ParallelismFarwa Ansari
 

Similar to Bus Based Multiprocessors v2 (20)

Cache memory and cache
Cache memory and cacheCache memory and cache
Cache memory and cache
 
Cache memory
Cache memoryCache memory
Cache memory
 
Dos final ppt
Dos final pptDos final ppt
Dos final ppt
 
Dos final ppt
Dos final pptDos final ppt
Dos final ppt
 
Cache memory presentation
Cache memory presentationCache memory presentation
Cache memory presentation
 
Multiprocessor Scheduling
Multiprocessor SchedulingMultiprocessor Scheduling
Multiprocessor Scheduling
 
Dosass2
Dosass2Dosass2
Dosass2
 
Linux%20 memory%20management
Linux%20 memory%20managementLinux%20 memory%20management
Linux%20 memory%20management
 
PARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTES
PARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTESPARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTES
PARALLEL ARCHITECTURE AND COMPUTING - SHORT NOTES
 
Linux Internals - Interview essentials 3.0
Linux Internals - Interview essentials 3.0Linux Internals - Interview essentials 3.0
Linux Internals - Interview essentials 3.0
 
Operating Systems - memory management
Operating Systems - memory managementOperating Systems - memory management
Operating Systems - memory management
 
Memory consistency models
Memory consistency modelsMemory consistency models
Memory consistency models
 
Comparative study on Cache Coherence Protocols
Comparative study on Cache Coherence ProtocolsComparative study on Cache Coherence Protocols
Comparative study on Cache Coherence Protocols
 
K017317175
K017317175K017317175
K017317175
 
Chapter 10
Chapter 10Chapter 10
Chapter 10
 
Computer architecture
Computer architectureComputer architecture
Computer architecture
 
Oversimplified CA
Oversimplified CAOversimplified CA
Oversimplified CA
 
Summary of Simultaneous Multithreading: Maximizing On-Chip Parallelism
Summary of Simultaneous Multithreading: Maximizing On-Chip ParallelismSummary of Simultaneous Multithreading: Maximizing On-Chip Parallelism
Summary of Simultaneous Multithreading: Maximizing On-Chip Parallelism
 
Compiler design
Compiler designCompiler design
Compiler design
 
Cache memory
Cache memoryCache memory
Cache memory
 

Recently uploaded

Presentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvfPresentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvfchapmanellie27
 
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /WhatsappsBeautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsappssapnasaifi408
 
vip Model Basti Call Girls 9999965857 Call or WhatsApp Now Book
vip Model Basti Call Girls 9999965857 Call or WhatsApp Now Bookvip Model Basti Call Girls 9999965857 Call or WhatsApp Now Book
vip Model Basti Call Girls 9999965857 Call or WhatsApp Now Bookmanojkuma9823
 
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证gwhohjj
 
(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一
(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一
(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一Fi sss
 
萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程1k98h0e1
 
定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一
定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一
定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一ga6c6bdl
 
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...nagunakhan
 
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一ga6c6bdl
 
Call Girls In Munirka>༒9599632723 Incall_OutCall Available
Call Girls In Munirka>༒9599632723 Incall_OutCall AvailableCall Girls In Munirka>༒9599632723 Incall_OutCall Available
Call Girls In Munirka>༒9599632723 Incall_OutCall AvailableCall Girls in Delhi
 
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一zul5vf0pq
 
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,Pooja Nehwal
 
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查awo24iot
 
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一ga6c6bdl
 
《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...
《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...
《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...ur8mqw8e
 
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
 
(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...ranjana rawat
 
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service SaharanpurVIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service SaharanpurSuhani Kapoor
 

Recently uploaded (20)

Presentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvfPresentation.pptxjnfoigneoifnvoeifnvklfnvf
Presentation.pptxjnfoigneoifnvoeifnvklfnvf
 
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /WhatsappsBeautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
Beautiful Sapna Call Girls CP 9711199012 ☎ Call /Whatsapps
 
vip Model Basti Call Girls 9999965857 Call or WhatsApp Now Book
vip Model Basti Call Girls 9999965857 Call or WhatsApp Now Bookvip Model Basti Call Girls 9999965857 Call or WhatsApp Now Book
vip Model Basti Call Girls 9999965857 Call or WhatsApp Now Book
 
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
原版1:1复刻斯坦福大学毕业证Stanford毕业证留信学历认证
 
(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一
(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一
(办理学位证)加州州立大学北岭分校毕业证成绩单原版一比一
 
young call girls in Khanpur,🔝 9953056974 🔝 escort Service
young call girls in  Khanpur,🔝 9953056974 🔝 escort Serviceyoung call girls in  Khanpur,🔝 9953056974 🔝 escort Service
young call girls in Khanpur,🔝 9953056974 🔝 escort Service
 
萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程萨斯喀彻温大学毕业证学位证成绩单-购买流程
萨斯喀彻温大学毕业证学位证成绩单-购买流程
 
定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一
定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一
定制宾州州立大学毕业证(PSU毕业证) 成绩单留信学历认证原版一比一
 
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
 
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
Slim Call Girls Service Badshah Nagar * 9548273370 Naughty Call Girls Service...
 
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
如何办理伦敦大学伯贝克学院毕业证(BBK毕业证) 成绩单留信学历认证原版一比一
 
Call Girls In Munirka>༒9599632723 Incall_OutCall Available
Call Girls In Munirka>༒9599632723 Incall_OutCall AvailableCall Girls In Munirka>༒9599632723 Incall_OutCall Available
Call Girls In Munirka>༒9599632723 Incall_OutCall Available
 
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
定制加拿大滑铁卢大学毕业证(Waterloo毕业证书)成绩单(文凭)原版一比一
 
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
Call Girls In Andheri East Call 9892124323 Book Hot And Sexy Girls,
 
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
如何办理(Adelaide毕业证)阿德莱德大学毕业证成绩单Adelaide学历认证真实可查
 
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
如何办理(NUS毕业证书)新加坡国立大学毕业证成绩单留信学历认证原版一比一
 
《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...
《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...
《伯明翰城市大学毕业证成绩单购买》学历证书学位证书区别《复刻原版1:1伯明翰城市大学毕业证书|修改BCU成绩单PDF版》Q微信741003700《BCU学...
 
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
 
(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
(ANIKA) Wanwadi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Esc...
 
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service SaharanpurVIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
VIP Call Girl Saharanpur Aashi 8250192130 Independent Escort Service Saharanpur
 

Bus Based Multiprocessors v2

  • 2. First of all, what is a bus?  In computer architecture, a bus is a communication system that transfers data between components inside a computer, or between computers.  This expression covers all related hardware components (wire, optical fiber, etc.) and software, including communication protocols. 2
  • 3. So, what is bus-based multiprocessor?  A simple but practical way to build a multiprocessor is to base it on the bus to which more than one CPU is connected.  In figure (a), we see a system with three CPUs and a memory shared among all of them. 3
  • 4. How do they work with memory?  When any of the CPUs wants to read a word from the memory, it puts the address of the word it wants on the bus and puts a signal on a bus control line indicating that it wants to do read.  When the memory has fetched the requested word, it puts the word on the bus and asserts another control line to announce that it is ready.  The CPU then reads the word.Writes work in an analogous way. 4
  • 5. What if access at the same time occurs?  To prevent two or more CPUs from trying to access memory at the same time, some kind of bus arbitration is needed.Various schemes are in use.  For example, to acquire bus, a CPU might first have to request it by asserting a special request line. Only after receiving permission would it be allowed to use the bus.  The granting of this permission can be done in centralized way, using bus arbitration device, or in a decentralized way, with first requesting CPU along the bus winning any conflict. 5
  • 6. Single bus causes overload  The disadvantage of having a single bus is that with as few as three or four CPUs the bus is likely to become overloaded.  The usual approach taken to reduce the bus load is to equip each CPU with a snooping cache. (so called because it snoops on the bus.  These caches have been a subject of a large amount of research over the years and the common point of that researches was to make sure that different caches do not contain different values for the same memory location. 6
  • 7. An common way to solve overloading  One particulary simple and common protocol is called write-through. When CPU first reads a word from memory, the word is fetched over the bus and is stored in the cache of the CPU making the request.  If that word is needed again later, the CPU can take it from the cache without making a memory request, thus reducing bus traffic. 7
  • 8. An common way to solve overloading  These two cases, read miss (word not cached) and read hit (word cached) are shown in table below.  In simple systems, only the word requested is cached, but in most, a block of words of say, 16 or 32 words, is transferred and cached on the initial access and kept for possible future use. Event Action taken by a cache in response to its own CPU’s operation Action taken by a cache to a remote CPU’s operation Read miss Fetch data from memory and store in cache (No action) Read hit Fetch data from local cache (No action) 8
  • 9. An common way to solve overloading  Each CPU dos its caching independent of the others. Consequently, it is possible for a particular word to be cached at two or more CPUs at the same time.  Now let us consider what happens when a write is done. If no CPU has the word being written in its cache, the memory is just updated, as if caching were not being used.  This operation requires a normal bus cycle. If the CPU doing the write has the only copy of the word, its cache is updated and memory is updated over the bus as well. 9
  • 10. So, the problem?  The trouble arises when a CPU wants to write a word that two or more CPUs have in their caches. If the word is currently in the cache of the CPU doing the write, the cache entry is updated.  Whether it is or not, it is also written to the bus to update memory. All the other caches see the write (because they are snooping on the bus) and check to see if they are also holding the word being modified. If so, they invalidate their cache entries, so that after the write completes, memory is up-to-date and only one machine has the word in its cache. 10
  • 11. An alternative way (invalidate vs. update)  An alternative to invalidating other cache entries is to update all of them. Updating is slower than invalidating in most cases, however.  Invalidating requires supplying just the address to be invalidated, whereas updating needs to provide the new cache entry as well. If these two items must be presented on the bus consecutively, extra cycles will be required.  Even if it is possible to put an address and a data word on the bus simultaneously, if the cache block size is more than one word, multiple bus cycles will be needed to update the entire block.The issue of invalidate vs. update occurs in all cache protocols and also in DSM systems. 11
  • 12. The summarize of the write-through protocol  The complete protocol is summarized in figure below.The first column lists the four basic events that can happen.The second one tells what a cache does in response to its own CPU's actions.The third one tells what happens when a cache sees (by snooping) that a different CPU has had a hit or miss.The only time cache S (the snooper) must do something is when it sees that another CPU has written a word that S has cached (a write hit from 5"s point of view). The action is for S to delete the word from its cache. 12 Event Action taken by a cache in response to its own CPU’s operation Action taken by a cache to a remote CPU’s operation Read miss Fetch data from memory and store in cache (No action) Read hit Fetch data from local cache (No action) Write miss Update data in memory and store in cache (No action) Write hit Update memory and cache Invalidate cache entry
  • 13. The disadvantage of write-through protocol  The write-through protocol is simple to understand and implement but has the serious disadvantage that all writes use the bus. While the protocol certainly reduces bus traffic to some extent, the number of CPUs that can be attached to a single bus is still too small to permit large-scale multiprocessors to be built using it. 13
  • 14. A different approach: write once protocol  Fortunately, for many actual programs, once a CPU has written a word, that CPU is likely to need the word again, and it is unlikely that another CPU will use the word quickly.This situation suggests that if the CPU using the word could somehow be given temporary "ownership" of the word, it could avoid having to update memory on subsequent writes until a different CPU exhibited interest in the word. Such cache protocols exist. One of them is called write once. However, this protocol was designed to work with an existing bus and was therefore more complicated than is strictly necessary. Below we will describe a simplified version of it, which is typical of all ownership protocols. 14
  • 15. A deeply review  Our protocol manages cache blocks, each of which can be in one of the following three states: 1. INVALID —This cache block does not contain valid data. 2. CLEAN — Memory is up-to-date; the block may be in other caches. 3. DIRTY — Memory is incorrect; no other cache holds the block.  The basic idea is that a word that is being read by multiple CPUs is allowed to be present in all their caches. A word that is being heavily written by only one machine is kept in its cache and not written back to memory on every write to reduce bus traffic. 15
  • 16. Example  To simplicity, we will assume that each cache block consist of a single word. (example of how a cache ownership protocol works.) 16
  • 17. Example  Many small multiprocessors use a cache consistency protocol similar to this one, often with small variations. It has three important properties: 1. Consistency is achieved by having all the caches do bus snooping. 2. The protocol is built into the memory management unit. 3. The entire algorithm is performed in well under a memory cycle. 17
  • 19. Thanks for listening  Bilal Coşkun  Orhan Çelik  MustafaYumurtacı 19