diff options
author | George Steed <george.steed@arm.com> | 2023-02-07 12:16:00 +0000 |
---|---|---|
committer | George Steed <george.steed@arm.com> | 2023-02-28 11:33:21 +0000 |
commit | 360e9069b6cc1dd3a004728b876fb923413f4b11 (patch) | |
tree | 3b594cc6f60aaf095ff4d56152b857b1179dea64 /vpx_dsp/ssim.h | |
parent | a7ab16aed1d75869c5fd096374a91698b419c1a7 (diff) | |
download | libvpx-360e9069b6cc1dd3a004728b876fb923413f4b11.tar libvpx-360e9069b6cc1dd3a004728b876fb923413f4b11.tar.gz libvpx-360e9069b6cc1dd3a004728b876fb923413f4b11.tar.bz2 libvpx-360e9069b6cc1dd3a004728b876fb923413f4b11.zip |
Implement d117_predictor using Neon
Add Neon implementations of the d117 predictor for 4x4, 8x8, 16x16 and
32x32 block sizes. Also update tests to add new corresponding cases.
An explanation of the general implementation strategy is given in the
8x8 implementation body.
Speedups over the C code (higher is better):
Microarch. | Compiler | Block | Speedup
Neoverse N1 | LLVM 15 | 4x4 | 1.73
Neoverse N1 | LLVM 15 | 8x8 | 5.24
Neoverse N1 | LLVM 15 | 16x16 | 9.77
Neoverse N1 | LLVM 15 | 32x32 | 14.13
Neoverse N1 | GCC 12 | 4x4 | 2.04
Neoverse N1 | GCC 12 | 8x8 | 4.70
Neoverse N1 | GCC 12 | 16x16 | 8.64
Neoverse N1 | GCC 12 | 32x32 | 4.57
Neoverse V1 | LLVM 15 | 4x4 | 1.75
Neoverse V1 | LLVM 15 | 8x8 | 6.79
Neoverse V1 | LLVM 15 | 16x16 | 9.16
Neoverse V1 | LLVM 15 | 32x32 | 14.47
Neoverse V1 | GCC 12 | 4x4 | 1.75
Neoverse V1 | GCC 12 | 8x8 | 6.00
Neoverse V1 | GCC 12 | 16x16 | 7.63
Neoverse V1 | GCC 12 | 32x32 | 4.32
Change-Id: I7228327b5be27ee7a68deecafa05be0bd2a40ff4
Diffstat (limited to 'vpx_dsp/ssim.h')
0 files changed, 0 insertions, 0 deletions