Kernel mode NEON for XOR and RAID6
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest0 of 5 patches 0 repliesNew
Patches in v1 No applies recorded yet
None of the 5 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/5] Kernel mode NEON for XOR and RAID6
Quoted 23 lines · Nicolas Pitre
Quoted 8 lines · Will Deacon
Quoted 1 line · Ard Biesheuvel
Hi all,
Hi Ard,
Quoted 3 lines
This is a partial repost of the patches I proposed a couple of weeks ago to add support for VFP/NEON in kernel mode.
Quoted 7 lines
Quoted 3 lines
This time, I have included two use cases that I have been using, XOR and RAID-6 checksumming. The former gets a 60% performance boost on the NEON, the latter over 400%.
Whilst that sounds impressive, can you achieve similar results across all NEON-capable CPUs? In particular, we need to make sure this doesn't cause performance regressions on some cores.
Note that the kernel performs runtime benchmarking of all the different implementations it has available at boot time and selects the best one. So if this would turn out to make things worse on some cores then the Neon code would simply not be used.
Quoted 7 lines
Quoted 2 lines
Furthermore, do you have any power figures to complement your findings?
This is going to be most useful in server type environments where a bit more power is not such an issue but throughput is ... unless you start using RAID6 arrays on your phone that is. :-) Otherwise this can be left configured out for mobile targets.
Agreed. Any power difference will be noise for a server.
Rob
Quoted 25 lines
Quoted 4 lines
The increased context-switch overhead
is also worth measuring if you can (i.e. run some userspace NEON-based benchmarks in parallel with NEON and non-NEON implementations of the checksumming).Do we know the context switch cost of normal task scheduling between tasks using FP operations? The in-kernel Neon usage should bring about the same cost. Measuring it would be interesting albeit probably difficult.
Quoted 2 lines
We support building the kernel with older toolchains, so I don't see the benefit of using intrinsics here.
These days the compiler tends to do a better job than humans at properly scheduling instructions for some code. We shouldn't deprive ourselves from it when a recent enough gcc is available.
Nicolas
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel