Skip to main content
Stack Overflow
  1. About
  2. For Teams
Filter by
Sorted by
Tagged with
0 votes
0 answers
43 views

The MESI or MOESI protocols need the LLC directory in order to work... and the directory needs to synchronize parallel RFO + snoop-invalidation calls in order for it to work (in TSO architectures that ...
0 votes
1 answer
102 views

Suppose I have three threads. If x was written by thread2 and x is visible to thread1, do I have the guarantee that the latest value of x is also visible to thread3? In other words, can the new value ...
-1 votes
1 answer
230 views

In amba chi cache coherence protocol, the RN sends instructions (to HN) like ReadClean, ReadNotSharedDirty, ReadShared, ReadUnique, etc. But the CPU has sent only a READ instruction to the RN, so how ...
R71's user avatar
  • 4,573
1 vote
0 answers
71 views

In the MESI_Three_Level protocol of GEM5 simulator, there are L0, L1, L2, dir and dma state machines. L0 and L1 cache controllers simulate private caches for processor cores, which are implemented ...
0 votes
1 answer
84 views

I'm trying to solve a MESI Cache problem. I have four processors (P0, P1, P2, P3) each with 4 states set to Invalid. Offset bits are to be ignored. If I read on P0 on address 11010 with two index bits ...
0 votes
1 answer
139 views

All questions come from the book "A Primer on Memory Consistency and Cache Coherence, Second Edition". The first question comes from "Table 8.1: MSI directory protocol—cache controller&...
dtwang's user avatar
  • 1
0 votes
2 answers
148 views

#include <iostream> #include <thread> #include <vector> #include <chrono> #include <mutex> using namespace std::chrono; const int nthreads = 4; const int64_t ndata = ...
0 votes
1 answer
39 views

Under the context of MESI protocol and the introducing of store buffer and invalidation queue, a write operation to a variable can be temporarily stored in the store buffer waiting for the related ...
0 votes
2 answers
166 views

The book "Computer Architecture", by Hennessy/Patterson, 6th ed, on page 394, includes an example with true sharing and false sharing misses with 2 processors. here is the example from the ...
-1 votes
1 answer
144 views

I know that x86 processors use TSO memory model and I am curious about one thing. I will explain it through example. We have two processors (P1 and P2) where P1 stores X=1 to its store buffer and P2 ...
0 votes
2 answers
284 views

I've been thinking about the "owned" state of the MOESI protocol. So let's say the following situation exists: P0 has line A in O state. P1 has line A in S state. P0 writes to line A in its ...
4 votes
0 answers
233 views

In Java, adding the volatile keyword to a variable guarantees memory consistency (or visibility). On the x86 platform, the Hotspot virtual machine implements volatile variable memory consistency by ...
0 votes
0 answers
121 views

Let's say we have CPU-X and CPU-Y which have their own L1d caches. First, on CPU-X we execute simple read operation on memory location M that is stored in DRAM: after that CPU-X loads value stored in ...
0 votes
1 answer
248 views

Consider the following implementation of spinlock (first link in google on query "c++ spinlock implementation"): struct spinlock { std::atomic<bool> lock_ = {0}; void lock() noexcept {...
2 votes
0 answers
101 views

What happens if a CPU receives an invalidation message for a cache line in the Exclusive state? Can this message enter the invalidation queue? If so, what happens if the same CPU attempts to to that ...

15 30 50 per page
1
2 3 4 5 6

AltStyle によって変換されたページ (->オリジナル) /