Progress on the Gilectomy
Cem Karan
cfkaran2 at gmail.com
Tue Jun 20 21:56:56 EDT 2017
On Jun 20, 2017, at 1:19 AM, Paul Rubin <no.email at nospam.invalid> wrote:
> Cem Karan <cfkaran2 at gmail.com> writes:
>> Can you give examples of how it's not reliable?
>
> Basically there's a chance of it leaking memory by mistaking a data word
> for a pointer. This is unlikely to happen by accident and usually
> inconsequential if it does happen, but maybe there could be malicious
> data that makes it happen
Got it, thank you. My processes will run for 1-2 weeks at a time, so I can handle minor memory leaks over that time without too much trouble.
> Also, it's a non-compacting gc that has to touch all the garbage as it
> sweeps, not a reliability issue per se, but not great for performance
> especially in large, long-running systems.
I'm not too sure how much of performance impact that will have. My code generates a very large number of tiny, short-lived objects at a fairly high rate of speed throughout its lifetime. At least in the last iteration of the code, garbage collection consumed less than 1% of the total runtime. Maybe this is something that needs to be done and profiled to see how well it works?
> It's brilliant though. It's one of those things that seemingly can't
> possibly work, but it turns out to be quite effective.
Agreed! I **still** can't figure out how they managed to do it, it really does look like it shouldn't work at all!
Thanks,
Cem Karan
More information about the Python-list
mailing list