Adding PyGC_CollectIfEnabled() and calling it in Py_Finalize is probably fine. I don't think the contract of PyGC_Collect itself (or gc.collect() for that matter) should be changed. You might want to disable GC but invoke it yourself. On Mon, May 9, 2016, at 19:13, Łukasz Langa wrote: > Is this deliberate? Could we change it for 3.6 so PyGC_Collect does take > `enabled` into account? > > Context: we’re experimenting with disabling the gc entirely for some > workloads because it doesn’t fare too well with Copy-on-Write on Linux. > What ends up happening is that disabling the gc actually drops memory > usage significantly if you’re using hundreds of the same processes on one > box :-) > > However, because of PyGC_Collect() called in Py_Finalize(), during > interpreter shutdown the collection is done anyway, Linux does CoW and > the memory usage spikes. Which is ironic on process shutdown. > > -- > Lukasz Langa | Facebook > Production Engineer | The Ministry of Silly Walks > (+1) 650-681-7811 > > _______________________________________________ > Python-Dev mailing list > Python-Dev at python.org > https://mail.python.org/mailman/listinfo/python-dev > Unsubscribe: > https://mail.python.org/mailman/options/python-dev/benjamin%40python.org > Email had 1 attachment: > + signature.asc > 1k (application/pgp-signature)
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4