#1737: Timing of GC runs
-----------------------+----------------------------------------------------
Reporter: nwellnhof | Type: patch
Status: new | Priority: normal
Milestone: | Component: core
Version: 2.6.0 | Severity: medium
Keywords: | Lang:
Patch: | Platform:
-----------------------+----------------------------------------------------
Currently, a GC run is triggered after 1MB of headers newly allocated
(GC_SIZE_THRESHOLD). Similarly for buffers. This causes memory allocation
to get slower the more memory a process consumes. Attached is patch that
sets this threshold dynamically to half of the memory currently used, so
the amortized cost of memory allocations stays roughly constant.
On my machine, a test script creating a hash with a million strings now
completes in 1.0 seconds instead of 2.7 before. Inserting two million
strings takes 2.0 seconds instead of 8.7.
--
Ticket URL: <https://trac.parrot.org/parrot/ticket/1737>
Parrot <https://trac.parrot.org/parrot/>
Parrot Development
_______________________________________________
parrot-tickets mailing list
[email protected]
http://lists.parrot.org/mailman/listinfo/parrot-tickets