Memory consistency and event ordering in scalable shared-memory multiprocessors | Synapse