Previous | Next --- Slide 12 of 46
Back to Lecture Thumbnails

To clarify, when we talk about allowing reads to move ahead of writes, we mean that a read can be made before a write completes. Without that, we would not be able to hide the latency of writes, which is one of the major reasons of relaxing consistency.


Adding to @rramo 's comment, we can only relax read after write memory operations if the read is not dependent on the write.


Wouldn't it be a good idea to let processors issue subsequent reads before previous reads have completed essentially pipelining them? Why should a processor have to wait for a previous read to complete in order to issue a subsequent read?