[dm-devel] Performance impact of CONFIG_DEBUG? direct-io test case

Dominik Brodowski linux at dominikbrodowski.net
Thu Aug 5 20:47:49 UTC 2010


How large is the performance impact of CONFIG_DEBUG? Well, for the test
workload I've been working with lately,

dd if=<device> of=/dev/zero bs=8k count=100000 iflag=direct

where <device> is a dm-crypted LVM volume consisting of several
partitions on a notebook pata harddisk, I get the following results:

1) best results are ~ 28 MB/s

2) Enabling CONFIG_DEBUG_LOCK_ALLOC, which also means CONFIG_LOCKDEP
   being enabled, causes the transfer rate to decrease by ~ 1.2 MB/s

3) Enabling CONFIG_DEBUG_SPINLOCK && CONFIG_DEBUG_MUTEXTES or
   CONFIG_DEBUG_SPINLOCK_SLEEP=y costs about ~ 0.4 MB/s each

4) Enabling all of the following options:
	CONFIG_DEBUG_RT_MUTEXES
	CONFIG_DEBUG_PI_LIST
	CONFIG_PROVE_LOCKING
	CONFIG_LOCK_STAT
	CONFIG_DEBUG_LOCKDEP
   costs another ~ 5 MB/s.

So, for this test case, the performance impact of (some) CONFIG_DEBUG
options is highly significant, here by about 25 %.

Best,
	Dominik




More information about the dm-devel mailing list