Project

General

Profile

Actions

Misc #8962

closed

[DOC] add step to enable Generational GC merits in README.EXT*

Added by tad (Tadashi Saito) about 11 years ago. Updated almost 11 years ago.

Status:
Closed
[ruby-core:57462]

Description

=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)
((<RubyKaigi2013-ko1.pdf|URL:http://www.atdot.net/~ko1/activities/RubyKaigi2013-ko1.pdf>))

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

Updated by nobu (Nobuyoshi Nakada) about 11 years ago

  • Description updated (diff)

Updated by zzak (zzak _) about 11 years ago

  • Status changed from Open to Assigned

Koichi, could you add some notes on this, maybe link to helpful RGenGC documentation.

I will bug you again at RubyConf :)

Updated by tad (Tadashi Saito) almost 11 years ago

ping?

2013/10/16 zzak (Zachary Scott)

Issue #8962 has been updated by zzak (Zachary Scott).

Status changed from Open to Assigned

Koichi, could you add some notes on this, maybe link to helpful RGenGC
documentation.

I will bug you again at RubyConf :)

misc #8962: [DOC] add step to enable Generational GC merits in README.EXT*
https://bugs.ruby-lang.org/issues/8962#change-42473

Author: tad (Tadashi Saito)
Status: Assigned
Priority: Normal
Assignee: zzak (Zachary Scott)
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)
((<RubyKaigi2013-ko1.pdf|URL:
http://www.atdot.net/~ko1/activities/RubyKaigi2013-ko1.pdf>))

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/

--
Tadashi Saito

Updated by zzak (zzak _) almost 11 years ago

  • Assignee changed from zzak (zzak _) 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

Updated by ko1 (Koichi Sasada) almost 11 years ago

  • Status changed from Assigned to Closed
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0