From: Yukihiro Matsumoto Date: 2009-12-11T01:14:05+09:00 Subject: [ruby-dev:39868] Re: [Feature #2471] want to choose a GC algorithm まつもと ゆきひろです 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 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 * ライトバリアの導入 などが考えられますが、これらは解決すべき課題がまだまだ多そう です。 まつもと ゆきひろ /:|)