Optimize Armv8.0 Neon impl of filter_intra_predictor_neon

Description

Improve Armv8.0 Neon intra predictor performance by transposing and using absolute kernel values to enable 8-bit multiplies and by sourcing inputs directly from dst to remove unnecessary memory read/write and intermediate buffer.

Overall uplift compared to old Neon Armv8.0 version is up to 68%

CC: @jwright-arm

Issue

Author(s)

Gerda Zsejke More <gerdazsejke.more@arm.com>

Performance impact

  • quality
  • memory
  • speed
  • 8 bit
  • 10 bit
  • N/A

Test set

  • obj-1-fast can be found here
  • other
  • N/A

Merge method

  • Allow the maintainer to squash and merge when PR is ready to create a 1-commit to the master branch. The maintainer will be able to fix typos / combine commit messages to create a more readable 1-commit message or use whatever is stated in the 'Description' section
  • I will clean up my commits and the maintainer shall use 'rebase and merge' to the master branch

Merge request reports

Loading