By using synchronization, we can get both the improved performance of a non-SC system (relaxing the requirements of sequential consistency and allowing reads and writes to be re-ordered), and correct execution (forcing sequential consistency only where a data race might occur).
By using synchronization, we can get both the improved performance of a non-SC system (relaxing the requirements of sequential consistency and allowing reads and writes to be re-ordered), and correct execution (forcing sequential consistency only where a data race might occur).