Performance impact of CONFIG_DEBUG? direct-io test case
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:
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 %.
dm-devel mailing list