Higham, LisaKawash, JalalVerwaal, Nathaly2008-02-272008-02-271998-01-01http://hdl.handle.net/1880/45993Modern multiprocessors incorporate sophisticated memory structures in order to enhance performance. These structures allow processes to have inconsistent views of memory, which can, in turn, result in unexpected program outcomes. A memory consistency model is a set of guarantees that imposes constraints on the possible outcomes of sequences of interleaved and simultaneous operations in a multiprocessor. This paper presents a unifying framework to describe, compare and reason about memory consistency models. The framework is then used to give rigorous definitions of several widely used consistency models. These definitions are also shown to correspond to simple machine architectures. For each pair of models discussed, it is determined whether one is strictly stronger than the other or whether the two are incomparable.EngComputer ScienceWEAK MEMORY CONSISTENCY MODELS PART ONE: DEFINITIONS AND COMPARISONSunknown1998-612-0310.11575/PRISM/30837