CSC/ECE 506 Spring 2012/11a hn: Difference between revisions
Line 2: | Line 2: | ||
The [http://en.wikipedia.org/wiki/Distributed_shared_memory Distributed Shared Memory (DSM)] system is a combination of a [http://www.ece.rutgers.edu/~parashar/Classes/99-00/ece566/slides/lecture11.pdf Shared Memory system] and a [http://en.wikipedia.org/wiki/Parallel_computing#Distributed_computing Distributed Memory systems]. The Shared Memory system has a group of processors sharing global memory which allows any processor to access the memory location[[#References|<sup>[1]</sup>]].]] The Distributed memory systems have a cluster each (i.e each processor has its own memory location ) and use message passing to communicate between the clusters[[#References|<sup>[2]</sup>]] The DSM on the other hand has several processors sharing the same address space i.e a location in memory will be the same physical address for all processors. Unlike the Shared Memory System they do not actually use a global memory which is accessible by all processors, instead it is a logical abstraction of a single address space for different memory locations which can be accessed by all processors. | The [http://en.wikipedia.org/wiki/Distributed_shared_memory Distributed Shared Memory (DSM)] system is a combination of a [http://www.ece.rutgers.edu/~parashar/Classes/99-00/ece566/slides/lecture11.pdf Shared Memory system] and a [http://en.wikipedia.org/wiki/Parallel_computing#Distributed_computing Distributed Memory systems]. The Shared Memory system has a group of processors sharing global memory which allows any processor to access the memory location[[#References|<sup>[1]</sup>]].]] The Distributed memory systems have a cluster each (i.e each processor has its own memory location ) and use message passing to communicate between the clusters[[#References|<sup>[2]</sup>]] The DSM on the other hand has several processors sharing the same address space i.e a location in memory will be the same physical address for all processors. Unlike the Shared Memory System they do not actually use a global memory which is accessible by all processors, instead it is a logical abstraction of a single address space for different memory locations which can be accessed by all processors. | ||
[[image:Shared_memory.jpg|thumb| | [[image:Shared_memory.jpg|thumb|left|400px|alt=Shared Memory System.|Illustration of Shared memory system [[#References|<sup>[3]</sup>]].]] | ||
[[image:Distributed_memory.jpg|thumb|right|400px|alt=Shared Memory System.|Illustration of Distributed memory system [[#References|<sup>[3]</sup>]].]] | |||
[[image:DSM.jpg|thumb|center|400px|alt=Distributed Memory System.|Illustration of Distributed memory system [[#References|<sup>[3]</sup>]].]] | [[image:DSM.jpg|thumb|center|400px|alt=Distributed Memory System.|Illustration of Distributed memory system [[#References|<sup>[3]</sup>]].]] | ||
Revision as of 19:50, 13 April 2012
The Distributed Shared Memory (DSM) system is a combination of a Shared Memory system and a Distributed Memory systems. The Shared Memory system has a group of processors sharing global memory which allows any processor to access the memory location[1].]] The Distributed memory systems have a cluster each (i.e each processor has its own memory location ) and use message passing to communicate between the clusters[2] The DSM on the other hand has several processors sharing the same address space i.e a location in memory will be the same physical address for all processors. Unlike the Shared Memory System they do not actually use a global memory which is accessible by all processors, instead it is a logical abstraction of a single address space for different memory locations which can be accessed by all processors.
Instead of implementing shared memory model with a bus support the DSM uses a more scalable and less expensive model by supporting the abstraction of shared memory by using message passing. The main memory of a cluster of processors is made to look like a single memory with a single address space. The DSM allows the programmer to share and use variables without having to worry about their management. Hence a processor can access a address space held by other processors main memory. The DSM allows end-users to use the shared memory without knowing the message passing,the idea is to allow inter processor communication which is invisible to the user.