For some reason, this post from INADA Naoki shows up on the python-list email archives, but not comp.lang.python, which is what I use.
INADA Naoki wrote at Sat May 14 10:32:12 EDT 2016: > Mark and Sweep GC is triggered when many new **tracked** objects are > created and not destroyed. > > Since integer doesn't have reference to another objects, it's not tracked > object. So your sample code doesn't show difference of GC. > You can see gc stats via gc.set_debug(gc.DEBUG_STATS). Thanks for the explanation! So lists, tuples, sets etc would all be tracked? Following the suggestion to use this code: class Tree: def __init__(self, n): if n > 0: self.a = Tree(n-1) self.b = Tree(n-1) self.n = n def main(): for _ in range(10): Tree(16) I can see a significant difference in performance. With the gc on, running main() on my computer takes 11.2 seconds, with the gc off, it takes 7.5 seconds. Nice, and thank you! -- Steven -- https://mail.python.org/mailman/listinfo/python-list