当前位置:  开发笔记 > 程序员 > 正文

硬件辅助垃圾收集

如何解决《硬件辅助垃圾收集》经验,为你挑选了2个好方法。

我正在思考函数式语言可以更直接地绑定到他们的硬件的方式,并且想知道垃圾收集的任何硬件实现.

这会显着加快速度,因为硬件本身会隐式处理所有集合,而不是某些环境的运行时.

这是LISP机器做的吗?有没有进一步研究这个想法?这个域名是否具体?

思考?异议?讨论.



1> runT1ME..:

由于Generational Collection,我不得不说跟踪和复制不是 GC的巨大瓶颈.

有用的是硬件辅助的READ障碍,它们在进行堆栈扫描和标记堆时不需要"停止世界"暂停.

Azul Systems已经做到了这一点:http: //www.azulsystems.com/products/compute_appliance.htm他们在JavaOne上介绍了他们的硬件修改如何允许完全无间断的GC.

另一项改进是硬件辅助写入障碍,用于跟踪记忆集.

对于G1或Garbage First,通常只扫描一个分区,并为跨分区指针保留一个记忆集列表,从而减少它们必须扫描的堆的数量.

问题是这意味着任何时候mutator('真实程序'的花哨字)设置一个指针,它也必须在适当的重新设置的集合中放入一个条目.所以即使你不是GCing,你也有(小)开销.如果可以减少这种情况,则可以减少GCing所需的暂停时间和整体程序性能.



2> ja...:

是.查看这两篇论文的相关工作部分:

https://research.microsoft.com/en-us/um/people/simonpj/papers/parallel-gc/index.htm http://www.filpizlo.com/papers/pizlo-ismm2007-stopless.pdf

或者在这一个:

http://researcher.watson.ibm.com/researcher/files/us-bacon/Bacon12StallFree.pdf

推荐阅读
jerry613
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有