FFmpeg/libavutil
Nathan E. Egge 8280ec7a32 lavu/riscv: Revert d808070, removing AV_READ_TIME
The implementation of ff_read_time() for RISC-V uses rdtime which has
 precision on existing hardware too low (!) for benchmarking purposes.
Deleting this implementation falls back on clock_gettime() which was
 added as the default ff_read_time() implementation in 33e4cc9.
Below are metrics gathered on SpacemiT K1, before and after this commit:

Before:

$ tests/checkasm/checkasm --bench
benchmarking with native FFmpeg timers
nop: 0.0
checkasm: using random seed 3473665261
checkasm: bench runs 1024 (1 << 10)
RVI:
 - pixblockdsp.get_pixels                [OK]
 - vc1dsp.mspel_pixels                   [OK]
RVF:
 - audiodsp.audiodsp                     [OK]
checkasm: all 4 tests passed
audiodsp.vector_clipf_c: 1388.7
audiodsp.vector_clipf_rvf: 261.5
get_pixels_c: 2.0
get_pixels_rvi: 1.5
vc1dsp.put_vc1_mspel_pixels_tab[0][0]_c: 8.0
vc1dsp.put_vc1_mspel_pixels_tab[0][0]_rvi: 1.0
vc1dsp.put_vc1_mspel_pixels_tab[1][0]_c: 2.0
vc1dsp.put_vc1_mspel_pixels_tab[1][0]_rvi: 0.5

After:

$ tests/checkasm/checkasm --bench
benchmarking with native FFmpeg timers
nop: 56.4
checkasm: using random seed 1021411603
checkasm: bench runs 1024 (1 << 10)
RVI:
 - pixblockdsp.get_pixels                [OK]
 - vc1dsp.mspel_pixels                   [OK]
RVF:
 - audiodsp.audiodsp                     [OK]
checkasm: all 4 tests passed
audiodsp.vector_clipf_c: 23236.4
audiodsp.vector_clipf_rvf: 11038.4
get_pixels_c: 79.6
get_pixels_rvi: 48.4
vc1dsp.put_vc1_mspel_pixels_tab[0][0]_c: 329.6
vc1dsp.put_vc1_mspel_pixels_tab[0][0]_rvi: 38.1
vc1dsp.put_vc1_mspel_pixels_tab[1][0]_c: 89.9
vc1dsp.put_vc1_mspel_pixels_tab[1][0]_rvi: 17.1

