taskGnash - The GNU Flash player - Tasks: task #7831, Improve garbage collector...


You are not allowed to post comments on this tracker with your current authentication level.

task #7831: Improve garbage collector performance

Submitted by:  Sandro Santilli <strk>
Submitted on:  Wed Mar 5 10:58:11 2008  
Should Start On: Tue Mar 4 23:00:00 2008Should be Finished on: Tue Mar 4 23:00:00 2008
Category: NonePriority: 5 - Normal
Status: NonePrivacy: Public
Percent Complete: 0%Assigned to: None
Open/Closed: ClosedEffort: 0.00

(Jump to the original submission Jump to the original submission)

Mon Dec 20 10:27:12 2010, comment #6:

Guess this was completed.

Sandro Santilli <strk>
Project Member
Thu Mar 6 15:30:43 2008, comment #5:

The patch was committed in head, with more code further reducing builtin functions created at startup.

Sandro Santilli <strk>
Project Member
Thu Mar 6 11:03:32 2008, comment #4:

This third patch is a futher cleanup of the previous.
It defines a generic GetterSetter that can be either
a user-defined or a native one, saving some bits of
memory for both cases and some locking for the native

(file #15191)

Sandro Santilli <strk>
Project Member
Thu Mar 6 09:51:42 2008, comment #3:

Attached a cleaner patch for native getter-setter support.

As a side-effect this patch prevents getter-setters to be called
explicitly using CallMethod in v9 (abc format, currently unused).
Should be easy to fix when v9 will be active.

(file #15190)

Sandro Santilli <strk>
Project Member
Wed Mar 5 20:46:33 2008, comment #2:

During cleanups I found that the new v9 interpreter (vm/Machine.cpp) relies on getter-setter being actual as_function
so can't fully cleanup unless I also fix Machine.cpp code.

I wonder if we should take a completely different approach
and get back to manually respond to properties get/set
using the overridden get_member/set_member instead.

Sandro Santilli <strk>
Project Member
Wed Mar 5 16:20:43 2008, comment #1:

The attached patch adds support for 'native' getter-setter
and uses them for the MovieClip properties (_x,_yscale, ...).
This makes 22 builtin_function less to manage for each new
MovieClip instance, greatly reducing cost of garbage collection
(each builtin_function has to mark its prototype and the getter and setter functions, each with its own prototype..).

Will clean it up before committing.
It is known to fix bug #22461.

(file #15187)

Sandro Santilli <strk>
Project Member
Wed Mar 5 10:58:11 2008, original submission:

Garbage collector is a bootlneck for movies with many
characters in them. We should analize the reson for this
and find out possible solutions.

Sandro Santilli <strk>
Project Member


Attached Files
file #15191:  NativeProps3.patch added by strk (27kB - text/x-patch)
file #15190:  NativeProps2.patch added by strk (22kB - text/x-patch)
file #15187:  NativeMCprops.patch added by strk (18kB - text/x-patch)


Depends on the following items: None found

   bug dependencies.


Carbon-Copy List
  • -unavailable- added by strk
  • -unavailable- added by strk (Submitted the item)

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.


    Please enter the title of George Orwell's famous dystopian book (it's a date):



    Follow 5 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Mon Dec 20 10:27:12 2010strkOpen/ClosedOpen=>Closed
    Thu Mar 6 11:03:32 2008strkAttached File-=>Added NativeProps3.patch, #15191
    Thu Mar 6 09:51:42 2008strkAttached File-=>Added NativeProps2.patch, #15190
      Carbon-Copy-=>Added cmusick
    Wed Mar 5 16:20:43 2008strkAttached File-=>Added NativeMCprops.patch, #15187

    Back to the top

    Powered by Savane 3.1-cleanup1