まつもと ゆきひろです
In message "Re: [ruby-dev:39867] Re: [Feature #2471] want to choose a GC algorithm"
on Fri, 11 Dec 2009 00:02:42 +0900, Narihiro Nakamura <authornari / gmail.com> writes:
|ただ、GC自体の改善(高速化等)という観点で見ると、今までのCRubyのGCはそ
|れほど大きな改善はなされていないので、特にこのパッチが入ることによって、
|さらに改善が遅くなるということもないのではないかと思います。
|逆にLazySweepが上手く育ってくれれば、デフォルトのGCに取って代わるという
|のも面白いかもしれません。
っていうか、LazySweepって「取って代わる」ような大きなアルゴリ
ズムの変更ではないと思います。あまり大きなトレードオフもなさ
そうなので、ちゃんとバグが取れたならいつも有効にしていてもよ
いような。
そういう意味では、LazySweepがon/offできることのメリットが不明
なので、このパッチには賛成しません。これがcopy-on-write
friendly GCとかmostly-copying GCのような性能特性が大きく変わ
りそうなものなら、切り替えに意味があるかもしれません。
GCについては、
* ささだくんのところのメモリアロケーションにmmapを使う改善
* その応用としてのビットマップマーキング
* LazySweep
がとりあえず有望そうな改善だと思います。今後の課題としては
* multi threadedなsweep
* 鵜川さんのところのmostly-copying GC
* ライトバリアの導入
などが考えられますが、これらは解決すべき課題がまだまだ多そう
です。
まつもと ゆきひろ /:|)