
On Wed, Jan 05, 2022 at 01:59:21PM -0800, Trent Nelson wrote:
I did some research on this a few years back. I was curious what sort of "max reference counts" were encountered in the wild, in long-running real life programs. For the same reason: I wanted to get some insight into how many unused bits could possibly be repurposed for future shenanigans (I had PyParallel* in the mind at the time).
I added some logic to capture* the max reference counts of the None, True, and Zero objects (in a trace callback), then ran a really long simulation program of a client's (it ran for about 5-6 hours). The results were as follows:
MaxNoneRefCount 9,364,132 MaxTrueRefCount 204,215 MaxZeroRefCount 36,784
Just double-checked my results, there were a handful of runs with higher counts: MaxNoneRefCount 59,834,444 MaxTrueRefCount 1,072,467 MaxZeroRefCount 3,460,921 Regards, Trent.