[opus] [RFC PATCHv3] Encode optimize using libNe10

Viswanath Puttagunta viswanath.puttagunta at linaro.org
Tue Mar 3 12:56:02 PST 2015


Timothy,

FYI, I got Phil @ ARM to independently verify for any compile/link
warning/errors and he said he did not find any... And since I haven't
heard from you for a week, I went ahead and pushed RFCv3.

Please let me know if any actions are pending.

I will start working on mdct_backward and fixed point fft for ARMv7.

Regards,
Vish

On 3 March 2015 at 14:51, Viswanath Puttagunta
<viswanath.puttagunta at linaro.org> wrote:
>
> Changes from RFC PATCH v2
>
> - fixed compile issue when just compiling for --enable-intrinsics
>   for ARMv7 without NE10
>
> - Notes for NE10:
>   - All compile/link warnings are now in upstream NE10
>   - Only patch pending upstream in NE10 is the one that
>     needs to add -funsafe-math-optimizations for ARMv7
>     targets.
>   - Phil Wang @ ARM is working on getting this fixed.
>   - Note that even without this patch, stuff should compile
>     and link without any warnings and run without errors
>   - Only that for ARMv7 targets performance will not be
>     improved.
>   - For my performance testing, see my wip Ne10 branch
>     below that applies -funsafe-math-optimizations
>
> - For references below are my wip trees for this RFCv3 patch
>   https://git.linaro.org/people/viswanath.puttagunta/opus.git
>   Branch: rfcv3_final_opus_fft_ne10
>
>   https://git.linaro.org/people/viswanath.puttagunta/Ne10.git
>   rfcv3_final_ne10_fft
>
> Viswanath Puttagunta (1):
>   armv7(float): Optimize encode usecase using NE10 library
>
>  Makefile.am                           |  34 +--
>  celt/arm/arm_celt_map.c               |  47 +++-
>  celt/arm/celt_ne10_fft.c              | 120 ++++++++++
>  celt/arm/celt_ne10_mdct.c             | 158 +++++++++++++
>  celt/arm/fft_arm.h                    |  66 ++++++
>  celt/arm/mdct_arm.h                   |  53 +++++
>  celt/celt_encoder.c                   |  13 +-
>  celt/dump_modes/Makefile              |  23 +-
>  celt/dump_modes/dump_modes.c          |  21 ++
>  celt/dump_modes/dump_modes_arch.h     |  41 ++++
>  celt/dump_modes/dump_modes_arm_ne10.c | 125 +++++++++++
>  celt/kiss_fft.c                       |  27 ++-
>  celt/kiss_fft.h                       |  54 ++++-
>  celt/mdct.c                           |  15 +-
>  celt/mdct.h                           |  39 +++-
>  celt/modes.c                          |   8 +-
>  celt/static_modes_float.h             |  25 +++
>  celt/static_modes_float_arm_ne10.h    | 404 ++++++++++++++++++++++++++++++++++
>  celt/tests/test_unit_dft.c            |  52 +++--
>  celt/tests/test_unit_mathops.c        |   6 +
>  celt/tests/test_unit_mdct.c           |  82 ++++---
>  celt/tests/test_unit_rotation.c       |   6 +
>  celt_headers.mk                       |   3 +
>  celt_sources.mk                       |   4 +
>  configure.ac                          |  81 +++++++
>  src/analysis.c                        |   8 +-
>  src/analysis.h                        |   2 +-
>  src/opus_encoder.c                    |   2 +-
>  src/opus_multistream_encoder.c        |   9 +-
>  29 files changed, 1423 insertions(+), 105 deletions(-)
>  create mode 100644 celt/arm/celt_ne10_fft.c
>  create mode 100644 celt/arm/celt_ne10_mdct.c
>  create mode 100644 celt/arm/fft_arm.h
>  create mode 100644 celt/arm/mdct_arm.h
>  create mode 100644 celt/dump_modes/dump_modes_arch.h
>  create mode 100644 celt/dump_modes/dump_modes_arm_ne10.c
>  create mode 100644 celt/static_modes_float_arm_ne10.h
>
> --
> 1.9.1
>


More information about the opus mailing list