Signed-off-by: Rémi Denis-Courmont <remi@remlab.net>
2024-07-31 17:48:50 +03:00
..
aarch64 aarch64: Add OpenBSD runtime detection of dotprod and i8mm using sysctl 2024-06-26 02:06:53 -04:00
arm
loongarch
mips
ppc
riscv lavu/riscv: Revert d808070, removing AV_READ_TIME 2024-07-31 17:48:50 +03:00
tests lavu/riscv: add CPU flag for B bit manipulations 2024-07-25 23:09:58 +03:00
x86 x86/intreadwrite: add SSE2 optimized AV_COPY128U 2024-07-29 23:17:52 -03:00
.gitignore
adler32.c
adler32.h
aes_ctr.c
aes_ctr.h
aes_internal.h
aes.c
aes.h
ambient_viewing_environment.c
ambient_viewing_environment.h
attributes_internal.h
attributes.h
audio_fifo.c
audio_fifo.h
avassert.h
avsscanf.c avutil/avsscanf: Remove dead code 2024-07-21 17:02:12 +02:00
avstring.c
avstring.h
avutil.h
avutilres.rc
base64.c
base64.h
blowfish.c
blowfish.h
bprint.c
bprint.h
bswap.h
buffer_internal.h
buffer.c avutil/buffer: Check ff_mutex_init() for failure 2024-07-21 17:02:13 +02:00
buffer.h
camellia.c
camellia.h
cast5.c
cast5.h
channel_layout.c
channel_layout.h
colorspace.h
common.h
cpu_internal.h
cpu.c lavu/riscv: add CPU flag for B bit manipulations 2024-07-25 23:09:58 +03:00
cpu.h lavu/riscv: add CPU flag for B bit manipulations 2024-07-25 23:09:58 +03:00
crc.c
crc.h
csp.c
csp.h
cuda_check.h
des.c
des.h
detection_bbox.c
detection_bbox.h
dict_internal.h
dict.c
dict.h
display.c
display.h
dovi_meta.c
dovi_meta.h avutil/dovi_meta: add dv_md_compression to cfg record 2024-07-28 12:20:07 +02:00
downmix_info.c
downmix_info.h
dynarray.h
emms.h
encryption_info.c
encryption_info.h
error.c
error.h
eval.c
eval.h
executor.c avutil/executor: Fix stack overflow due to recursive call 2024-07-11 20:26:23 +08:00
executor.h avutil/executor: Allowing thread_count be zero 2024-06-27 20:54:42 +08:00
ffmath.h
fifo.c
fifo.h
file_open.c avutil/file_open: Fix build error with wasi 2024-07-16 22:50:21 +08:00
file_open.h
file.c
file.h
film_grain_params.c
film_grain_params.h
fixed_dsp.c
fixed_dsp.h
float2half.c
float2half.h
float_dsp.c
float_dsp.h
frame.c avutil/frame: Check log2_crop_align 2024-07-21 17:02:13 +02:00
frame.h
getenv_utf8.h
half2float.c
half2float.h
hash.c
hash.h
hdr_dynamic_metadata.c
hdr_dynamic_metadata.h
hdr_dynamic_vivid_metadata.c
hdr_dynamic_vivid_metadata.h
hmac.c
hmac.h
hwcontext_cuda_internal.h
hwcontext_cuda.c
hwcontext_cuda.h
hwcontext_d3d11va.c avutil/hwcontext_d3d11va: Free AVD3D11FrameDescriptor on error 2024-07-10 18:10:09 +02:00
hwcontext_d3d11va.h
hwcontext_d3d12va_internal.h
hwcontext_d3d12va.c avutil/hwcontext_d3d12va: add Flags for resource creation 2024-07-02 14:15:12 +02:00
hwcontext_d3d12va.h avutil/hwcontext_d3d12va: add Flags for resource creation 2024-07-02 14:15:12 +02:00
hwcontext_drm.c
hwcontext_drm.h
hwcontext_dxva2.c avutil/hwcontext_d3d11va: correct sizeof IDirect3DSurface9 2024-07-10 18:10:09 +02:00
hwcontext_dxva2.h
hwcontext_internal.h
hwcontext_mediacodec.c
hwcontext_mediacodec.h
hwcontext_opencl.c
hwcontext_opencl.h
hwcontext_qsv.c lavu/hwcontext_qsv: Derive bind flag from frame type if no valid surface 2024-07-30 13:41:15 +08:00
hwcontext_qsv.h
hwcontext_stub.c
hwcontext_vaapi.c
hwcontext_vaapi.h
hwcontext_vdpau.c
hwcontext_vdpau.h
hwcontext_videotoolbox.c avutil/hwcontext_videotoolbox: Fix build with older SDKs 2024-07-16 19:51:45 +08:00
hwcontext_videotoolbox.h avutil/hwcontext_videotoolbox: Update documentation 2024-07-05 19:13:43 +08:00
hwcontext_vulkan.c
hwcontext_vulkan.h
hwcontext.c
hwcontext.h
iamf.c
iamf.h
imgutils_internal.h
imgutils.c avutil/imgutils: av_image_check_size2() ensure width and height fit in 32bit 2024-07-12 22:16:05 +02:00
imgutils.h
integer.c
integer.h
internal.h
intfloat.h
intmath.c
intmath.h
intreadwrite.h avutil/intreadwrite: add missing aligned read/write macros 2024-07-29 21:33:31 -03:00
lfg.c
lfg.h
libavutil.v
libm.h
lls.c
lls.h
log2_tab.c
log.c
log.h
lzo.c
lzo.h
macos_kperf.c
macos_kperf.h
macros.h
Makefile
mastering_display_metadata.c
mastering_display_metadata.h
mathematics.c
mathematics.h
md5.c
md5.h
mem_internal.h
mem.c
mem.h
motion_vector.h
murmur3.c
murmur3.h
objc.h
opt.c
opt.h
parseutils.c
parseutils.h
pca.c
pca.h
pixdesc.c
pixdesc.h
pixelutils.c
pixelutils.h
pixfmt.h
qsort.h
random_seed.c
random_seed.h
rational.c
rational.h
rc4.c
rc4.h
replaygain.h
reverse.c
reverse.h
ripemd.c
ripemd.h
samplefmt.c
samplefmt.h
sfc64.h
sha512.c
sha512.h
sha.c
sha.h
slicethread.c avutil/slicethread: Check pthread_*_init() for failure 2024-07-21 17:02:13 +02:00
slicethread.h
softfloat_ieee754.h
softfloat_tables.h
softfloat.h
spherical.c
spherical.h
stereo3d.c avutil/stereo3d: add a Stereo3D view to signal that the view is unspecified 2024-06-28 13:16:57 -03:00
stereo3d.h avutil/stereo3d: add a Stereo3D view to signal that the view is unspecified 2024-06-28 13:16:57 -03:00
tablegen.h
tea.c
tea.h
thread.h
threadmessage.c
threadmessage.h
time_internal.h
time.c
time.h
timecode.c avutil/timecode: Use a 64bit framenum internally 2024-07-21 15:29:25 +02:00
timecode.h
timer.h lavu/riscv: Revert d808070, removing AV_READ_TIME 2024-07-31 17:48:50 +03:00
timestamp.c avutil/timestamp: avoid possible FPE when 0 is passed to av_ts_make_time_string2() 2024-06-30 09:11:44 +02:00
timestamp.h
tree.c
tree.h
twofish.c
twofish.h
tx_double.c
tx_float.c
tx_int32.c
tx_priv.h
tx_template.c
tx.c
tx.h
utils.c
uuid.c
uuid.h
version_major.h
version.c
version.h avutil/intreadwrite: add missing aligned read/write macros 2024-07-29 21:33:31 -03:00
video_enc_params.c
video_enc_params.h
video_hint.c
video_hint.h
vulkan_functions.h
vulkan_loader.h
vulkan.c vulkan: rename read_only to singular 2024-07-14 18:33:56 +02:00
vulkan.h vulkan: rename read_only to singular 2024-07-14 18:33:56 +02:00
wchar_filename.h avutil/wchar_filename: Correct sizeof 2024-07-10 18:10:10 +02:00
xga_font_data.c
xga_font_data.h
xtea.c
xtea.h