Hi Siarhei, On Fri, Jul 02, 2010, Siarhei Siamashka wrote: > This patch series adds a bunch of ARM assembly optimizations. > > Now all the functions from 'sbc_primitives.c' got NEON optimized > variants. As benchmarked with the common A2DP case (44100kHz audio > with bitpool set to 53, 8 subbands, joint stereo), SBC encoding is > now approximately 1.6x faster overall when compared to bluez-4.66. > Some more room for improvement still exists though. > > For ARMv6 processors, only analysis filter has been implemented > (using dual 16-bit multiply-accumulate instructions). But that's > the most important optimization and it doubles performance already. > And older processors such as ARM11 are much slower, so they > definitely benefit more on a relative scale (Nokia N800/N810 users > may find this update useful). > > All the optimizations are bitexact. Given the same input, they provide > the same output as the SBC encoder from the previous bluez versions. > > Patches are also available in the branch 'sbc-arm-optimizations' here: > git://gitorious.org/system-performance/bluez-sbc.git > > Siarhei Siamashka (5): > sbc: ARM NEON optimized joint stereo processing in SBC encoder > sbc: ARM NEON optimizations for input permutation in SBC encoder > sbc: slightly faster 'sbc_calc_scalefactors_neon' > sbc: faster 'sbc_calculate_bits' function > sbc: ARMv6 optimized version of analysis filter for SBC encoder > > Makefile.am | 3 +- > sbc/sbc.c | 43 ++- > sbc/sbc_primitives.c | 4 + > sbc/sbc_primitives_armv6.c | 299 +++++++++++++++++++++ > sbc/sbc_primitives_armv6.h | 52 ++++ > sbc/sbc_primitives_neon.c | 618 ++++++++++++++++++++++++++++++++++++++++++- > 6 files changed, 988 insertions(+), 31 deletions(-) > create mode 100644 sbc/sbc_primitives_armv6.c > create mode 100644 sbc/sbc_primitives_armv6.h Thanks for these! They've all been pushed upstream now. Johan -- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html