US11188460B2ActiveUtilityA1
Arena-based memory management
Assignee: MICROSOFT TECHNOLOGY LICENSING LLCPriority: Jun 18, 2018Filed: Jun 18, 2018Granted: Nov 30, 2021
Est. expiryJun 18, 2038(~11.9 yrs left)· nominal 20-yr term from priority
G06F 12/0253G06F 12/0246G06F 2212/1044G06F 2212/7205
53
PatentIndex Score
0
Cited by
5
References
20
Claims
Abstract
An arena-based memory management system is disclosed. In response to a call to reclaim memory storing a plurality of objects allocated in an arena, a garbage collection of the arena is triggered based on heap-related parameter. A live object of the plurality of objects is preserved with the garbage collection.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1. A method of controlling an arena-based memory management system, the method comprising:
allocating a plurality of objects into an arena in memory from a programmed allocation in an application, the arena reclaimable after a programmed deallocation in the application, the memory including the arena and a segment for collected managed objects;
triggering a garbage collection of the collected managed objects in response to a heap- related parameter of the segment for collected managed objects;
in response to a call in the application to reclaim memory storing a plurality of objects allocated in the arena, deallocating the arena with the garbage collection, the deallocation delayed until the garbage collection is triggered; and
preserving a live object of the plurality of objects with the garbage collection.
2. The method of claim 1 wherein the heap-related parameter includes a memory load that surpasses a threshold.
3. The method of claim 1 wherein the heap-related parameter includes a ratio of an arena size to a heap size that surpasses a threshold or a survival ratio of arena objects.
4. The method of claim 1 wherein the triggering of the garbage collection includes reclaiming the memory with the garbage collection.
5. The method of claim 1 wherein the triggering the garbage collection is in response to a plurality of calls to reclaim memory in a plurality of arenas.
6. The method of claim 5 wherein the preserving the live object includes preserving a plurality of live objects in the plurality of arenas.
7. The method of claim 1 wherein the heap-based parameter delays the triggering the garbage collection in response to the call to reclaim memory.
8. The method of claim 7 wherein the heap-based parameter delays the triggering the garbage collection in response to a plurality of calls to reclaim memory.
9. The method of claim 1 wherein the live object includes an accessible pointer from another arena.
10. The method of claim 1 wherein the garbage collection includes a tracing garbage collection.
11. The method of claim 1 wherein the preserving the live object includes comprising relocating the live object out of the arena.
12. An arena-based memory management system, comprising:
a memory device to store a set of instructions; and
a processor to execute the set of instructions to:
allocate a plurality of objects into an arena in memory from a programmed allocation in an application, the arena reclaimable after a programmed deallocation in the application, the memory including the arena and a segment for collected managed objects;
trigger a garbage collection of the collected managed objects in response to a heap-related parameter of the segment for collected managed objects;
in response to a call in the application to reclaim memory storing a plurality of objects allocated in the arena, deallocate the arena with the garbage collection, deallocation delayed until the garbage collection is triggered; and
preserve a live object of the plurality of objects with the garbage collection.
13. The system of claim 12 wherein the heap-related parameter is based on a capacity of heap memory.
14. The system of claim 13 wherein the wherein the heap-related parameter includes a memory load that surpasses a threshold.
15. The system of claim 13 wherein the arena occupies a size that is a percentage of the heap.
16. The system of claim 12 wherein the heap-based parameter delays the trigger of the garbage collection in response to a plurality of calls to reclaim memory.
17. The system of claim 12 wherein the trigger of the garbage collection includes reclamation of the memory with the garbage collection.
18. A computer readable device to store computer readable instructions to control a processor to control an arena-based memory, the instructions comprising:
allocate a plurality of objects into an arena in memory from a programmed allocation in an application, the arena reclaimable after a programmed deallocation in the application, the memory including the arena and a segment for collected managed objects;
trigger a garbage collection of the collected managed objects in response to a heap-related parameter of the segment for collected managed objects;
in response to a call in the application to reclaim memory storing a plurality of objects allocated in the arena, deallocate the arean with the garbage collection, the deallocation delayed until the garbage collection is triggered; and
preserve a live object of the plurality of objects with the garbage collection.
19. The computer readable device of claim 18 wherein the heap-related parameter is based on a capacity of heap memory.
20. The computer readable device of claim 18 wherein the live object is relocated in a heap out of the arena.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.