Update dav1d to new version a6878be7e07114f5a2915ad46300700f0db55197 from 2024-01-30
Categories
(Core :: Audio/Video: Playback, enhancement)
Tracking
()
| Tracking | Status | |
|---|---|---|
| firefox124 | --- | fixed |
People
(Reporter: update-bot, Assigned: chunmin)
Details
(Whiteboard: [3pl-filed][task_id: TJKEXKGvS-a17iYXTI9wPQ])
Attachments
(1 file, 1 obsolete file)
This update covers 28 commits. Here are the overall diff statistics, and then the commit information.
media/libdav1d/moz.yaml | 4 +-
media/libdav1d/vcs_version.h | 2 +-
third_party/dav1d/include/common/attributes.h | 2 +-
third_party/dav1d/meson.build | 10 +-
third_party/dav1d/src/cpu.c | 2 +
third_party/dav1d/src/cpu.h | 2 +
third_party/dav1d/src/itx_tmpl.c | 5 +
third_party/dav1d/src/loongarch/cpu.c | 47 +
third_party/dav1d/src/loongarch/cpu.h | 37 +
third_party/dav1d/src/loongarch/itx.S | 8104 ++++++++++++++++
third_party/dav1d/src/loongarch/itx.h | 195 +
third_party/dav1d/src/loongarch/loongson_asm.S | 776 +
third_party/dav1d/src/loongarch/loopfilter.S | 1108 ++
third_party/dav1d/src/loongarch/loopfilter.h | 52 +
third_party/dav1d/src/loongarch/looprestoration.S | 1407 ++
third_party/dav1d/src/loongarch/looprestoration.h | 78 +
third_party/dav1d/src/loongarch/looprestoration_tmpl.c | 274 +
third_party/dav1d/src/loongarch/mc.S | 4758 +++++++++
third_party/dav1d/src/loongarch/mc.h | 118 +
third_party/dav1d/src/loongarch/msac.S | 368 +
third_party/dav1d/src/loongarch/msac.h | 46 +
third_party/dav1d/src/loongarch/refmvs.S | 152 +
third_party/dav1d/src/loongarch/refmvs.h | 44 +
third_party/dav1d/src/loopfilter_tmpl.c | 4 +
third_party/dav1d/src/looprestoration_tmpl.c | 4 +
third_party/dav1d/src/mc_tmpl.c | 4 +
third_party/dav1d/src/meson.build | 18 +
third_party/dav1d/src/msac.h | 2 +
third_party/dav1d/src/qm.c | 1499 +--
third_party/dav1d/src/refmvs.c | 4 +
third_party/dav1d/src/refmvs.h | 1 +
third_party/dav1d/src/x86/ipred.h | 2 +-
third_party/dav1d/src/x86/ipred16_avx512.asm | 659 +-
33 files changed, 18299 insertions(+), 1489 deletions(-)
e2c7a4408b78a05460cea2b98afbca9048567f14 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/e2c7a4408b78a05460cea2b98afbca9048567f14
Authored: 2024-01-15 15:12:23 +0100
Committed: 2024-01-22 12:02:28 +0000
x86: Add high bit-depth ipred z3 AVX-512 (Ice Lake) asm
Files Modified:
- src/x86/ipred.h
- src/x86/ipred16_avx512.asm
110c23f68cc5237903b8b79264bf3d70fe85a556 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/110c23f68cc5237903b8b79264bf3d70fe85a556
Authored: 2023-12-01 19:54:41 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of itx_8bpc.add_64x64 functions
Relative speedup over C code:
inv_txfm_add_64x64_dct_dct_0_8bpc_c: 485.6 ( 1.00x)
inv_txfm_add_64x64_dct_dct_0_8bpc_lsx: 20.3 (23.89x)
inv_txfm_add_64x64_dct_dct_1_8bpc_c: 4547.4 ( 1.00x)
inv_txfm_add_64x64_dct_dct_1_8bpc_lsx: 363.9 (12.50x)
inv_txfm_add_64x64_dct_dct_2_8bpc_c: 4547.5 ( 1.00x)
inv_txfm_add_64x64_dct_dct_2_8bpc_lsx: 363.8 (12.50x)
inv_txfm_add_64x64_dct_dct_3_8bpc_c: 4547.9 ( 1.00x)
inv_txfm_add_64x64_dct_dct_3_8bpc_lsx: 363.8 (12.50x)
inv_txfm_add_64x64_dct_dct_4_8bpc_c: 4547.1 ( 1.00x)
inv_txfm_add_64x64_dct_dct_4_8bpc_lsx: 363.8 (12.50x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
90f8fb77c7f2bd619d6a0abff7f79cb3daa9323b by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/90f8fb77c7f2bd619d6a0abff7f79cb3daa9323b
Authored: 2023-12-01 16:22:35 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve one functions in itx_8bpc.add_32x32 series
- inv_txfm_add_dct_dct_32x32
Relative speedup over C code:
inv_txfm_add_32x32_dct_dct_0_8bpc_c: 122.2 ( 1.00x)
inv_txfm_add_32x32_dct_dct_0_8bpc_lsx: 5.5 (22.06x)
inv_txfm_add_32x32_dct_dct_1_8bpc_c: 1466.2 ( 1.00x)
inv_txfm_add_32x32_dct_dct_1_8bpc_lsx: 108.7 (13.49x)
inv_txfm_add_32x32_dct_dct_2_8bpc_c: 1465.5 ( 1.00x)
inv_txfm_add_32x32_dct_dct_2_8bpc_lsx: 108.8 (13.47x)
inv_txfm_add_32x32_dct_dct_3_8bpc_c: 1465.6 ( 1.00x)
inv_txfm_add_32x32_dct_dct_3_8bpc_lsx: 108.8 (13.46x)
inv_txfm_add_32x32_dct_dct_4_8bpc_c: 1466.2 ( 1.00x)
inv_txfm_add_32x32_dct_dct_4_8bpc_lsx: 108.8 (13.47x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
fbefb34ae91c3a144926e760008713f7bcde981c by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/fbefb34ae91c3a144926e760008713f7bcde981c
Authored: 2023-12-01 16:19:13 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve one functions in itx_8bpc.add_8x32 series
- inv_txfm_add_dct_dct_8x32
Relative speedup over C code:
inv_txfm_add_8x32_dct_dct_0_8bpc_c: 33.3 ( 1.00x)
inv_txfm_add_8x32_dct_dct_0_8bpc_lsx: 2.1 (15.58x)
inv_txfm_add_8x32_dct_dct_1_8bpc_c: 311.1 ( 1.00x)
inv_txfm_add_8x32_dct_dct_1_8bpc_lsx: 24.9 (12.49x)
inv_txfm_add_8x32_dct_dct_2_8bpc_c: 308.4 ( 1.00x)
inv_txfm_add_8x32_dct_dct_2_8bpc_lsx: 24.9 (12.37x)
inv_txfm_add_8x32_dct_dct_3_8bpc_c: 309.3 ( 1.00x)
inv_txfm_add_8x32_dct_dct_3_8bpc_lsx: 25.0 (12.37x)
inv_txfm_add_8x32_dct_dct_4_8bpc_c: 308.4 ( 1.00x)
inv_txfm_add_8x32_dct_dct_4_8bpc_lsx: 25.0 (12.35x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
8c32cde7c10e259b6035c97ee8f5e69c3644c202 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/8c32cde7c10e259b6035c97ee8f5e69c3644c202
Authored: 2023-12-01 16:16:20 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve six functions in itx_8bpc.add_16x16 series
- inv_txfm_add_dct_dct_16x16
- inv_txfm_add_adst_adst_16x16
- inv_txfm_add_adst_dct_16x16
- inv_txfm_add_dct_adst_16x16
- inv_txfm_add_flipadst_dct_16x16
- inv_txfm_add_dct_flipadst_16x16
Relative speedup over C code:
inv_txfm_add_16x16_adst_adst_0_8bpc_c: 327.6 ( 1.00x)
inv_txfm_add_16x16_adst_adst_0_8bpc_lsx: 30.5 (10.74x)
inv_txfm_add_16x16_adst_adst_1_8bpc_c: 327.6 ( 1.00x)
inv_txfm_add_16x16_adst_adst_1_8bpc_lsx: 30.7 (10.67x)
inv_txfm_add_16x16_adst_adst_2_8bpc_c: 327.6 ( 1.00x)
inv_txfm_add_16x16_adst_adst_2_8bpc_lsx: 30.5 (10.73x)
inv_txfm_add_16x16_adst_dct_0_8bpc_c: 321.0 ( 1.00x)
inv_txfm_add_16x16_adst_dct_0_8bpc_lsx: 27.6 (11.64x)
inv_txfm_add_16x16_adst_dct_1_8bpc_c: 320.9 ( 1.00x)
inv_txfm_add_16x16_adst_dct_1_8bpc_lsx: 27.4 (11.70x)
inv_txfm_add_16x16_adst_dct_2_8bpc_c: 320.8 ( 1.00x)
inv_txfm_add_16x16_adst_dct_2_8bpc_lsx: 27.5 (11.67x)
inv_txfm_add_16x16_dct_adst_0_8bpc_c: 321.1 ( 1.00x)
inv_txfm_add_16x16_dct_adst_0_8bpc_lsx: 27.1 (11.85x)
inv_txfm_add_16x16_dct_adst_1_8bpc_c: 321.1 ( 1.00x)
inv_txfm_add_16x16_dct_adst_1_8bpc_lsx: 27.2 (11.80x)
inv_txfm_add_16x16_dct_adst_2_8bpc_c: 329.4 ( 1.00x)
inv_txfm_add_16x16_dct_adst_2_8bpc_lsx: 27.2 (12.10x)
inv_txfm_add_16x16_dct_dct_0_8bpc_c: 31.9 ( 1.00x)
inv_txfm_add_16x16_dct_dct_0_8bpc_lsx: 1.8 (18.14x)
inv_txfm_add_16x16_dct_dct_1_8bpc_c: 314.3 ( 1.00x)
inv_txfm_add_16x16_dct_dct_1_8bpc_lsx: 23.9 (13.16x)
inv_txfm_add_16x16_dct_dct_2_8bpc_c: 314.3 ( 1.00x)
inv_txfm_add_16x16_dct_dct_2_8bpc_lsx: 24.1 (13.05x)
inv_txfm_add_16x16_dct_flipadst_0_8bpc_c: 321.0 ( 1.00x)
inv_txfm_add_16x16_dct_flipadst_0_8bpc_lsx: 27.1 (11.83x)
inv_txfm_add_16x16_dct_flipadst_1_8bpc_c: 321.0 ( 1.00x)
inv_txfm_add_16x16_dct_flipadst_1_8bpc_lsx: 27.1 (11.84x)
inv_txfm_add_16x16_dct_flipadst_2_8bpc_c: 327.7 ( 1.00x)
inv_txfm_add_16x16_dct_flipadst_2_8bpc_lsx: 27.1 (12.07x)
inv_txfm_add_16x16_flipadst_dct_0_8bpc_c: 322.6 ( 1.00x)
inv_txfm_add_16x16_flipadst_dct_0_8bpc_lsx: 28.1 (11.49x)
inv_txfm_add_16x16_flipadst_dct_1_8bpc_c: 322.5 ( 1.00x)
inv_txfm_add_16x16_flipadst_dct_1_8bpc_lsx: 28.1 (11.48x)
inv_txfm_add_16x16_flipadst_dct_2_8bpc_c: 322.7 ( 1.00x)
inv_txfm_add_16x16_flipadst_dct_2_8bpc_lsx: 28.0 (11.53x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
233be20140793a09a9a8e56d3b41d1622fddbc25 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/233be20140793a09a9a8e56d3b41d1622fddbc25
Authored: 2023-12-01 16:05:26 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve one functions in itx_8bpc.add_4x8 series
- inv_txfm_add_dct_dct_4x8
Relative speedup over C code:
inv_txfm_add_4x8_dct_dct_0_8bpc_c: 5.7 ( 1.00x)
inv_txfm_add_4x8_dct_dct_0_8bpc_lsx: 0.8 ( 7.12x)
inv_txfm_add_4x8_dct_dct_1_8bpc_c: 34.5 ( 1.00x)
inv_txfm_add_4x8_dct_dct_1_8bpc_lsx: 3.0 (11.64x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
8626d9f9a6e8c1e2164e55177c64b69f51204b4e by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/8626d9f9a6e8c1e2164e55177c64b69f51204b4e
Authored: 2023-12-01 15:50:15 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve two functions in itx_8bpc.add_16x8 series
- inv_txfm_add_dct_dct_16x8
- inv_txfm_add_adst_dct_16x8
Relative speedup over C code:
inv_txfm_add_16x8_adst_dct_0_8bpc_c: 152.1 ( 1.00x)
inv_txfm_add_16x8_adst_dct_0_8bpc_lsx: 13.7 (11.08x)
inv_txfm_add_16x8_adst_dct_1_8bpc_c: 152.1 ( 1.00x)
inv_txfm_add_16x8_adst_dct_1_8bpc_lsx: 13.7 (11.07x)
inv_txfm_add_16x8_adst_dct_2_8bpc_c: 152.1 ( 1.00x)
inv_txfm_add_16x8_adst_dct_2_8bpc_lsx: 13.7 (11.08x)
inv_txfm_add_16x8_dct_dct_0_8bpc_c: 17.0 ( 1.00x)
inv_txfm_add_16x8_dct_dct_0_8bpc_lsx: 1.3 (13.10x)
inv_txfm_add_16x8_dct_dct_1_8bpc_c: 147.5 ( 1.00x)
inv_txfm_add_16x8_dct_dct_1_8bpc_lsx: 11.6 (12.73x)
inv_txfm_add_16x8_dct_dct_2_8bpc_c: 147.5 ( 1.00x)
inv_txfm_add_16x8_dct_dct_2_8bpc_lsx: 11.6 (12.74x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
5ebe32283e5f0354430c645e6e78be1820a64432 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/5ebe32283e5f0354430c645e6e78be1820a64432
Authored: 2023-12-01 15:39:13 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve four functions in itx_8bpc.add_8x16 series
- inv_txfm_add_dct_dct_8x16
- inv_txfm_add_identity_identity_8x16
- inv_txfm_add_adst_dct_8x16
4 .inv_txfm_add_dct_adst_8x16
Relative speedup over C code:
inv_txfm_add_8x16_adst_dct_0_8bpc_c: 151.0 ( 1.00x)
inv_txfm_add_8x16_adst_dct_0_8bpc_lsx: 14.9 (10.10x)
inv_txfm_add_8x16_adst_dct_1_8bpc_c: 151.0 ( 1.00x)
inv_txfm_add_8x16_adst_dct_1_8bpc_lsx: 15.0 (10.10x)
inv_txfm_add_8x16_adst_dct_2_8bpc_c: 151.0 ( 1.00x)
inv_txfm_add_8x16_adst_dct_2_8bpc_lsx: 15.0 (10.10x)
inv_txfm_add_8x16_dct_adst_0_8bpc_c: 157.3 ( 1.00x)
inv_txfm_add_8x16_dct_adst_0_8bpc_lsx: 13.6 (11.59x)
inv_txfm_add_8x16_dct_adst_1_8bpc_c: 154.9 ( 1.00x)
inv_txfm_add_8x16_dct_adst_1_8bpc_lsx: 13.6 (11.38x)
inv_txfm_add_8x16_dct_adst_2_8bpc_c: 154.8 ( 1.00x)
inv_txfm_add_8x16_dct_adst_2_8bpc_lsx: 13.5 (11.46x)
inv_txfm_add_8x16_dct_dct_0_8bpc_c: 17.8 ( 1.00x)
inv_txfm_add_8x16_dct_dct_0_8bpc_lsx: 1.5 (11.75x)
inv_txfm_add_8x16_dct_dct_1_8bpc_c: 149.4 ( 1.00x)
inv_txfm_add_8x16_dct_dct_1_8bpc_lsx: 12.0 (12.49x)
inv_txfm_add_8x16_dct_dct_2_8bpc_c: 159.5 ( 1.00x)
inv_txfm_add_8x16_dct_dct_2_8bpc_lsx: 12.0 (13.33x)
inv_txfm_add_8x16_identity_identity_0_8bpc_c: 75.0 ( 1.00x)
inv_txfm_add_8x16_identity_identity_0_8bpc_lsx: 6.0 (12.50x)
inv_txfm_add_8x16_identity_identity_1_8bpc_c: 67.4 ( 1.00x)
inv_txfm_add_8x16_identity_identity_1_8bpc_lsx: 6.0 (11.26x)
inv_txfm_add_8x16_identity_identity_2_8bpc_c: 66.7 ( 1.00x)
inv_txfm_add_8x16_identity_identity_2_8bpc_lsx: 5.9 (11.40x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
32809a022245f0ffca1f0210dd2e75cd55985517 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/32809a022245f0ffca1f0210dd2e75cd55985517
Authored: 2023-12-01 15:20:02 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of itx_8bpc.add_8x8 series functions
Relative speedup over C code:
inv_txfm_add_8x8_adst_adst_0_8bpc_c: 70.1 ( 1.00x)
inv_txfm_add_8x8_adst_adst_0_8bpc_lsx: 9.4 ( 7.45x)
inv_txfm_add_8x8_adst_adst_1_8bpc_c: 70.1 ( 1.00x)
inv_txfm_add_8x8_adst_adst_1_8bpc_lsx: 9.4 ( 7.43x)
inv_txfm_add_8x8_adst_dct_0_8bpc_c: 68.7 ( 1.00x)
inv_txfm_add_8x8_adst_dct_0_8bpc_lsx: 7.6 ( 9.08x)
inv_txfm_add_8x8_adst_dct_1_8bpc_c: 68.7 ( 1.00x)
inv_txfm_add_8x8_adst_dct_1_8bpc_lsx: 7.6 ( 9.00x)
inv_txfm_add_8x8_adst_flipadst_0_8bpc_c: 70.3 ( 1.00x)
inv_txfm_add_8x8_adst_flipadst_0_8bpc_lsx: 9.4 ( 7.47x)
inv_txfm_add_8x8_adst_flipadst_1_8bpc_c: 70.3 ( 1.00x)
inv_txfm_add_8x8_adst_flipadst_1_8bpc_lsx: 9.4 ( 7.47x)
inv_txfm_add_8x8_adst_identity_0_8bpc_c: 50.6 ( 1.00x)
inv_txfm_add_8x8_adst_identity_0_8bpc_lsx: 5.7 ( 8.88x)
inv_txfm_add_8x8_adst_identity_1_8bpc_c: 49.8 ( 1.00x)
inv_txfm_add_8x8_adst_identity_1_8bpc_lsx: 5.7 ( 8.73x)
inv_txfm_add_8x8_dct_adst_0_8bpc_c: 67.9 ( 1.00x)
inv_txfm_add_8x8_dct_adst_0_8bpc_lsx: 7.5 ( 9.05x)
inv_txfm_add_8x8_dct_adst_1_8bpc_c: 67.9 ( 1.00x)
inv_txfm_add_8x8_dct_adst_1_8bpc_lsx: 7.4 ( 9.13x)
inv_txfm_add_8x8_dct_dct_0_8bpc_c: 9.1 ( 1.00x)
inv_txfm_add_8x8_dct_dct_0_8bpc_lsx: 0.8 (11.20x)
inv_txfm_add_8x8_dct_dct_1_8bpc_c: 66.5 ( 1.00x)
inv_txfm_add_8x8_dct_dct_1_8bpc_lsx: 5.0 (13.42x)
inv_txfm_add_8x8_dct_flipadst_0_8bpc_c: 67.9 ( 1.00x)
inv_txfm_add_8x8_dct_flipadst_0_8bpc_lsx: 7.5 ( 9.06x)
inv_txfm_add_8x8_dct_flipadst_1_8bpc_c: 67.9 ( 1.00x)
inv_txfm_add_8x8_dct_flipadst_1_8bpc_lsx: 7.5 ( 9.06x)
inv_txfm_add_8x8_dct_identity_0_8bpc_c: 47.3 ( 1.00x)
inv_txfm_add_8x8_dct_identity_0_8bpc_lsx: 3.7 (12.70x)
inv_txfm_add_8x8_dct_identity_1_8bpc_c: 47.3 ( 1.00x)
inv_txfm_add_8x8_dct_identity_1_8bpc_lsx: 3.7 (12.70x)
inv_txfm_add_8x8_flipadst_adst_0_8bpc_c: 70.3 ( 1.00x)
inv_txfm_add_8x8_flipadst_adst_0_8bpc_lsx: 9.6 ( 7.35x)
inv_txfm_add_8x8_flipadst_adst_1_8bpc_c: 70.3 ( 1.00x)
inv_txfm_add_8x8_flipadst_adst_1_8bpc_lsx: 9.6 ( 7.33x)
inv_txfm_add_8x8_flipadst_dct_0_8bpc_c: 68.9 ( 1.00x)
inv_txfm_add_8x8_flipadst_dct_0_8bpc_lsx: 7.6 ( 9.10x)
inv_txfm_add_8x8_flipadst_dct_1_8bpc_c: 68.9 ( 1.00x)
inv_txfm_add_8x8_flipadst_dct_1_8bpc_lsx: 7.6 ( 9.11x)
inv_txfm_add_8x8_flipadst_flipadst_0_8bpc_c: 70.4 ( 1.00x)
inv_txfm_add_8x8_flipadst_flipadst_0_8bpc_lsx: 9.6 ( 7.32x)
inv_txfm_add_8x8_flipadst_flipadst_1_8bpc_c: 70.4 ( 1.00x)
inv_txfm_add_8x8_flipadst_flipadst_1_8bpc_lsx: 9.6 ( 7.34x)
inv_txfm_add_8x8_flipadst_identity_0_8bpc_c: 49.9 ( 1.00x)
inv_txfm_add_8x8_flipadst_identity_0_8bpc_lsx: 5.6 ( 8.91x)
inv_txfm_add_8x8_flipadst_identity_1_8bpc_c: 49.9 ( 1.00x)
inv_txfm_add_8x8_flipadst_identity_1_8bpc_lsx: 5.6 ( 8.91x)
inv_txfm_add_8x8_identity_adst_0_8bpc_c: 51.3 ( 1.00x)
inv_txfm_add_8x8_identity_adst_0_8bpc_lsx: 5.5 ( 9.28x)
inv_txfm_add_8x8_identity_adst_1_8bpc_c: 51.3 ( 1.00x)
inv_txfm_add_8x8_identity_adst_1_8bpc_lsx: 5.5 ( 9.28x)
inv_txfm_add_8x8_identity_dct_0_8bpc_c: 50.5 ( 1.00x)
inv_txfm_add_8x8_identity_dct_0_8bpc_lsx: 3.6 (13.83x)
inv_txfm_add_8x8_identity_dct_1_8bpc_c: 50.6 ( 1.00x)
inv_txfm_add_8x8_identity_dct_1_8bpc_lsx: 3.6 (13.87x)
inv_txfm_add_8x8_identity_flipadst_0_8bpc_c: 52.0 ( 1.00x)
inv_txfm_add_8x8_identity_flipadst_0_8bpc_lsx: 5.5 ( 9.40x)
inv_txfm_add_8x8_identity_flipadst_1_8bpc_c: 52.0 ( 1.00x)
inv_txfm_add_8x8_identity_flipadst_1_8bpc_lsx: 5.5 ( 9.39x)
inv_txfm_add_8x8_identity_identity_0_8bpc_c: 31.1 ( 1.00x)
inv_txfm_add_8x8_identity_identity_0_8bpc_lsx: 1.8 (17.06x)
inv_txfm_add_8x8_identity_identity_1_8bpc_c: 31.1 ( 1.00x)
inv_txfm_add_8x8_identity_identity_1_8bpc_lsx: 1.8 (16.97x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
951646ce567dc8ce045243db6f201f3cb15df171 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/951646ce567dc8ce045243db6f201f3cb15df171
Authored: 2023-12-01 15:16:46 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of itx_8bpc.add_8x4 series functions
Relative speedup over C code:
inv_txfm_add_8x4_adst_adst_0_8bpc_c: 32.0 ( 1.00x)
inv_txfm_add_8x4_adst_adst_0_8bpc_lsx: 4.1 ( 7.87x)
inv_txfm_add_8x4_adst_adst_1_8bpc_c: 32.3 ( 1.00x)
inv_txfm_add_8x4_adst_adst_1_8bpc_lsx: 4.1 ( 7.92x)
inv_txfm_add_8x4_adst_dct_0_8bpc_c: 33.7 ( 1.00x)
inv_txfm_add_8x4_adst_dct_0_8bpc_lsx: 3.8 ( 8.77x)
inv_txfm_add_8x4_adst_dct_1_8bpc_c: 33.1 ( 1.00x)
inv_txfm_add_8x4_adst_dct_1_8bpc_lsx: 3.8 ( 8.63x)
inv_txfm_add_8x4_adst_flipadst_0_8bpc_c: 32.7 ( 1.00x)
inv_txfm_add_8x4_adst_flipadst_0_8bpc_lsx: 4.1 ( 7.99x)
inv_txfm_add_8x4_adst_flipadst_1_8bpc_c: 32.8 ( 1.00x)
inv_txfm_add_8x4_adst_flipadst_1_8bpc_lsx: 4.0 ( 8.16x)
inv_txfm_add_8x4_adst_identity_0_8bpc_c: 31.2 ( 1.00x)
inv_txfm_add_8x4_adst_identity_0_8bpc_lsx: 3.8 ( 8.29x)
inv_txfm_add_8x4_adst_identity_1_8bpc_c: 28.7 ( 1.00x)
inv_txfm_add_8x4_adst_identity_1_8bpc_lsx: 3.7 ( 7.78x)
inv_txfm_add_8x4_dct_adst_0_8bpc_c: 32.0 ( 1.00x)
inv_txfm_add_8x4_dct_adst_0_8bpc_lsx: 3.0 (10.76x)
inv_txfm_add_8x4_dct_adst_1_8bpc_c: 31.5 ( 1.00x)
inv_txfm_add_8x4_dct_adst_1_8bpc_lsx: 2.8 (11.46x)
inv_txfm_add_8x4_dct_dct_0_8bpc_c: 5.5 ( 1.00x)
inv_txfm_add_8x4_dct_dct_0_8bpc_lsx: 0.6 ( 9.22x)
inv_txfm_add_8x4_dct_dct_1_8bpc_c: 33.1 ( 1.00x)
inv_txfm_add_8x4_dct_dct_1_8bpc_lsx: 2.8 (11.89x)
inv_txfm_add_8x4_dct_flipadst_0_8bpc_c: 32.4 ( 1.00x)
inv_txfm_add_8x4_dct_flipadst_0_8bpc_lsx: 3.0 (10.81x)
inv_txfm_add_8x4_dct_flipadst_1_8bpc_c: 32.4 ( 1.00x)
inv_txfm_add_8x4_dct_flipadst_1_8bpc_lsx: 3.0 (10.81x)
inv_txfm_add_8x4_dct_identity_0_8bpc_c: 27.9 ( 1.00x)
inv_txfm_add_8x4_dct_identity_0_8bpc_lsx: 2.7 (10.35x)
inv_txfm_add_8x4_dct_identity_1_8bpc_c: 28.5 ( 1.00x)
inv_txfm_add_8x4_dct_identity_1_8bpc_lsx: 2.7 (10.53x)
inv_txfm_add_8x4_flipadst_adst_0_8bpc_c: 32.2 ( 1.00x)
inv_txfm_add_8x4_flipadst_adst_0_8bpc_lsx: 4.1 ( 7.86x)
inv_txfm_add_8x4_flipadst_adst_1_8bpc_c: 32.2 ( 1.00x)
inv_txfm_add_8x4_flipadst_adst_1_8bpc_lsx: 4.0 ( 7.95x)
inv_txfm_add_8x4_flipadst_dct_0_8bpc_c: 33.6 ( 1.00x)
inv_txfm_add_8x4_flipadst_dct_0_8bpc_lsx: 3.8 ( 8.73x)
inv_txfm_add_8x4_flipadst_dct_1_8bpc_c: 33.6 ( 1.00x)
inv_txfm_add_8x4_flipadst_dct_1_8bpc_lsx: 3.8 ( 8.74x)
inv_txfm_add_8x4_flipadst_flipadst_0_8bpc_c: 32.6 ( 1.00x)
inv_txfm_add_8x4_flipadst_flipadst_0_8bpc_lsx: 4.0 ( 8.16x)
inv_txfm_add_8x4_flipadst_flipadst_1_8bpc_c: 32.6 ( 1.00x)
inv_txfm_add_8x4_flipadst_flipadst_1_8bpc_lsx: 4.0 ( 8.15x)
inv_txfm_add_8x4_flipadst_identity_0_8bpc_c: 28.7 ( 1.00x)
inv_txfm_add_8x4_flipadst_identity_0_8bpc_lsx: 3.8 ( 7.64x)
inv_txfm_add_8x4_flipadst_identity_1_8bpc_c: 28.7 ( 1.00x)
inv_txfm_add_8x4_flipadst_identity_1_8bpc_lsx: 3.8 ( 7.55x)
inv_txfm_add_8x4_identity_adst_0_8bpc_c: 21.9 ( 1.00x)
inv_txfm_add_8x4_identity_adst_0_8bpc_lsx: 1.9 (11.81x)
inv_txfm_add_8x4_identity_adst_1_8bpc_c: 26.9 ( 1.00x)
inv_txfm_add_8x4_identity_adst_1_8bpc_lsx: 1.9 (14.39x)
inv_txfm_add_8x4_identity_dct_0_8bpc_c: 23.3 ( 1.00x)
inv_txfm_add_8x4_identity_dct_0_8bpc_lsx: 1.7 (13.53x)
inv_txfm_add_8x4_identity_dct_1_8bpc_c: 23.3 ( 1.00x)
inv_txfm_add_8x4_identity_dct_1_8bpc_lsx: 1.7 (13.53x)
inv_txfm_add_8x4_identity_flipadst_0_8bpc_c: 22.3 ( 1.00x)
inv_txfm_add_8x4_identity_flipadst_0_8bpc_lsx: 1.9 (11.46x)
inv_txfm_add_8x4_identity_flipadst_1_8bpc_c: 23.4 ( 1.00x)
inv_txfm_add_8x4_identity_flipadst_1_8bpc_lsx: 1.9 (12.02x)
inv_txfm_add_8x4_identity_identity_0_8bpc_c: 18.5 ( 1.00x)
inv_txfm_add_8x4_identity_identity_0_8bpc_lsx: 1.6 (11.23x)
inv_txfm_add_8x4_identity_identity_1_8bpc_c: 18.5 ( 1.00x)
inv_txfm_add_8x4_identity_identity_1_8bpc_lsx: 1.6 (11.57x)
Files Modified:
- src/loongarch/itx.S
- src/loongarch/itx.h
a4cd834991c3ef6b9b4922f0663f09ac8a865f88 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/a4cd834991c3ef6b9b4922f0663f09ac8a865f88
Authored: 2023-12-02 10:18:42 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of itx_8bpc.add_4x4 series functions
Relative speedup over C code:
inv_txfm_add_4x4_adst_adst_0_8bpc_c: 14.1 ( 1.00x)
inv_txfm_add_4x4_adst_adst_0_8bpc_lsx: 1.3 (11.16x)
inv_txfm_add_4x4_adst_adst_1_8bpc_c: 14.1 ( 1.00x)
inv_txfm_add_4x4_adst_adst_1_8bpc_lsx: 1.3 (11.17x)
inv_txfm_add_4x4_adst_dct_0_8bpc_c: 14.8 ( 1.00x)
inv_txfm_add_4x4_adst_dct_0_8bpc_lsx: 1.4 (10.99x)
inv_txfm_add_4x4_adst_dct_1_8bpc_c: 14.9 ( 1.00x)
inv_txfm_add_4x4_adst_dct_1_8bpc_lsx: 1.3 (11.42x)
inv_txfm_add_4x4_adst_flipadst_0_8bpc_c: 14.4 ( 1.00x)
inv_txfm_add_4x4_adst_flipadst_0_8bpc_lsx: 1.2 (11.52x)
inv_txfm_add_4x4_adst_flipadst_1_8bpc_c: 14.4 ( 1.00x)
inv_txfm_add_4x4_adst_flipadst_1_8bpc_lsx: 1.2 (11.52x)
inv_txfm_add_4x4_adst_identity_0_8bpc_c: 12.5 ( 1.00x)
inv_txfm_add_4x4_adst_identity_0_8bpc_lsx: 1.2 (10.22x)
inv_txfm_add_4x4_adst_identity_1_8bpc_c: 12.5 ( 1.00x)
inv_txfm_add_4x4_adst_identity_1_8bpc_lsx: 1.2 (10.26x)
inv_txfm_add_4x4_dct_adst_0_8bpc_c: 14.6 ( 1.00x)
inv_txfm_add_4x4_dct_adst_0_8bpc_lsx: 1.3 (11.37x)
inv_txfm_add_4x4_dct_adst_1_8bpc_c: 14.6 ( 1.00x)
inv_txfm_add_4x4_dct_adst_1_8bpc_lsx: 1.3 (11.55x)
inv_txfm_add_4x4_dct_dct_0_8bpc_c: 3.2 ( 1.00x)
inv_txfm_add_4x4_dct_dct_0_8bpc_lsx: 0.5 ( 6.28x)
inv_txfm_add_4x4_dct_dct_1_8bpc_c: 15.4 ( 1.00x)
inv_txfm_add_4x4_dct_dct_1_8bpc_lsx: 1.2 (13.19x)
inv_txfm_add_4x4_dct_flipadst_0_8bpc_c: 15.0 ( 1.00x)
inv_txfm_add_4x4_dct_flipadst_0_8bpc_lsx: 1.3 (11.73x)
inv_txfm_add_4x4_dct_flipadst_1_8bpc_c: 15.0 ( 1.00x)
inv_txfm_add_4x4_dct_flipadst_1_8bpc_lsx: 1.3 (11.72x)
inv_txfm_add_4x4_dct_identity_0_8bpc_c: 13.0 ( 1.00x)
inv_txfm_add_4x4_dct_identity_0_8bpc_lsx: 1.1 (12.36x)
inv_txfm_add_4x4_dct_identity_1_8bpc_c: 13.0 ( 1.00x)
inv_txfm_add_4x4_dct_identity_1_8bpc_lsx: 1.0 (12.36x)
inv_txfm_add_4x4_flipadst_adst_0_8bpc_c: 14.2 ( 1.00x)
inv_txfm_add_4x4_flipadst_adst_0_8bpc_lsx: 1.3 (11.00x)
inv_txfm_add_4x4_flipadst_adst_1_8bpc_c: 14.2 ( 1.00x)
inv_txfm_add_4x4_flipadst_adst_1_8bpc_lsx: 1.3 (11.03x)
inv_txfm_add_4x4_flipadst_dct_0_8bpc_c: 15.0 ( 1.00x)
inv_txfm_add_4x4_flipadst_dct_0_8bpc_lsx: 1.3 (11.43x)
inv_txfm_add_4x4_flipadst_dct_1_8bpc_c: 15.0 ( 1.00x)
inv_txfm_add_4x4_flipadst_dct_1_8bpc_lsx: 1.3 (11.44x)
inv_txfm_add_4x4_flipadst_flipadst_0_8bpc_c: 14.5 ( 1.00x)
inv_txfm_add_4x4_flipadst_flipadst_0_8bpc_lsx: 1.3 (11.60x)
inv_txfm_add_4x4_flipadst_flipadst_1_8bpc_c: 14.5 ( 1.00x)
inv_txfm_add_4x4_flipadst_flipadst_1_8bpc_lsx: 1.2 (11.61x)
inv_txfm_add_4x4_flipadst_identity_0_8bpc_c: 12.5 ( 1.00x)
inv_txfm_add_4x4_flipadst_identity_0_8bpc_lsx: 1.1 (11.01x)
inv_txfm_add_4x4_flipadst_identity_1_8bpc_c: 12.5 ( 1.00x)
inv_txfm_add_4x4_flipadst_identity_1_8bpc_lsx: 1.1 (10.99x)
inv_txfm_add_4x4_identity_adst_0_8bpc_c: 12.1 ( 1.00x)
inv_txfm_add_4x4_identity_adst_0_8bpc_lsx: 1.1 (11.50x)
inv_txfm_add_4x4_identity_adst_1_8bpc_c: 12.1 ( 1.00x)
inv_txfm_add_4x4_identity_adst_1_8bpc_lsx: 1.1 (10.98x)
inv_txfm_add_4x4_identity_dct_0_8bpc_c: 12.9 ( 1.00x)
inv_txfm_add_4x4_identity_dct_0_8bpc_lsx: 1.0 (12.95x)
inv_txfm_add_4x4_identity_dct_1_8bpc_c: 13.0 ( 1.00x)
inv_txfm_add_4x4_identity_dct_1_8bpc_lsx: 1.0 (12.97x)
inv_txfm_add_4x4_identity_flipadst_0_8bpc_c: 12.4 ( 1.00x)
inv_txfm_add_4x4_identity_flipadst_0_8bpc_lsx: 1.1 (11.26x)
inv_txfm_add_4x4_identity_flipadst_1_8bpc_c: 12.4 ( 1.00x)
inv_txfm_add_4x4_identity_flipadst_1_8bpc_lsx: 1.1 (11.32x)
inv_txfm_add_4x4_identity_identity_0_8bpc_c: 10.6 ( 1.00x)
inv_txfm_add_4x4_identity_identity_0_8bpc_lsx: 0.9 (11.45x)
inv_txfm_add_4x4_identity_identity_1_8bpc_c: 10.6 ( 1.00x)
inv_txfm_add_4x4_identity_identity_1_8bpc_lsx: 0.9 (11.78x)
inv_txfm_add_4x4_wht_wht_0_8bpc_c: 4.1 ( 1.00x)
inv_txfm_add_4x4_wht_wht_0_8bpc_lsx: 0.6 ( 6.84x)
inv_txfm_add_4x4_wht_wht_1_8bpc_c: 4.1 ( 1.00x)
inv_txfm_add_4x4_wht_wht_1_8bpc_lsx: 0.6 ( 6.83x)
Files Added:
- src/loongarch/itx.S
- src/loongarch/itx.h
Files Modified:
- src/itx_tmpl.c
- src/meson.build
14df65f217c5fb03b640ddaeeb2c7a36b411bcab by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/14df65f217c5fb03b640ddaeeb2c7a36b411bcab
Authored: 2023-12-01 14:54:11 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of refmvs.splat_mv function
Relative speedup over C code:
splat_mv_w1_c: 0.6 ( 1.00x)
splat_mv_w1_lsx: 0.4 ( 1.28x)
splat_mv_w2_c: 0.9 ( 1.00x)
splat_mv_w2_lsx: 0.6 ( 1.65x)
splat_mv_w4_c: 2.2 ( 1.00x)
splat_mv_w4_lsx: 0.8 ( 2.87x)
splat_mv_w8_c: 7.7 ( 1.00x)
splat_mv_w8_lsx: 2.0 ( 3.80x)
splat_mv_w16_c: 19.1 ( 1.00x)
splat_mv_w16_lsx: 4.6 ( 4.18x)
splat_mv_w32_c: 49.0 ( 1.00x)
splat_mv_w32_lsx: 10.3 ( 4.76x)
Files Added:
- src/loongarch/refmvs.S
- src/loongarch/refmvs.h
Files Modified:
- src/meson.build
- src/refmvs.c
- src/refmvs.h
38bc00849a76bb6cee75d2874ef1a9cd67daab81 by jinbo
https://code.videolan.org/videolan/dav1d/commit/38bc00849a76bb6cee75d2874ef1a9cd67daab81
Authored: 2023-12-01 14:49:40 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of msac series functions
Relative speedup over C code:
msac_decode_bool_c: 0.5 ( 1.00x)
msac_decode_bool_lsx: 0.5 ( 1.09x)
msac_decode_bool_adapt_c: 0.7 ( 1.00x)
msac_decode_bool_adapt_lsx: 0.6 ( 1.20x)
msac_decode_symbol_adapt4_c: 1.3 ( 1.00x)
msac_decode_symbol_adapt4_lsx: 1.0 ( 1.30x)
msac_decode_symbol_adapt8_c: 2.1 ( 1.00x)
msac_decode_symbol_adapt8_lsx: 1.0 ( 2.05x)
msac_decode_symbol_adapt16_c: 3.7 ( 1.00x)
msac_decode_symbol_adapt16_lsx: 0.8 ( 4.77x)
Files Added:
- src/loongarch/msac.S
- src/loongarch/msac.h
Files Modified:
- src/meson.build
- src/msac.h
- tests/checkasm/msac.c
b98ea43379ba46d06322074f29c51757b6c6e5b1 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/b98ea43379ba46d06322074f29c51757b6c6e5b1
Authored: 2023-12-01 13:38:07 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of looprestoration_8bpc series functions
Relative speedup over C code:
wiener_5tap_8bpc_c: 13358.0 ( 1.00x)
wiener_5tap_8bpc_lsx: 2484.7 ( 5.38x)
wiener_7tap_8bpc_c: 13358.4 ( 1.00x)
wiener_7tap_8bpc_lsx: 2486.4 ( 5.37x)
sgr_3x3_8bpc_c: 18989.2 ( 1.00x)
sgr_3x3_8bpc_lsx: 7981.6 ( 2.38x)
sgr_5x5_8bpc_c: 17242.0 ( 1.00x)
sgr_5x5_8bpc_lsx: 5735.5 ( 3.01x)
Files Added:
- src/loongarch/looprestoration.S
- src/loongarch/looprestoration.h
- src/loongarch/looprestoration_tmpl.c
Files Modified:
- src/looprestoration_tmpl.c
- src/meson.build
78a776d253c8aae4e6f68d13780edf5eb0b3f7a3 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/78a776d253c8aae4e6f68d13780edf5eb0b3f7a3
Authored: 2023-12-01 11:28:28 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of loopfilter_8bpc series functions
Relative speedup over C code:
lpf_h_sb_uv_w4_8bpc_c: 25.3 ( 1.00x)
lpf_h_sb_uv_w4_8bpc_lsx: 6.7 ( 3.79x)
lpf_h_sb_uv_w6_8bpc_c: 36.5 ( 1.00x)
lpf_h_sb_uv_w6_8bpc_lsx: 11.0 ( 3.31x)
lpf_h_sb_y_w4_8bpc_c: 47.7 ( 1.00x)
lpf_h_sb_y_w4_8bpc_lsx: 12.5 ( 3.82x)
lpf_h_sb_y_w8_8bpc_c: 81.9 ( 1.00x)
lpf_h_sb_y_w8_8bpc_lsx: 22.2 ( 3.69x)
lpf_h_sb_y_w16_8bpc_c: 85.1 ( 1.00x)
lpf_h_sb_y_w16_8bpc_lsx: 18.1 ( 4.70x)
lpf_v_sb_uv_w4_8bpc_c: 25.3 ( 1.00x)
lpf_v_sb_uv_w4_8bpc_lsx: 5.7 ( 4.43x)
lpf_v_sb_uv_w6_8bpc_c: 37.6 ( 1.00x)
lpf_v_sb_uv_w6_8bpc_lsx: 9.5 ( 3.97x)
lpf_v_sb_y_w4_8bpc_c: 59.4 ( 1.00x)
lpf_v_sb_y_w4_8bpc_lsx: 15.7 ( 3.78x)
lpf_v_sb_y_w8_8bpc_c: 94.5 ( 1.00x)
lpf_v_sb_y_w8_8bpc_lsx: 29.4 ( 3.21x)
lpf_v_sb_y_w16_8bpc_c: 97.8 ( 1.00x)
lpf_v_sb_y_w16_8bpc_lsx: 36.3 ( 2.70x)
Files Added:
- src/loongarch/loopfilter.S
- src/loongarch/loopfilter.h
Files Modified:
- src/loopfilter_tmpl.c
- src/meson.build
ae8756ed91e2acbfc23711132eebbdf52ea874b3 by jinbo
https://code.videolan.org/videolan/dav1d/commit/ae8756ed91e2acbfc23711132eebbdf52ea874b3
Authored: 2023-12-01 11:20:59 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of mc_8bpc.mct functions
Relative speedup over C code:
mct_8tap_regular_w4_0_8bpc_c: 4.2 ( 1.00x)
mct_8tap_regular_w4_0_8bpc_lasx: 0.5 ( 9.08x)
mct_8tap_regular_w4_h_8bpc_c: 12.5 ( 1.00x)
mct_8tap_regular_w4_h_8bpc_lasx: 1.6 ( 7.80x)
mct_8tap_regular_w4_hv_8bpc_c: 33.5 ( 1.00x)
mct_8tap_regular_w4_hv_8bpc_lasx: 6.0 ( 5.54x)
mct_8tap_regular_w4_v_8bpc_c: 13.6 ( 1.00x)
mct_8tap_regular_w4_v_8bpc_lasx: 2.2 ( 6.22x)
mct_8tap_regular_w8_0_8bpc_c: 11.3 ( 1.00x)
mct_8tap_regular_w8_0_8bpc_lasx: 0.7 (15.77x)
mct_8tap_regular_w8_h_8bpc_c: 39.1 ( 1.00x)
mct_8tap_regular_w8_h_8bpc_lasx: 4.7 ( 8.30x)
mct_8tap_regular_w8_hv_8bpc_c: 90.9 ( 1.00x)
mct_8tap_regular_w8_hv_8bpc_lasx: 17.2 ( 5.29x)
mct_8tap_regular_w8_v_8bpc_c: 40.5 ( 1.00x)
mct_8tap_regular_w8_v_8bpc_lasx: 6.9 ( 5.86x)
mct_8tap_regular_w16_0_8bpc_c: 34.3 ( 1.00x)
mct_8tap_regular_w16_0_8bpc_lasx: 1.3 (26.32x)
mct_8tap_regular_w16_h_8bpc_c: 128.3 ( 1.00x)
mct_8tap_regular_w16_h_8bpc_lasx: 20.5 ( 6.26x)
mct_8tap_regular_w16_hv_8bpc_c: 273.5 ( 1.00x)
mct_8tap_regular_w16_hv_8bpc_lasx: 54.5 ( 5.02x)
mct_8tap_regular_w16_v_8bpc_c: 129.7 ( 1.00x)
mct_8tap_regular_w16_v_8bpc_lasx: 22.8 ( 5.69x)
mct_8tap_regular_w32_0_8bpc_c: 133.7 ( 1.00x)
mct_8tap_regular_w32_0_8bpc_lasx: 5.4 (24.65x)
mct_8tap_regular_w32_h_8bpc_c: 511.4 ( 1.00x)
mct_8tap_regular_w32_h_8bpc_lasx: 85.1 ( 6.01x)
mct_8tap_regular_w32_hv_8bpc_c: 1018.2 ( 1.00x)
mct_8tap_regular_w32_hv_8bpc_lasx: 210.0 ( 4.85x)
mct_8tap_regular_w32_v_8bpc_c: 513.6 ( 1.00x)
mct_8tap_regular_w32_v_8bpc_lasx: 88.7 ( 5.79x)
mct_8tap_regular_w64_0_8bpc_c: 315.4 ( 1.00x)
mct_8tap_regular_w64_0_8bpc_lasx: 13.2 (23.86x)
mct_8tap_regular_w64_h_8bpc_c: 1236.8 ( 1.00x)
mct_8tap_regular_w64_h_8bpc_lasx: 208.2 ( 5.94x)
mct_8tap_regular_w64_hv_8bpc_c: 2428.0 ( 1.00x)
mct_8tap_regular_w64_hv_8bpc_lasx: 502.7 ( 4.83x)
mct_8tap_regular_w64_v_8bpc_c: 1238.3 ( 1.00x)
mct_8tap_regular_w64_v_8bpc_lasx: 214.0 ( 5.79x)
mct_8tap_regular_w128_0_8bpc_c: 775.3 ( 1.00x)
mct_8tap_regular_w128_0_8bpc_lasx: 32.5 (23.86x)
mct_8tap_regular_w128_h_8bpc_c: 3077.5 ( 1.00x)
mct_8tap_regular_w128_h_8bpc_lasx: 518.6 ( 5.93x)
mct_8tap_regular_w128_hv_8bpc_c: 5987.0 ( 1.00x)
mct_8tap_regular_w128_hv_8bpc_lasx: 1242.4 ( 4.82x)
mct_8tap_regular_w128_v_8bpc_c: 3077.5 ( 1.00x)
mct_8tap_regular_w128_v_8bpc_lasx: 530.3 ( 5.80x)
Files Modified:
- src/loongarch/mc.S
- src/loongarch/mc.h
b34ecaf3105f4bafd6b52dc6e4d7e32b80b0542f by jinbo
https://code.videolan.org/videolan/dav1d/commit/b34ecaf3105f4bafd6b52dc6e4d7e32b80b0542f
Authored: 2023-12-01 11:13:42 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of mc_8bpc.mc functions
Relative speedup over C code:
mc_8tap_regular_w2_0_8bpc_c: 5.3 ( 1.00x)
mc_8tap_regular_w2_0_8bpc_lsx: 0.8 ( 6.62x)
mc_8tap_regular_w2_h_8bpc_c: 11.0 ( 1.00x)
mc_8tap_regular_w2_h_8bpc_lsx: 2.5 ( 4.40x)
mc_8tap_regular_w2_hv_8bpc_c: 24.4 ( 1.00x)
mc_8tap_regular_w2_hv_8bpc_lsx: 9.1 ( 2.70x)
mc_8tap_regular_w2_v_8bpc_c: 12.9 ( 1.00x)
mc_8tap_regular_w2_v_8bpc_lsx: 3.2 ( 4.08x)
mc_8tap_regular_w4_0_8bpc_c: 4.8 ( 1.00x)
mc_8tap_regular_w4_0_8bpc_lsx: 0.8 ( 5.97x)
mc_8tap_regular_w4_h_8bpc_c: 20.0 ( 1.00x)
mc_8tap_regular_w4_h_8bpc_lsx: 3.9 ( 5.06x)
mc_8tap_regular_w4_hv_8bpc_c: 44.3 ( 1.00x)
mc_8tap_regular_w4_hv_8bpc_lsx: 15.0 ( 2.96x)
mc_8tap_regular_w4_v_8bpc_c: 23.5 ( 1.00x)
mc_8tap_regular_w4_v_8bpc_lsx: 4.2 ( 5.54x)
mc_8tap_regular_w8_0_8bpc_c: 4.8 ( 1.00x)
mc_8tap_regular_w8_0_8bpc_lsx: 0.8 ( 6.03x)
mc_8tap_regular_w8_h_8bpc_c: 37.5 ( 1.00x)
mc_8tap_regular_w8_h_8bpc_lsx: 7.6 ( 4.96x)
mc_8tap_regular_w8_hv_8bpc_c: 84.0 ( 1.00x)
mc_8tap_regular_w8_hv_8bpc_lsx: 23.9 ( 3.51x)
mc_8tap_regular_w8_v_8bpc_c: 44.8 ( 1.00x)
mc_8tap_regular_w8_v_8bpc_lsx: 7.2 ( 6.23x)
mc_8tap_regular_w16_0_8bpc_c: 5.8 ( 1.00x)
mc_8tap_regular_w16_0_8bpc_lsx: 1.1 ( 5.12x)
mc_8tap_regular_w16_h_8bpc_c: 103.8 ( 1.00x)
mc_8tap_regular_w16_h_8bpc_lsx: 21.6 ( 4.80x)
mc_8tap_regular_w16_hv_8bpc_c: 220.2 ( 1.00x)
mc_8tap_regular_w16_hv_8bpc_lsx: 65.1 ( 3.38x)
mc_8tap_regular_w16_v_8bpc_c: 124.8 ( 1.00x)
mc_8tap_regular_w16_v_8bpc_lsx: 19.9 ( 6.28x)
mc_8tap_regular_w32_0_8bpc_c: 8.9 ( 1.00x)
mc_8tap_regular_w32_0_8bpc_lsx: 2.9 ( 3.06x)
mc_8tap_regular_w32_h_8bpc_c: 323.6 ( 1.00x)
mc_8tap_regular_w32_h_8bpc_lsx: 69.1 ( 4.68x)
mc_8tap_regular_w32_hv_8bpc_c: 649.5 ( 1.00x)
mc_8tap_regular_w32_hv_8bpc_lsx: 197.7 ( 3.29x)
mc_8tap_regular_w32_v_8bpc_c: 390.5 ( 1.00x)
mc_8tap_regular_w32_v_8bpc_lsx: 61.9 ( 6.31x)
mc_8tap_regular_w64_0_8bpc_c: 13.3 ( 1.00x)
mc_8tap_regular_w64_0_8bpc_lsx: 9.7 ( 1.37x)
mc_8tap_regular_w64_h_8bpc_c: 1145.3 ( 1.00x)
mc_8tap_regular_w64_h_8bpc_lsx: 248.2 ( 4.61x)
mc_8tap_regular_w64_hv_8bpc_c: 2204.4 ( 1.00x)
mc_8tap_regular_w64_hv_8bpc_lsx: 682.1 ( 3.23x)
mc_8tap_regular_w64_v_8bpc_c: 1384.9 ( 1.00x)
mc_8tap_regular_w64_v_8bpc_lsx: 218.9 ( 6.33x)
mc_8tap_regular_w128_0_8bpc_c: 33.6 ( 1.00x)
mc_8tap_regular_w128_0_8bpc_lsx: 27.7 ( 1.21x)
mc_8tap_regular_w128_h_8bpc_c: 3228.1 ( 1.00x)
mc_8tap_regular_w128_h_8bpc_lsx: 701.7 ( 4.60x)
mc_8tap_regular_w128_hv_8bpc_c: 6108.2 ( 1.00x)
mc_8tap_regular_w128_hv_8bpc_lsx: 1905.3 ( 3.21x)
mc_8tap_regular_w128_v_8bpc_c: 3906.8 ( 1.00x)
mc_8tap_regular_w128_v_8bpc_lsx: 617.4 ( 6.33x)
Files Modified:
- src/loongarch/mc.S
- src/loongarch/mc.h
d61886753328cb11227580ed411ac5d889486d63 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/d61886753328cb11227580ed411ac5d889486d63
Authored: 2023-12-01 11:08:09 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of avg functions
Relative speedup over C code:
avg_w4_8bpc_c: 7.0 ( 1.00x)
avg_w4_8bpc_lsx: 0.8 ( 8.69x)
avg_w4_8bpc_lasx: 0.8 ( 8.94x)
avg_w8_8bpc_c: 20.4 ( 1.00x)
avg_w8_8bpc_lsx: 1.1 (18.25x)
avg_w8_8bpc_lasx: 0.9 (23.16x)
avg_w16_8bpc_c: 65.1 ( 1.00x)
avg_w16_8bpc_lsx: 2.5 (26.43x)
avg_w16_8bpc_lasx: 2.0 (32.05x)
avg_w32_8bpc_c: 255.1 ( 1.00x)
avg_w32_8bpc_lsx: 8.6 (29.74x)
avg_w32_8bpc_lasx: 6.0 (42.80x)
avg_w64_8bpc_c: 611.0 ( 1.00x)
avg_w64_8bpc_lsx: 21.0 (29.10x)
avg_w64_8bpc_lasx: 12.1 (50.36x)
avg_w128_8bpc_c: 1519.3 ( 1.00x)
avg_w128_8bpc_lsx: 88.7 (17.13x)
avg_w128_8bpc_lasx: 60.3 (25.20x)
Files Modified:
- src/loongarch/mc.S
- src/loongarch/mc.h
4080673c17fe4ee248ba94eb0299b951b0d72fb4 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/4080673c17fe4ee248ba94eb0299b951b0d72fb4
Authored: 2023-12-01 10:29:51 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of mask_c, w_mask_420 functions
Relative speedup over C code:
mask_w4_8bpc_c: 9.2 ( 1.00x)
mask_w4_8bpc_lsx: 1.1 ( 8.31x)
mask_w4_8bpc_lasx: 1.2 ( 7.42x)
mask_w8_8bpc_c: 27.4 ( 1.00x)
mask_w8_8bpc_lsx: 2.6 (10.54x)
mask_w8_8bpc_lasx: 1.9 (14.65x)
mask_w16_8bpc_c: 87.2 ( 1.00x)
mask_w16_8bpc_lsx: 8.0 (10.92x)
mask_w16_8bpc_lasx: 6.5 (13.46x)
mask_w32_8bpc_c: 343.4 ( 1.00x)
mask_w32_8bpc_lsx: 31.7 (10.84x)
mask_w32_8bpc_lasx: 22.1 (15.51x)
mask_w64_8bpc_c: 824.9 ( 1.00x)
mask_w64_8bpc_lsx: 78.0 (10.57x)
mask_w64_8bpc_lasx: 54.1 (15.25x)
mask_w128_8bpc_c: 2042.9 ( 1.00x)
mask_w128_8bpc_lsx: 200.7 (10.18x)
mask_w128_8bpc_lasx: 157.1 (13.00x)
w_mask_420_w4_8bpc_c: 19.0 ( 1.00x)
w_mask_420_w4_8bpc_lsx: 1.7 (11.11x)
w_mask_420_w4_8bpc_lasx: 1.2 (15.87x)
w_mask_420_w8_8bpc_c: 58.2 ( 1.00x)
w_mask_420_w8_8bpc_lsx: 4.6 (12.58x)
w_mask_420_w8_8bpc_lasx: 2.5 (23.74x)
w_mask_420_w16_8bpc_c: 188.0 ( 1.00x)
w_mask_420_w16_8bpc_lsx: 11.8 (15.88x)
w_mask_420_w16_8bpc_lasx: 8.3 (22.66x)
w_mask_420_w32_8bpc_c: 742.2 ( 1.00x)
w_mask_420_w32_8bpc_lsx: 47.3 (15.68x)
w_mask_420_w32_8bpc_lasx: 32.7 (22.68x)
w_mask_420_w64_8bpc_c: 1786.3 ( 1.00x)
w_mask_420_w64_8bpc_lsx: 112.4 (15.89x)
w_mask_420_w64_8bpc_lasx: 78.4 (22.78x)
w_mask_420_w128_8bpc_c: 4442.2 ( 1.00x)
w_mask_420_w128_8bpc_lsx: 298.9 (14.86x)
w_mask_420_w128_8bpc_lasx: 220.5 (20.15x)
Files Modified:
- src/loongarch/mc.S
- src/loongarch/mc.h
bde69a94bf9caef8e104124fcbc351e6bb70d4d9 by Hao Chen
https://code.videolan.org/videolan/dav1d/commit/bde69a94bf9caef8e104124fcbc351e6bb70d4d9
Authored: 2023-12-01 10:21:11 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of w_avg functions
Relative speedup over C code:
w_avg_w4_8bpc_c: 8.6 ( 1.00x)
w_avg_w4_8bpc_lsx: 1.0 ( 8.53x)
w_avg_w4_8bpc_lasx: 1.0 ( 8.79x)
w_avg_w8_8bpc_c: 24.4 ( 1.00x)
w_avg_w8_8bpc_lsx: 2.7 ( 8.90x)
w_avg_w8_8bpc_lasx: 1.6 (15.33x)
w_avg_w16_8bpc_c: 77.4 ( 1.00x)
w_avg_w16_8bpc_lsx: 6.9 (11.29x)
w_avg_w16_8bpc_lasx: 5.2 (14.88x)
w_avg_w32_8bpc_c: 303.7 ( 1.00x)
w_avg_w32_8bpc_lsx: 27.2 (11.16x)
w_avg_w32_8bpc_lasx: 14.2 (21.43x)
w_avg_w64_8bpc_c: 725.8 ( 1.00x)
w_avg_w64_8bpc_lsx: 66.1 (10.98x)
w_avg_w64_8bpc_lasx: 35.4 (20.48x)
w_avg_w128_8bpc_c: 1812.6 ( 1.00x)
w_avg_w128_8bpc_lsx: 169.9 (10.67x)
w_avg_w128_8bpc_lasx: 111.7 (16.23x)
Files Modified:
- src/loongarch/mc.S
- src/loongarch/mc.h
a23a1e7f814212a809601b55dc22d5edb428e3a5 by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/a23a1e7f814212a809601b55dc22d5edb428e3a5
Authored: 2023-11-30 20:40:38 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: Improve the performance of warp8x8, warp8x8t functions
Relative speedup over C code:
warp_8x8_8bpc_c: 81.3 ( 1.00x)
warp_8x8_8bpc_lsx: 27.1 ( 3.00x)
warp_8x8_8bpc_lasx: 17.9 ( 4.54x)
warp_8x8t_8bpc_c: 71.7 ( 1.00x)
warp_8x8t_8bpc_lsx: 26.6 ( 2.69x)
warp_8x8t_8bpc_lasx: 17.7 ( 4.04x)
Files Added:
- src/loongarch/mc.S
- src/loongarch/mc.h
Files Modified:
- src/mc_tmpl.c
- src/meson.build
4fb71a1a014f825ccf6f46ac4c003278db82db2b by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/4fb71a1a014f825ccf6f46ac4c003278db82db2b
Authored: 2023-11-30 20:30:59 +0800
Committed: 2024-01-21 15:31:46 +0800
loongarch: add loongson_asm.S
Files Added:
- src/loongarch/loongson_asm.S
2e952f300fa29fbbfbdb9986c826bfec708834be by yuanhecai
https://code.videolan.org/videolan/dav1d/commit/2e952f300fa29fbbfbdb9986c826bfec708834be
Authored: 2023-06-28 10:52:35 +0800
Committed: 2024-01-21 15:06:52 +0800
Add loongarch support
Files Added:
- src/loongarch/cpu.c
- src/loongarch/cpu.h
Files Modified:
- include/common/attributes.h
- meson.build
- src/cpu.c
- src/cpu.h
- src/meson.build
- tests/checkasm/checkasm.c
- tests/checkasm/checkasm.h
- tools/dav1d_cli_parse.c
7d225bec62cd923397c2294db0776b526b0e0a2e by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/7d225bec62cd923397c2294db0776b526b0e0a2e
Authored: 2024-01-15 14:54:46 +0100
Committed: 2024-01-15 14:54:46 +0100
CI: Add loongarch64 tests
Files Modified:
- .gitlab-ci.yml
655d7ec07dfefd4af3b6eb7d0d9b5adaee7be61c by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/655d7ec07dfefd4af3b6eb7d0d9b5adaee7be61c
Authored: 2024-01-14 06:49:31 +0100
Committed: 2024-01-15 09:35:54 +0100
CI: Add loongarch64 toolchain
Files Added:
- package/crossfiles/loongarch64-linux.meson
Files Modified:
- .gitlab-ci.yml
d23e87f7aee26ddcf5f7a2e185112031477599a7 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/d23e87f7aee26ddcf5f7a2e185112031477599a7
Authored: 2023-12-21 21:47:09 +0100
Committed: 2024-01-11 12:35:34 +0000
checkasm: Prefer sigsetjmp()/siglongjmp() over SA_NODEFER
Also prefer re-setting the signal handler upon intercept in combination
with SA_RESETHAND over re-raising exceptions with the SIG_DFL handler.
Files Modified:
- tests/checkasm/checkasm.c
- tests/checkasm/checkasm.h
8501a4b20135f93a4c3b426468e2240e872949c5 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/8501a4b20135f93a4c3b426468e2240e872949c5
Authored: 2023-12-21 16:22:57 +0100
Committed: 2024-01-11 12:35:34 +0000
checkasm: Make signal handling async-signal-safe
Files Modified:
- tests/checkasm/checkasm.c
- tests/checkasm/checkasm.h
ceeb535d9436b1398448ca27892803db774c52b4 by Ronald S. Bultje
https://code.videolan.org/videolan/dav1d/commit/ceeb535d9436b1398448ca27892803db774c52b4
Authored: 2024-01-03 08:36:07 -0500
Committed: 2024-01-03 13:42:40 -0500
qm: derive more tables at runtime
This reduces binary size from ~50kb to ~35kb. Ideas provided by Yu-Chen
(Eric) Sun and Ryan Lei from Meta.
Files Modified:
- src/qm.c
| Reporter | ||
Comment 1•2 years ago
|
||
| TJKEXKGvS-a17iYXTI9wPQ | ||
./mach vendor media/libdav1d/moz.yaml reported an error editing moz.build files:
Latest commit is e2c7a4408b78a05460cea2b98afbca9048567f14 from 2024-01-22T12:02:28.000+00:00
Fetching code archive from https://code.videolan.org/videolan/dav1d/-/archive/e2c7a4408b78a05460cea2b98afbca9048567f14.tar.gz
Retaining wanted in-tree files.
Cleaning third_party/dav1d to import changes.
Unpacking upstream files for third_party/dav1d.
Retaining wanted files from upstream changes.
Removing excluded files from upstream changes.
Removing: [/tmp/tmpixctdrty/.gitignore, /tmp/tmpixctdrty/.gitlab-ci.yml, 5 items in /tmp/tmpixctdrty/doc: Doxyfile.in.in, PATENTS, dav1d_logo.png, dav1d_logo.svg and meson.build, 7 items in /tmp/tmpixctdrty/examples: dav1dplay.c, dp_fifo.c, dp_fifo.h, dp_renderer.h, dp_renderer_placebo.c, dp_renderer_sdl.c and meson.build, 10 (omitted) items in /tmp/tmpixctdrty/package/crossfiles, /tmp/tmpixctdrty/package/snap/snapcraft.yaml, /tmp/tmpixctdrty/tests/checkasm/arm/checkasm_32.S, /tmp/tmpixctdrty/tests/checkasm/arm/checkasm_64.S, 12 (omitted) items in /tmp/tmpixctdrty/tests/checkasm, /tmp/tmpixctdrty/tests/checkasm/x86/checkasm.asm, /tmp/tmpixctdrty/tools/compat/getopt.c, 6 items in /tmp/tmpixctdrty/tools: dav1d.c, dav1d.manifest, dav1d.rc.in, dav1d_cli_parse.c, dav1d_cli_parse.h and meson.build, 7 items in /tmp/tmpixctdrty/tools/input: annexb.c, demuxer.h, input.c, input.h, ivf.c, parse.h and section5.c, 8 items in /tmp/tmpixctdrty/tools/output: md5.c, muxer.h, null.c, output.c, output.h, xxhash.c, y4m2.c and yuv.c]
Copying to third_party/dav1d.
Checking for update actions
action: copy-file src: /builds/worker/checkouts/gecko/third_party/dav1d/include/vcs_version.h.in dst: /builds/worker/checkouts/gecko/media/libdav1d/vcs_version.h
action: replace-in-file file: /builds/worker/checkouts/gecko/media/libdav1d/vcs_version.h
action: run-script command: /builds/worker/checkouts/gecko/media/libdav1d/update-version.sh working dir: /builds/worker/checkouts/gecko/third_party/dav1d args: ['/builds/worker/checkouts/gecko/media/libdav1d/version.h']
/builds/worker/checkouts/gecko/media/libdav1d/update-version.sh /builds/worker/checkouts/gecko/media/libdav1d/version.h
Registering changes with version control.
Checking for a spurious update.
Version 'e2c7a4408b78a05460cea2b98afbca9048567f14' has changed 31 files.
Updating moz.yaml.
Found release: 746ab8b4f3021d7263c64d6b5d6f1e2c281c7acc (2023-12-19T13:15:43.000+01:00).Found revision: 746ab8b4f3021d7263c64d6b5d6f1e2c281c7acc
Updating moz.build files
Found 9 files added and 0 files removed.
Could not add third_party/dav1d/src/loongarch/cpu.c to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/itx.S to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/loongson_asm.S to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/loopfilter.S to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/looprestoration.S to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/looprestoration_tmpl.c to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/mc.S to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/msac.S to the appropriate moz.build file
Could not add third_party/dav1d/src/loongarch/refmvs.S to the appropriate moz.build file
This is a deficiency in ./mach vendor . Please review the affected files before committing.
We're going to continue processing the update; but we may fail because we couldn't handle these files. If we do succeed, you may want to add these files to the 'exclude' key in the moz.yaml file, so they are excluded from the source tree and ignored in the future.
| Reporter | ||
Comment 2•2 years ago
|
||
| TJKEXKGvS-a17iYXTI9wPQ | ||
I've submitted a try run for this commit: https://treeherder.mozilla.org/jobs?repo=try&revision=46c927b7786cf14b2e665c9a88fd9574d61359d4
| Reporter | ||
Comment 3•2 years ago
|
||
| Reporter | ||
Comment 4•2 years ago
|
||
| EUMLo1JxRcSVEdvInNuN5w | ||
It looks like we experienced one or more build failures when trying to apply this
update. You will need to apply this update manually; you can replicate the patch
locally with ./mach vendor media/libdav1d/moz.yaml. I'm going to abandon the Phabricator patch and
let you submit a new one.
If the build failure wasn't caused by a library change, and was instead caused by
something structural in the build system please let my maintainers know in
Slack:#secinf.
I do my best to automatically add new files to the build, but some moz.build files
are complicated and you may need to fix them manually.
Updated•2 years ago
|
| Assignee | ||
Updated•2 years ago
|
| Assignee | ||
Comment 5•2 years ago
|
||
Updated•2 years ago
|
Comment 7•2 years ago
|
||
| bugherder | ||
Description
•