[RFC PATCH v1 0/3] Introducing ARM SIMD Support
Viswanath Puttagunta <[email protected]> Wed, 10 Sep 2014 14:15:06 -0500
| Newsgroups | gmane.comp.multimedia.ogg.vorbis.devel |
|---|---|
| Message-ID | <1410376509-12148-1-git-send-email-viswanath.puttagunta@linaro.org> |
libvorbis does not currently have any simd/vectorization. Following patches add generic framework for simd/vectorization and on top, add ARM-NEON simd vectorization using intrinsics. I was able to get over 34% performance improvement on my Beaglebone Black which is single Cortex-A8 based CPU. You can find more information on metrics and procedure I used to measure at https://wiki.linaro.org/WorkingGroups/Middleware/Graphics/MediaLibs/libvorbis As described in above link/doc, you can see my work-in-progress tree at https://git.linaro.org/people/viswanath.puttagunta/vorbis.git Also what standard should one follow when submitting patches to libvorbis? I'm pretty sure linux kernel checkpatch.pl will fail all patches for libvorbis. Please advise. Viswanath Puttagunta (3): lib/simd: Introduce vectorization framework for libvorbis lib/block.c: Use optimized routine for wave_operation mdct: implement arm simd implementation for mdct configure.ac | 5 ++ lib/Makefile.am | 6 +- lib/block.c | 14 ++--- lib/mdct.c | 102 +------------------------------- lib/simd/Makefile.am | 9 +++ lib/simd/neon_simd.c | 158 ++++++++++++++++++++++++++++++++++++++++++++++++++ lib/simd/no_simd.c | 129 +++++++++++++++++++++++++++++++++++++++++ lib/simd/simd.h | 40 +++++++++++++ 8 files changed, 351 insertions(+), 112 deletions(-) create mode 100644 lib/simd/Makefile.am create mode 100644 lib/simd/neon_simd.c create mode 100644 lib/simd/no_simd.c create mode 100644 lib/simd/simd.h -- 1.7.9.5