diff options
author | Jemma Issroff <jemmaissroff@gmail.com> | 2021-09-20 14:40:55 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-09-20 14:40:55 -0400 |
commit | 2a9876a885ba671178458e7fa98738eb8aa21420 (patch) | |
tree | e4505c379cebf4d0cab90fe57617cda78ef0094f /gc.rb | |
parent | 9770bf23b7a273246b9a6b084e79a8fb6fc1af11 (diff) |
Enhance documentation on GC.stat (#4843)
Notes
Notes:
Merged-By: peterzhu2118 <peter@peterzhu.ca>
Diffstat (limited to 'gc.rb')
-rw-r--r-- | gc.rb | 86 |
1 files changed, 56 insertions, 30 deletions
@@ -128,39 +128,65 @@ module GC # # Returns a Hash containing information about the GC. # - # The hash includes information about internal statistics about GC such as: - # - # { - # :count=>0, - # :heap_allocated_pages=>24, - # :heap_sorted_length=>24, - # :heap_allocatable_pages=>0, - # :heap_available_slots=>9783, - # :heap_live_slots=>7713, - # :heap_free_slots=>2070, - # :heap_final_slots=>0, - # :heap_marked_slots=>0, - # :heap_eden_pages=>24, - # :heap_tomb_pages=>0, - # :total_allocated_pages=>24, - # :total_freed_pages=>0, - # :total_allocated_objects=>7796, - # :total_freed_objects=>83, - # :malloc_increase_bytes=>2389312, - # :malloc_increase_bytes_limit=>16777216, - # :minor_gc_count=>0, - # :major_gc_count=>0, - # :remembered_wb_unprotected_objects=>0, - # :remembered_wb_unprotected_objects_limit=>0, - # :old_objects=>0, - # :old_objects_limit=>0, - # :oldmalloc_increase_bytes=>2389760, - # :oldmalloc_increase_bytes_limit=>16777216 - # } - # # The contents of the hash are implementation specific and may be changed in # the future. # + # The hash includes information about internal statistics about GC such as: + # + # [count] + # The total number of garbage collections ran since application start + # (count includes both minor and major garbage collections) + # [heap_allocated_pages] + # The total number of `:heap_eden_pages` + `:heap_tomb_pages` + # [heap_sorted_length] + # The number of pages that can fit into the buffer that holds references to + # all pages + # [heap_allocatable_pages] + # The total number of pages the application could allocate without additional GC + # [heap_available_slots] + # The total number of slots in all `:heap_allocated_pages` + # [heap_live_slots] + # The total number of slots which contain live objects + # [heap_free_slots] + # The total number of slots which do not contain live objects + # [heap_final_slots] + # The total number of slots with pending finalizers to be run + # [heap_marked_slots] + # The total number of objects marked in the last GC + # [heap_eden_pages] + # The total number of pages which contain at least one live slot + # [heap_tomb_pages] + # The total number of pages which do not contain any live slots + # [total_allocated_pages] + # The cumulative number of pages allocated since application start + # [total_freed_pages] + # The cumulative number of pages freed since application start + # [total_allocated_objects] + # The cumulative number of objects allocated since application start + # [total_freed_objects] + # The cumulative number of objects freed since application start + # [malloc_increase_bytes] + # Amount of memory allocated on the heap for objects. Decreased by any GC + # [malloc_increase_bytes_limit] + # When `:malloc_increase_bytes` crosses this limit, GC is triggered + # [minor_gc_count] + # The total number of minor garbage collections run since process start + # [major_gc_count] + # The total number of major garbage collections run since process start + # [remembered_wb_unprotected_objects] + # The total number of objects without write barriers + # [remembered_wb_unprotected_objects_limit] + # When `:remembered_wb_unprotected_objects` crosses this limit, + # major GC is triggered + # [old_objects] + # Number of live, old objects which have survived at least 3 garbage collections + # [old_objects_limit] + # When `:old_objects` crosses this limit, major GC is triggered + # [oldmalloc_increase_bytes] + # Amount of memory allocated on the heap for objects. Decreased by major GC + # [oldmalloc_increase_bytes_limit] + # When `:old_malloc_increase_bytes` crosses this limit, major GC is triggered + # # If the optional argument, hash, is given, # it is overwritten and returned. # This is intended to avoid probe effect. |