1
votes

I am reading the book A Primer on Memory Consistency and Cache Coherence, and I found this (pp19):

Load-store and store-load reordering. Out-of-order cores may also reorder loads and stores (to different addresses) from the same thread. [...] Note that store-load reorderings may also arise due to local bypassing in the commonly implemented FIFO write buffer, even with a core that executes all instructions in program order.

What does that "local bypassing in the write buffer" mean? Is write buffer another name for store buffer?

Thanks

1

1 Answers

2
votes

local bypassing in the write buffer probably means store-to-load forwarding:

Store-to-Load Forwarding

When a load depends on a recent earlier store, the data that should be loaded is not yet in the cache, and needs to be forwarded from the store, through the store queue. This can be done by searching the store queue (like a CAM) for a store whose address matches the load, then retrieving the data from the store queue rather than L1 cache if there is a match.