Transactifying Apache's cache module

SYSTOR '09: Proceedings of SYSTOR 2009: The Israeli Experimental Systems Conference(2009)

引用 2|浏览2
暂无评分
摘要
Apache is a large-scale industrial multi-process and multi- threaded application, which uses lock-based synchroniza- tion. We report on our experience in modifying Apache's cache module to employ transactional memory instead of locks, a process we refer to as transactication ; we are not aware of any previous eorts to transactify legacy software of such a large scale. Along the way, we learned some valu- able lessons about which tools one should use, which parts of the code one should transactify and which are better left untouched, as well as on the intricacy of commit handlers. We also stumbled across weaknesses of existing software transactional memory (STM) toolkits, leading us to iden- tify desirable features they are currently lacking. Finally, we present performance results from running Apache on a 32-core machine, showing that, there are scenarios where the performance of the STM-based version is close to that of the lock-based version. These results suggest that there are ap- plications for which the overhead of using a software-only implementation of transactional memory is insignicant.
更多
查看译文
关键词
lock-based version,transactional memory,present performance result,modifying apache,lock-based synchronization,software transactional memory,32-core machine,cache module,stm-based version,transactifying apache,legacy software
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要