Description
Macaulay2 uses the Hans Boehm garbage collector to reclaim unused memory. The function GCstats provides information about its status.
i1 : s = GCstats()
o1 = HashTable{"don't expand" => false }
"finalize on demand" => false
"full freq" => 19
"GC_ALL_INTERIOR_POINTERS" =>
"GC_all_interior_pointers" => 1
"GC_BACKTRACES" =>
"GC_DISABLE_INCREMENTAL" =>
"GC_DONT_GC" =>
"GC_DUMP_REGULARLY" =>
"GC_ENABLE_INCREMENTAL" =>
"GC_FIND_LEAK" =>
"GC_FORCE_UNMAP_ON_GCOLLECT" =>
"GC_FREE_SPACE_DIVISOR" =>
"GC_free_space_divisor" => 12
"GC_FULL_FREQUENCY" =>
"GC_IGNORE_GCJ_INFO" =>
"GC_INITIAL_HEAP_SIZE" =>
"GC_LARGE_ALLOC_WARN_INTERVAL" => 1
"GC_LOG_FILE" =>
"GC_LOOP_ON_ABORT" =>
"GC_MARKERS" =>
"GC_MAXIMUM_HEAP_SIZE" =>
"GC_NO_BLACKLIST_WARNING" =>
"GC_NPROCS" =>
"GC_PAUSE_TIME_TARGET" =>
"GC_PRINT_ADDRESS_MAP" =>
"GC_PRINT_BACK_HEIGHT" =>
"GC_PRINT_STATS" =>
"GC_PRINT_VERBOSE_STATS" =>
"GC_RETRY_SIGNALS," =>
"GC_TRACE" =>
"GC_UNMAP_THRESHOLD" =>
"GC_USE_GETWRITEWATCH" =>
"heap size" => 128503808
"java finalization" => true
"max retries" => 0
"number of collections" => 1052
"parallel" => true
"time limit" => 999999
o1 : HashTable
|
The value returned is a hash table, from which individual bits of information can be easily extracted, as follows.
i2 : s#"heap size"
o2 = 128503808
|
The entries whose keys are upper case give the values of environment variables affecting the operation of the garbage collector that have been specified by the user.
For further information about the individual items in the table, we refer the user to the source code and documentation of the garbage collector.