paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Hardware Multithreaded Transactions

硬件多线程事务
ASPLOS Proceedings of the Twenty-Third International Conference on Architectural Support for Programming Languages and Operating Systems2018匹配度 1/10 · 该论文研究硬件多线程事务与投机并行化的体系结构支持,属于并发/体系结构方向;与用户关注的静态分析、LLM/Agent、浮点程序分析、贝叶斯程序分析均无直接交集。引用 6 inbox
Jordan Fix, Nayana P. Nagendra, Sotiris Apostolakis, Hansen Zhang, Sophie Qiu, David I. August
crossref: 2026-09-12

AI 速览

一句话:首次提出并实现硬件多线程事务,以低开销推测验证支持跨线程事务的投机并行化。

该论文研究如何降低软件多线程事务(MTX)中推测验证带来的线程间通信开销,从而让跨线程事务的投机并行化更实用。作者提出首个完整的硬件多线程事务设计、实现与评估:在硬件层面执行低开销的推测验证,即使对包含数千万到数亿条指令的事务中的每次加载和存储都进行最大程度验证,也能使复杂程序获得有收益的并行化。在 8 个基准测试上,该系统在 4 核多核机器上相对串行执行取得几何平均 99% 的加速。

问题
软件多线程事务在推测验证时产生显著的线程间通信开销,使较大读写集合的程序难以从投机并行化中获益。
方法
设计并实现硬件多线程事务,通过硬件支持低开销的推测验证,允许事务跨多个线程执行。
评估
在 8 个基准测试上,于 4 核多核机器中与串行执行对比,评估加速效果与可行性。
原文摘要(Abstract)

Speculation with transactional memory systems helps pro- grammers and compilers produce profitable thread-level parallel programs. Prior work shows that supporting transactions that can span multiple threads, rather than requiring transactions be contained within a single thread, enables new types of speculative parallelization techniques for both programmers and parallelizing compilers. Unfortunately, software support for multi-threaded transactions (MTXs) comes with significant additional inter-thread communication overhead for speculation validation. This overhead can make otherwise good parallelization unprofitable for programs with sizeable read and write sets. Some programs using these prior software MTXs overcame this problem through significant efforts by expert programmers to minimize these sets and optimize communication, capabilities which compiler technology has been unable to equivalently achieve. Instead, this paper makes speculative parallelization less laborious and more feasible through low-overhead speculation validation, presenting the first complete design, implementation, and evaluation of hardware MTXs. Even with maximal speculation validation of every load and store inside transactions of tens to hundreds of millions of instructions, profitable parallelization of complex programs can be achieved. Across 8 benchmarks, this system achieves a geomean speedup of 99% over sequential execution on a multicore machine with 4 cores.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot4282,
  title = {Hardware Multithreaded Transactions},
  author = {Jordan Fix and Nayana P. Nagendra and Sotiris Apostolakis and Hansen Zhang and Sophie Qiu and David I. August},
  booktitle = {ASPLOS},
  year = {2018},
  doi = {10.1145/3173162.3173172}
}