Software Transactional Memory on Relaxed Memory Models
Software Transactional Memory on Relaxed Memory Models
复制标题
宽松内存模型上的软件事务内存
DOI:
--
复制
发表时间:
2009
期刊:
影响因子:
--
通讯作者:
Vasu Singh
中科院分区:
文献类型:
--
作者:
R. Guerraoui;T. Henzinger;Vasu Singh
Pseudo-code descriptions of STMs assume sequentially consistent program execution and atomicity of high-level STM operations like read, write, and commit. These assumptions are often violated in realistic settings, as STM implementations run on relaxed memory models, with the atomicity of operations as provided by the hardware. This paper presents the first approach to verify STMs under relaxed memory models with atomicity of 32 bit loads and stores, and read-modify-write operations. We present RML, a new high-level language for expressing concurrent algorithms with a hardware-level atomicity of instructions, and whose semantics is parametrized by various relaxed memory models. We then present our tool, FOIL, which takes as input the RML description of an STM algorithm and the description of a memory model, and automatically determines the locations of fences, which if inserted, ensure the correctness of the STM algorithm under the given memory model. We use FOIL to verify DSTM, TL2, and McRT STM under the memory models of sequential consistency, total store order, partial store order, and relaxed memory order.