From: "zzak (Zachary Scott)" Date: 2013-12-06T14:33:58+09:00 Subject: [ruby-core:58894] [ruby-trunk - misc #8962] [DOC] add step to enable Generational GC merits in README.EXT* Issue #8962 has been updated by zzak (Zachary Scott). Assignee changed from zzak (Zachary Scott) to ko1 (Koichi Sasada) During the 2013-12-05 developers meeting[1] Koichi was given this assignment, and I will help him write the documentation. 1: http://bugs.ruby-lang.org/projects/ruby/wiki/DevelopersMeeting20131205Japan ---------------------------------------- misc #8962: [DOC] add step to enable Generational GC merits in README.EXT* https://bugs.ruby-lang.org/issues/8962#change-43446 Author: tad (Tadashi Saito) Status: Assigned Priority: Normal Assignee: ko1 (Koichi Sasada) Category: doc Target version: current: 2.1.0 =begin Is there any chance to reap the benefit of new Generational GC merits for C-extension library authors? == Background First of all: RGenGC is great. Ko1 showed that it could make significant performance improvement at RubyKaigi2013. (especially P82) (()) I guess the improvement is triggered by marking most (or all?) of built-in classes as WB-protected struct to work with Generational GC. == Motivation As an extension library author, I want to try to get the performance merit. But there is no document or guide to enable it. The PDF says "Inserting WBs step by step, and increase performance gradually", and I believe it is the greatest point of RGenGC, but there is no guide to proceed with the steps for now. It's sad. == Subject Could you write about it as a document, ko1 or anyone? I guess it's good to be written at ((%README.EXT*%)). (The case of ((%iseq.c%)) may be used as an example.) I'm glad to see the documents are written before Ruby 2.1 release. == Restriction Sorry for the absence of my knowledge. Because I'm not good at RGenGC, I could't write the document by myself but could only request. PS I guess this issue depends on #3064 (sorry, in Japanse), the request of documenting (({RTypedData})), because there is no interface to specify (({FL_WB_PROTECTED})) flag with traditional (({RData})). =end -- http://bugs.ruby-lang.org/