diff options
author | Ivan Maidanski <ivmai@mail.ru> | 2018-04-14 09:26:03 +0300 |
---|---|---|
committer | Ivan Maidanski <ivmai@mail.ru> | 2018-04-14 09:26:03 +0300 |
commit | 1aabce0f9fd0324102d173192f7d48cf1cf25670 (patch) | |
tree | 3cbeb2d0c71a8aeac5905e70cf75606dc90c7f35 /doc | |
parent | 9b9b7e368ccb2c0833c5f861846a1925ccf84595 (diff) | |
download | bdwgc-1aabce0f9fd0324102d173192f7d48cf1cf25670.tar.gz |
Enable memory unmapping by default
Issue #152 (bdwgc).
* CMakeLists.txt (enable_munmap): New OPTION (on by default).
* CMakeLists.txt [enable_munmap] (USE_MMAP, USE_MUNMAP): Define macro.
* CMakeLists.txt [enable_checksums && enable_munmap): Issue MESSAGE
that CHECKSUMS is not compatible with USE_MUNMAP.
* configure.ac (AC_ARG_ENABLE(munmap)): Update the help message.
* configure.ac [$enable_munmap=""]: Treat as enable_munmap="yes".
* configure.ac [$MUNMAP_THRESHOLD=""]: Treat as MUNMAP_THRESHOLD="yes".
* doc/README.win32 (GNU Tools): Note about "--disable-munmap" option.
* doc/debugging.md (Unexpectedly Large Heap): Remove advice about
"--enable-munmap" option.
Diffstat (limited to 'doc')
-rw-r--r-- | doc/README.win32 | 2 | ||||
-rw-r--r-- | doc/debugging.md | 4 |
2 files changed, 2 insertions, 4 deletions
diff --git a/doc/README.win32 b/doc/README.win32 index 938ae6e1..3ff70007 100644 --- a/doc/README.win32 +++ b/doc/README.win32 @@ -71,7 +71,7 @@ configure (this will instruct make to compile with -D GC_DLL). Parallel marker is enabled by default; it could be disabled by "--disable-parallel-mark" option. -Memory unmapping could be enabled via "--enable-munmap". +Memory unmapping could be turned off by "--disable-munmap" option. Borland Tools ------------- diff --git a/doc/debugging.md b/doc/debugging.md index b714dfb2..28626807 100644 --- a/doc/debugging.md +++ b/doc/debugging.md @@ -125,9 +125,7 @@ Unexpected heap growth can be due to one of the following: symptom is that GC_dump() shows much of the heap as black-listed. 3. Heap fragmentation. This should never result in unbounded growth, but it may account for larger heaps. This is most commonly caused by allocation - of large objects. On some platforms it can be reduced by building with - `-DUSE_MUNMAP`, which will cause the collector to unmap memory corresponding - to pages that have not been recently used. + of large objects. 4. Per object overhead. This is usually a relatively minor effect, but it may be worth considering. If the collector recognizes interior pointers, object sizes are increased, so that one-past-the-end pointers are correctly |