summaryrefslogtreecommitdiffstats
path: root/config
diff options
context:
space:
mode:
authorBrian Behlendorf <[email protected]>2015-07-20 12:18:56 -0700
committerBrian Behlendorf <[email protected]>2015-07-21 11:47:10 -0700
commit9eb361aaa537724c9a90ab6a9f33521bfd80bad9 (patch)
treee42f5c6f639cf2bac26d4516b4be24143dfa0c5c /config
parent37d7cd94f326896ffbd3f7609a20562c000cd4c8 (diff)
Default to --disable-debug-kmem
The default kmem debugging (--enable-debug-kmem) can severely impact performance on large-scale NUMA systems due to the atomic operations used in the memory accounting. A 32-thread fio test running on a 40-core 80-thread system and performing 100% cached reads with kmem debugging is: Enabled: READ: io=177071MB, aggrb=2951.2MB/s, minb=2951.2MB/s, maxb=2951.2MB/s, Disabled: READ: io=271454MB, aggrb=4524.4MB/s, minb=4524.4MB/s, maxb=4524.4MB/s, Signed-off-by: Brian Behlendorf <[email protected]> Signed-off-by: Tim Chase <[email protected]> Issues #463
Diffstat (limited to 'config')
-rw-r--r--config/spl-build.m47
1 files changed, 3 insertions, 4 deletions
diff --git a/config/spl-build.m4 b/config/spl-build.m4
index 9999d480d..daa9eb714 100644
--- a/config/spl-build.m4
+++ b/config/spl-build.m4
@@ -452,15 +452,14 @@ dnl #
dnl # Enabled by default it provides a minimal level of memory tracking.
dnl # A total count of bytes allocated is kept for each alloc and free.
dnl # Then at module unload time a report to the console will be printed
-dnl # if memory was leaked. Additionally, /proc/spl/kmem/slab will exist
-dnl # and provide an easy way to inspect the kmem based slab.
+dnl # if memory was leaked.
dnl #
AC_DEFUN([SPL_AC_DEBUG_KMEM], [
AC_ARG_ENABLE([debug-kmem],
[AS_HELP_STRING([--enable-debug-kmem],
- [Enable basic kmem accounting @<:@default=yes@:>@])],
+ [Enable basic kmem accounting @<:@default=no@:>@])],
[],
- [enable_debug_kmem=yes])
+ [enable_debug_kmem=no])
AS_IF([test "x$enable_debug_kmem" = xyes],
[