Skip to content

Add the 'btree' benchmark. #381

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open

Conversation

nascheme
Copy link
Member

@nascheme nascheme commented Jan 30, 2025

This adds a new benchmark that's intended to be a better exercise for the cyclic garbage collector, compared with the existing benchmarks in the suite. The intention is to simulate an application that processes a large number of Python objects in memory, with some relatively complex set of references linking them together. The set of objects should a mixture of GC (container) and non-GC objects since that kind of mixture would be typical in many applications. I initially had the NUM_NODES parameter set to 3,000,000. However, in order to keep the running time down and reduce memory usage, I decreased it to 200,000.

I should note that this benchmark doesn't exercise the GC in terms of breaking reference cycles. The create_gc_cycles is kind of a micro benchmark of that. I'd like to add an additional benchmark that more closely simulates an application that creates a bunch of objects but only some of them are cyclic garbage. That would be separate from this PR though.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants