中文

混合事务内存中并发的代价

分布式、并行与集群计算 2019-07-08 v1

摘要

最先进的软件事务内存(STM)实现通过谨慎地避免增量验证(即重新读取先前读取的数据项以避免不一致)的开销,同时仍提供渐进性(仅允许由于数据冲突导致的事务中止),从而获得良好的性能。硬件事务内存(HTM)实现有望提供更好的性能,但不提供进展保证。因此,它们必须与 STM 结合,形成混合事务内存(HyTM),其中硬件事务必须被插桩(即访问元数据)以检测与软件事务的竞争。我们表明,与渐进式 STM 不同,渐进式 HyTM 中的软件事务无法避免增量验证。事实上,即使硬件事务能够非推测性地读取元数据,该结果仍然成立。随后我们提出了不透明 HyTM 算法,为事务子集提供渐进性,且在硬件插桩方面是最优的。我们探讨了这些算法的并发性、硬件插桩与软件验证之间的权衡。我们在 Intel 和 IBM POWER8 HTM 上的实验似乎表明:(i)并发的代价在实践中同样存在;(ii)实现为最大事务集合提供渐进性且不带来高硬件插桩开销或使用全局竞争瓶颈的 HyTM 十分重要;(iii)利用硬件内非推测性访问来推导更高效 HyTM 并无易行之法。

关键词

引用

@article{arxiv.1907.02669,
  title  = {On the Cost of Concurrency in Hybrid Transactional Memory},
  author = {Trevor Brown and Srivatsan Ravi},
  journal= {arXiv preprint arXiv:1907.02669},
  year   = {2019}
}