Architectural Semantics for Practical Transactional Memory | Synapse