18bce2429 Da 2 Cao
18bce2429 Da 2 Cao
18bce2429 Da 2 Cao
Abstract
In a shared memory multiprocessor with a separate cache memory for each processor ,
it is possible to have many copies of any one instruction operand : one copy in the main
memory and one in each cache memory. When one copy of an operand is changed
the other copies of the operand must be changed also. When clients in a system
maintain caches of a common memory resource, problems may arise with incoherent
data, which is particularly the case with CPUs in a multiprocessing system. The magnitude
of the potential performance difference between the various cache coherency
approaches indicates that the choice of coherence solution is very important in the
design of an efficient shared-bus multiprocessor, since it may limit the number of
processors in the system. Proposed multiprocessor designs often include a private cache for each processor in the
system, which gives rise to the cache coherence problem. Cache coherence is intended to manage such
conflicts by maintaining a coherent view of the data values in multiple caches. A distributed
algorithm is used to tackle the cache coherence problem known as cache coherence protocol [1]. In this paper we discuss
cache coherence problems and evaluate snoop based cache coherence.
INTRODUCTION
In the complex multilevel cache level architecture to bind the cache coherence
protocol complexity we need to track the coherence information across all the levels
but this leads implausible cost problem. To empower our future processors we need to
embed more number of cores per chip multiprocessor. But during this we must face the
off chip bandwidth wall, again to overcome this we can use a large on chip cache but
because of plain large capacities of hardware the fast access could not be achieved.
So commercially it is used three level cache architecture where two are used to
maintain private data being closer to processor and the last one shared among cores.
Have large number of cores might be helpful in some most of the cases but at the same
time it is unachievable to rely on broadcast-based coherence protocols [2]. There are
three distinct levels of cache coherence.
1. Every write operation appears to occur instantaneously.
2. All processes see exactly the same sequence of changes of values for each
separate operand.
3. Different processes may see an operand assume different sequences of values
which is considered as non coherent behavior.
Key Words
Processor
P1 P2 P1 P2 P1 P2
Cache
X X X1 X X1 X
Bus
Shared
Memory
X X1 X
From the above figure let X be an element of shared data which has been
referenced by two processors, P1 and P2. In the beginning, three copies of X are
consistent. If the processor P1 writes a new data X1 into the cache, by
using write-through policy, the same copy will be written immediately into the
shared memory. In this case, inconsistency occurs between cache memory and
the main memory. When a write-back policy is used, the main memory will be
updated when the modified data in the cache is replaced or invalidated.
The sources of inconsistency may be:
√ Sharing of writable data
√ Process migration
√ I/O activity
SNOOPY PROTOCOLS
This paper has studied various issues related to the cache memory
by analysis of cache coherence protocols. Cache memory is a
main component of memory hierarchy which plays an important
role in the overall performance of the system and in the design of
multicores. Multicores with shared memory architecture are used to
satisfy increasing performance demands, which in turns are limited
by cache coherence problem. Thus this survey focuses on the
subject of the use of a protocol to solve the problem of data match
and improve this protocol.
REFERENCES
[1] Samaher Al-Hothali, Safeeullah Soomro and Khurram Tanvir Ruchi Tuli
- Snoopy and Directory Based Cache Coherence Protocols: A Critical
Analysis
[2] Comparative study on Cache Coherence Protocols Kaushik Roy,
Pavan Kumar S.R, Meenatchi S.
[3] JOUR- An Evaluation of Snoop-Based Cache Coherence Protocols:
Bigelow, Linda,Narasiman, Veynu,Suleman, Aater,2009/08/24
[4] Alberto, R. and Alexandra, J. 2015. A Dual-Consistency Cache
Coherence Protocol, IEEE 29th International Parallel and Distributed
Processing Symposium IPDPS, pp: 1119-1128, USA
[5] Hashemi, B., "Simulation and Evaluation Snoopy Cache Coherence
Protocols with Update Strategy in Shared Memory Multiprocessor
Systems," Parallel and Distributed Processing with Applications
Workshops (ISPAW), 2011 Ninth IEEE International Symposium on ,
pp.256,259, 26-28 May 2011.