期刊文献+

快速时代回收:一种针对无锁编程的快速垃圾回收算法 被引量:1

Fast Epoch: a Fast Memory Reclamation Algorithm for Lock-free Programming
下载PDF
导出
摘要 在多核、众核时代,并行编程模型如软件事务内存、无锁编程等成为研究热点.无锁编程技术使得多个线程无需加锁即可并发访问同一个数据结构成为可能,该技术已被证明能够有效地提升程序的性能.实现无锁算法的一个关键的技术是垃圾回收.时代回收算法是一种高效、易用的垃圾回收算法,但其回收速度受制于最慢的线程,在极端情况下该算法完全停滞,难以在实际情况下使用.本文针对时代回收算法的不足,在其基础上提出了快速时代回收算法,新算法的回收速度与最快线程保持一致,在测试中回收成功率为100%,实验证明快速时代回收算法一种适用于无锁编程的快速实用的垃圾回收算法. In multi-core and many-core age, parallel programming model, such as software transactional memory and lock-free pro- gramming becomes a research hotspot. Lock-free programming technology allows multiple threads in a process access a data structure concurrently without locking. Lock-free programming have been proven to effectively improve the performance of concurrent pro- grams. One of its key technology is memory reclamation. Epoch-based algorithm is an efficient, easy to use memory reclamation al- gorithm, but it is restricted by the speed of the slowest thread. In extreme circumstances the algorithm is completely stall, which make it impractical in real situation. In this paper, fast epoch algorithm is proposed, which is based on epoch-based algorithm and its reclamation speed is the same the fast thread. In the test, fast epoch algorithm has 100% reclamation success rate, and experiments shows that fast epoch algorithm is an fast and practical memory reclamation algorithm for lock-free programming.
出处 《小型微型计算机系统》 CSCD 北大核心 2013年第12期2691-2695,共5页 Journal of Chinese Computer Systems
基金 国家"核高基"重大专项(2009ZX01028-002-003-005)资助 国家自然科学基金项目(60833004)资助软件理论
关键词 无锁编程 垃圾回收 CAS 时代回收算法 快速时代回收算法 lock-free memory reclamation CAS epoch-based algorithm fast epoch algorithm
  • 相关文献

参考文献10

  • 1Damian Dechev, Peter Pirkelbauer, Bjame Stroustrup. Lock-free dy- namically resizable arrays [ M ]. Lecture Notes in Computer Sci- ence, Principles of Distributed Systems,2006,4305:142 - 156.
  • 2Maged M Michael. Safe memory reclamation for dynamic lock-free objects using atomic reads and writes [ C ]. In Proceedings of the 21 st Annual ACM Symposium on Principles of Distributed Compu- ting ( PODC'02 ), July 2002.
  • 3Maurice Herlihy, Nir Shavit. The art of multiprocessor programming [M]. Morgan Kaufmann Publishers, San Francisco, USA,2008.
  • 4Michael M M, Scott M L. Correction of a memory management method for lock-flee data structures[ R]. Technical Report TR599, University of Rochester, Computer Science Department, 1995.
  • 5Lei Jin-jiang, Qiu Zong-yan. Verification of lock-free scalable syn- chronous queue[ R]. LMAM and Department of Informatics,, Bei- jing : School of Mathematics Peking University.
  • 6IBM. IBM system/370 extended architecture, principles of operation [ M]. IBM Press,Indiana,USA, 1983.
  • 7Maged Michael M. Scalable lock-free dynamic memory allocation [ C ]. Proc. 2004 ACM Sigplan Conf. Programming Language De- sign and Implementation,June,2004.
  • 8Valois J D. Lock-free linked lists using compare-and-swap [ C ]. Proceedings of the Fourteenth Annual ACM Symposium on Princi- ples of Distributed Computing( PODC'95 ), New York, NY, USA, ACM Press, 1995:214-222.
  • 9钱立兵,陈波,刘涛,等.多线程并发访问无锁队列的算法研究[J].先进技术研究通报,2009,3(8):50-55.
  • 10Keir Fraser. Practical lock-freedom doctoral dissertation [ D ]. Uni- versity of Cambridge Computer Laboratory,Feb. 2004.

引证文献1

二级引证文献3

相关作者

内容加载中请稍等...

相关机构

内容加载中请稍等...

相关主题

内容加载中请稍等...

浏览历史

内容加载中请稍等...
;
使用帮助 返回顶部