1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2025-02-09 14:14:39 +02:00
FFmpeg/libavcodec
Rémi Denis-Courmont 3606e592ea lavc/h264dsp: R-V V 8-bit h264_weight_pixels
There are two implementations here:
- a generic scalable one processing two columns at a time,
- a specialised processing one (fixed-size) row at a time.

Unsurprisingly, the generic one works out better with smaller widths.
With larger widths, the gains from filling vectors are outweighed by
the extra cost of strided loads and stores. In other words, memory
accesses become the bottleneck.

T-Head C908:
h264_weight2_8_c:        54.5
h264_weight2_8_rvv_i32:  13.7
h264_weight4_8_c:       101.7
h264_weight4_8_rvv_i32:  27.5
h264_weight8_8_c:       197.0
h264_weight8_8_rvv_i32:  75.5
h264_weight16_8_c:      385.0
h264_weight16_8_rvv_i32: 74.2

SpacemiT X60:
h264_weight2_8_c:        48.5
h264_weight2_8_rvv_i32:   8.2
h264_weight4_8_c:        90.7
h264_weight4_8_rvv_i32:  16.5
h264_weight8_8_c:       175.0
h264_weight8_8_rvv_i32:  37.7
h264_weight16_8_c:      342.2
h264_weight16_8_rvv_i32: 66.0
2024-07-09 18:03:29 +03:00
..
2024-07-03 02:48:27 +02:00
2024-06-04 11:46:27 +02:00
2024-06-04 11:46:27 +02:00
2024-06-04 11:46:27 +02:00
2024-06-08 00:22:40 +02:00
2024-06-08 00:22:40 +02:00
2024-06-04 11:46:27 +02:00
2024-06-08 00:22:35 +02:00
2024-06-13 20:36:09 -03:00
2024-06-04 11:46:27 +02:00
2024-06-07 21:42:24 +02:00
2024-07-05 18:05:10 +08:00
2024-05-31 13:36:02 -03:00
2024-06-14 21:28:10 +03:00
2024-07-03 10:21:06 -04:00
2024-07-03 10:21:17 -04:00
2024-06-08 00:22:35 +02:00
2024-06-08 00:22:35 +02:00
2024-05-28 03:48:04 +02:00
2024-05-29 10:46:54 +08:00
2024-06-04 11:46:27 +02:00
2024-06-20 18:58:39 +02:00
2024-06-03 14:13:34 +02:00
2024-06-12 12:07:49 +02:00
2024-06-20 18:58:38 +02:00
2024-06-07 21:42:24 +02:00