On 6 May 2011 19:57, David Gilbert david.gilbert@linaro.org wrote:
2011/5/6 Christian Robottom Reis kiko@linaro.org: I don't think there are that many things that are vastly useful for the kernel, but here is a summary (I intend to write a full report at some point but am still fighting SPEC for some benchmark stats and some of the corner cases of these routines)
Along those lines, I'm going to again refer to Altivec use in other kernels/OSes, perhaps it might give some ideas to people:
http://cvsweb.netbsd.org/bsdweb.cgi/src/sys/arch/powerpc/oea/altivec.c?rev=1...
In NetBSD/powerpc, Altivec is used for vm page zeroing and copying. I don't really know the speed gains, but given altivec's bus to L2 cache was 128 bits (compared to 32-bits of the integer unit) I guess it was probably worth to incorporate such a change. (No, I don't have NetBSD installed, but I did code Altivec for 5 years so I know some things in detail.)
I'm just mentioning this without knowing if this is actually possible or relevant in the Linux kernel. If it isn't, just ignore my post :)
Regards
Konstantinos