Joannah Nanjekye <nanjekyejoan...@gmail.com> added the comment:

> What threshold is this?

> This is the different thresholds for the generations that you can get using 
> gc.get_threshold(). >They are in relationship to the number of objects in 
> every generation (there are slightly different >rules for the latest 
> generation).

I think we are on the same frequency in terms of threshold. Promotion is 
currently based on number of objects accumulated in the generation if I 
interpreted your explanation right.


>I am not sure what you mean with "copy" here. Moving objects from generations 
>or spaces is >just updating the pointers of the linked lists. Objects are not 
>"copied" but "moved". 

Yes, in terms of implementation so am thinking there must be a cost in moving 
these objects. IIRC the GC handbook you referenced may have noted this too..I 
stand to be corrected though on this.

>The reason I am proposing sub-generation steps is that making the object 
>header bigger is a >price too high to pay for this problem. We have recently 
>gone to notable efforts to reduce one >word per object by complicating the 
>code substantially using tagged pointers, so recording the >age in the object 
>seems the opposite direction. 

I think we only need about 5 bits to store the age of each object ,  do we 
really need to increase the object back to two word per object ?

>As I mentioned before, recording per-object age will be probably a no-go (the 
>solution to this >problem will yield memory gains because objects won't suffer 
>"generational nepotism" but >making the object header bigger will annihilate 
>those gains) so that is the reason I proposed >generational sub-steps.

Am actually in favour of this Shaw’s steps scheme though it may also mean the 
more delays we want, the more steps we need to create and manage while changing 
the age threshold for objects looks simpler than creating and managing steps.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue39143>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to