summaryrefslogtreecommitdiff
path: root/doc/README.environment
diff options
context:
space:
mode:
Diffstat (limited to 'doc/README.environment')
-rw-r--r--doc/README.environment44
1 files changed, 44 insertions, 0 deletions
diff --git a/doc/README.environment b/doc/README.environment
new file mode 100644
index 0000000..5760342
--- /dev/null
+++ b/doc/README.environment
@@ -0,0 +1,44 @@
+The garbage collector looks at a number of environment variables which are
+the used to affect its operation. These are examined only on Un*x-like
+platforms.
+
+GC_INITIAL_HEAP_SIZE=<bytes> - Initial heap size in bytes. May speed up
+ process start-up.
+
+GC_LOOP_ON_ABORT - Causes the collector abort routine to enter a tight loop.
+ This may make it easier to debug, such a process, especially
+ for multithreaded platforms that don't produce usable core
+ files, or if a core file would be too large. On some
+ platforms, this also causes SIGSEGV to be caught and
+ result in an infinite loop in a handler, allowing
+ similar debugging techniques.
+
+GC_PRINT_STATS - Turn on as much logging as is easily feasible without
+ adding signifcant runtime overhead. Doesn't work if
+ the collector is built with SMALL_CONFIG. Overridden
+ by setting GC_quiet. On by default if the collector
+ was built without -DSILENT.
+
+GC_PRINT_ADDRESS_MAP - Linux only. Dump /proc/self/maps, i.e. various address
+ maps for the process, to stderr on every GC. Useful for
+ mapping root addresses to source for deciphering leak
+ reports.
+
+GC_NPROCS=<n> - Linux w/threads only. Explicitly sets the number of processors
+ that the GC should expect to use. Note that setting this to 1
+ when multiple processors are available will preserve
+ correctness, but may lead to really horrible performance.
+
+GC_NO_BLACKLIST_WARNING - Prevents the collector from issuing
+ "Needed to allocate blacklisted block at ..." warnings.
+
+The following turn on runtime flags that are also program settable. Checked
+only during initialization. We expect that they will usually be set through
+other means, but this may help with debugging and testing:
+
+GC_FIND_LEAK - Turns on GC_find_leak and thus leak detection.
+
+GC_ALL_INTERIOR_POINTERS - Turns on GC_all_interior_pointers and thus interior
+ pointer recognition.
+
+GC_DONT_GC - Turns off garbage collection. Use cautiously.