Partial Garbage Collection Implementation#5493
Partial Garbage Collection Implementation#5493arihant2math wants to merge 2 commits intoRustPython:mainfrom
Conversation
|
About GC, if we can use other library, that will be the best. I didn't compare the candidatse, but #4668 has a few links |
I plan to try to use another crate for the actual meat of the algorithm as the main reason the previous PR failed was having a bug in the algorithm. I will look into the ones in the issue. |
|
The main issue with using an external library is that we don't actually use |
|
When i looked in circ, it had internal crate ebr_impl. So it was adaptable for our own rc implementation. |
|
I think for now I will try pulling and running a modified GC algorithm from dumpster mostly because it does gc. |
|
Ok so I've tried two approaches. The first, which I didn't push up tried to simply port over the code from the previous pr, but that ran into tons of compiler errors. |
Signed-off-by: Ashwin Naren <[email protected]>
Signed-off-by: Ashwin Naren <[email protected]>
This pr aims to be completed from scratch. It benefits from
Traversealready existing.This currently is a tracing stop-the-world gc, mainly because incremental garbage collecting is hard.
The general structure is based off of #4180 but the algorithm is not, as that pr had a blocking bug in it's algorithm.