On Mon, Jul 01, 2013 at 01:11:22PM +0200, Ingo Molnar wrote: > Hm, a 6 seconds win looks _way_ too much - we don't execute that much > mutex code, let alone a portion of it. > > This could perhaps be a bootup-to-bootup cache layout systematic jitter > artifact, which isn't captured by stddev observations? > > Doing something like this with a relatively fresh version of perf: > > perf stat --repeat 10 -a --sync \ > --pre 'make -s O=defconfig-build/ clean; echo 1 > > /proc/sys/vm/drop_caches' \ > make -s -j64 O=defconfig-build/ bzImage > > ... might do the trick (untested!). (Also note the use of -a: this should > run on an otherwise quiescent system.)
Yep, I didn't run -a since I wanted to trace only the build process. Btw, the build-kernel.sh script looks like this: #!/bin/bash NUM_CPUS=$(cat /proc/cpuinfo | grep processor | wc -l) MAKE_OPTS=-j$(($NUM_CPUS+1)) echo 3 > /proc/sys/vm/drop_caches make $MAKE_OPTS mrproper make $MAKE_OPTS oldconfig make $MAKE_OPTS <EOF> Let me try your perf tracing variant. > As a sidenote, we could add this as a convenience feature, triggered via: > > perf stat --flush-vm-caches > > ... or so, in addition to the already existing --sync option. Is this something which we want to use a lot? Also, there's 1, 2 and 3 as arg to drop_caches: drop_caches Writing to this will cause the kernel to drop clean caches, dentries and inodes from memory, causing that memory to become free. To free pagecache: echo 1 > /proc/sys/vm/drop_caches To free dentries and inodes: echo 2 > /proc/sys/vm/drop_caches To free pagecache, dentries and inodes: echo 3 > /proc/sys/vm/drop_caches -- Regards/Gruss, Boris. Sent from a fat crate under my desk. Formatting is fine. -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/