Multicore & Synchronization
What does a memory consistency model define?
- AThe cache line size and the number of sets
- BThe kind of transistors used in main-memory DRAM
- CIn what order a core's reads and writes to multiple addresses may be observed by other cores
Show answer and explanation
Answer: C. In what order a core's reads and writes to multiple addresses may be observed by other cores
For performance, CPUs may reorder memory operations, for example by holding writes in a store buffer or performing reads early. They are designed so that results within one core are unchanged, but other cores may observe the operations in a different order. A memory consistency model defines which reorderings can occur and is the contract that lets programmers write correct synchronization.
- A. That is cache organization.
- B. It has nothing to do with circuit technology.
- C. Correct. It is a contract between hardware and programmers.