Messages in this thread | | | Date | Thu, 3 Oct 2013 20:28:45 +0200 | From | Borislav Petkov <> | Subject | Re: [PATCH 1/1] x86_64: add config options to optimize for newer AMD processors |
| |
On Thu, Oct 03, 2013 at 02:12:07PM -0400, Austin S Hemmelgarn wrote: > Part of the difference between our results may be that I have my > entire userspace built with -mtune=bdver2, so less of the time is > spent in userspace.
That still cannot explain the huge difference between building on a mk8 vs bdver2 kernel. Provided your userspace is the same and only the kernels are different, I don't see how that happens.
Btw, you could run my workload on your machine, once on an mk8 kernel and once on a bdver2 one.
The contents of the pre-build-kernel.sh script are:
-- #!/bin/bash
make -s clean echo 3 > /proc/sys/vm/drop_caches --
Of course, you need to run this as root.
> Also, the part about using many more threads than cpu cores was with > regards to sysbench, not the kernel build, for that I just used 8 jobs > in make.
Overcommitting gcc threads does not bring a really a big difference with a kernel build.
> With regards to the differences shown above relative to CONFIG_MK8, > that does actually make sense; with CONFIG_MK8, gcc makes very minimal > use of extension instructions (afaik, only MMX, SSE, and 3Dnow!), this > improves performance slightly on bulldozer derivatives because there > are only half as many SSE and FP units as CPU cores (and the
yes, the FPU is shared between the cores of a compute unit on BD.
> scheduler isn't as smart as it could be with regards to that, but that > is something for another patch as far as I am concerned).
Again, with unchanging userspace and only differing kernels, you shouldn't be seeing such a big difference. Besides, the kernel itself makes very little, if at all, use of FPU instructions.
-- Regards/Gruss, Boris.
Sent from a fat crate under my desk. Formatting is fine. --
| |