On Fri, Jun 20, 2008 at 9:44 AM, Amaury Forgeot d'Arc <amauryfa at gmail.com> wrote: > 2008/6/20 Kevin Jacobs <jacobs at bioinformed.com> <bioinformed at gmail.com>: >> On Fri, Jun 20, 2008 at 10:25 AM, Antoine Pitrou <solipsis at pitrou.net> >> wrote: >>> >>> Kevin Jacobs <jacobs <at> bioinformed.com> <bioinformed <at> gmail.com> >>> writes: >>> > >>> > +1 on a C API for enabling and disabling GC. I have several instances >>> > where >>> I create a large number of objects non-cyclic objects where I see huge GC >>> overhead (30+ seconds with gc enabled, 0.15 seconds when disabled). >>> >>> Could you try to post a stripped-down, self-contained example of such >>> behaviour? >> >> $ python -m timeit 'zip(*[range(1000000)]*5)' >> 10 loops, best of 3: 496 msec per loop >> >> $ python -m timeit -s 'import gc; gc.enable()' 'zip(*[range(1000000)]*5)' >> 10 loops, best of 3: 2.93 sec per loop > > I remember that a similar issue was discussed some months ago: > http://bugs.python.org/issue2607 > > In short: the gc is tuned for typical usage. If your usage of python > is specific, > use gc.set_threshold and increase its values. For very large bursts of allocation, tuning is no different from disabling it outright, and disabling is simpler/more reliable. -- Adam Olsen, aka Rhamphoryncus
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