咨询与建议

看过本文的还看了

相关文献

该作者的其他文献

文献详情 >Design and implementation of a... 收藏

Design and implementation of a fully transparent partial abort support for software transactional memory

作     者:Pellegrini, Alessandro Di Sanzo, Pierangelo Piccione, Andrea Quaglia, Francesco 

作者机构:Univ Roma Tor Vergata DICII Rome Italy Univ Aquila DISIM Laquila Italy Sapienza Univ Rome DIAG Rome Italy 

出 版 物:《SOFTWARE-PRACTICE & EXPERIENCE》 (软件:实践与经验)

年 卷 期:2022年第52卷第11期

页      面:2456-2475页

核心收录:

学科分类:08[工学] 0835[工学-软件工程] 0812[工学-计算机科学与技术(可授工学、理学学位)] 

主  题:partial abort software transactional memory static binary instrumentation transactional memory 

摘      要:Software transactional memory (STM) provides synchronization support to ensure atomicity and isolation when threads access shared data in concurrent applications. With STM, shared data accesses are encapsulated within transactions automatically handled by the STM layer. Hence, programmers are not requested to use code-synchronization mechanisms explicitly, like locking. In this article, we present our experience in designing and implementing a partial abort scheme for STM. The objective of our work is threefold: (1) enabling STM to undo only part of the transaction execution in the case of conflict, (2) designing a scheme that is fully transparent to programmers, thus also allowing to run existing STM applications without modifications, and (3) providing a scheme that can be easily integrated within existing STM runtime environments without altering their internal structure. The scheme we designed is based on automated software instrumentation, which injects into the application capabilities to undo the required portions of transaction executions. Further, it can correctly undo also non-transactional operations executed on the stack and the heap during a transaction. This capability allows programmers to write transactional code without concerns about the side effects of aborted transactions on both shared and thread-private data. We integrated and evaluated our partial abort scheme within the TinySTM open-source library. We analyze the experimental results we achieved with common STM benchmark applications, focusing on the advantages and disadvantages of the proposed solutions for implementing our scheme s different components. Hence, we highlight the appropriate choices and possible solutions to improve partial abort schemes further.

读者评论 与其他读者分享你的观点

用户名:未登录
我的评分