0

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 is... but not necessarily?? IMO a TSO architecture COULD be achieved with an LL/SC based exclusivity acquisition protocol... the ordering flexibility is orthogonal to the cache exclusivity acquisition mechanic... maybe this is just a proprietary choice... maybe not...).

Action which is mostly referred to as "serialize" in the literature... not synchronize (why?).

So, if high-level synchronization (MCS/CLH queues) need MESI... then

What synchronizes the synchronizer?

3
  • 1
    and the directory needs to synchronize parallel RFO + snoop-invalidation calls in order for it to work - You mean arbitrate between simultaneous requests for the same line? If you mean different lines, I don't think any ordering is needed; merely having the store become visible to all other threads at the same time (other-multicopy-atomic) by committing to coherent cache is sufficient to avoid threads disagreeing about store orders (no IRIW reordering), and the rest of TSO comes from no local LoadLoad/LoadStore/StoreStore reordering (i.e. program order + a store buffer with store-fwding.) Commented Aug 27 at 2:35
  • 1
    I've read some mentions about interconnects between cores needing to maintain some ordering of something, but I didn't fully grok what. Commented Aug 27 at 2:36
  • Yes, for the same line. It seems one misconception is that the processor does not incur in "bubbling" during directory lookups during M/E... but what I've found most people refer to during assertions like these is that they are referring that the LLC <-> MM pipeline is the one not getting stalled... while the interaction I'm asking about is the L1x <-> LLC <-> L1y pipeline... in which case I'd argue there must be some bubbling going on between L1's and LLC in order to serialize... maybe even some hardware level MCS-like queuing for stores... Commented Aug 27 at 13:25

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.