Skip to content

riscv64/mc: Add emu_edge function

Sungjoon Moon requested to merge OctopusET/dav1d:rvv_emu_edge into master

I'm still working on VLEN>=256bits

K230:
checkasm: VLEN=128 bits, using random seed 42
RVV:
 - mc_8bpc.emu_edge             [OK]
checkasm: all 6 tests passed
emu_edge_w4_8bpc_c:        638.8 ( 1.00x)
emu_edge_w4_8bpc_rvv:      211.9 ( 3.01x)
emu_edge_w8_8bpc_c:        944.4 ( 1.00x)
emu_edge_w8_8bpc_rvv:      230.0 ( 4.11x)
emu_edge_w16_8bpc_c:      1447.9 ( 1.00x)
emu_edge_w16_8bpc_rvv:     287.6 ( 5.03x)
emu_edge_w32_8bpc_c:      3047.0 ( 1.00x)
emu_edge_w32_8bpc_rvv:     775.8 ( 3.93x)
emu_edge_w64_8bpc_c:      5440.1 ( 1.00x)
emu_edge_w64_8bpc_rvv:    1504.2 ( 3.62x)
emu_edge_w128_8bpc_c:    12943.4 ( 1.00x)
emu_edge_w128_8bpc_rvv:   4782.5 ( 2.71x)

Spacemit K1:
checkasm: VLEN=256 bits, using random seed 42
RVV:
 - mc_8bpc.emu_edge             [OK]
checkasm: all 6 tests passed
emu_edge_w4_8bpc_c:        562.4 ( 1.00x)
emu_edge_w4_8bpc_rvv:      202.6 ( 2.78x)
emu_edge_w8_8bpc_c:        695.0 ( 1.00x)
emu_edge_w8_8bpc_rvv:      220.1 ( 3.16x)
emu_edge_w16_8bpc_c:      1271.2 ( 1.00x)
emu_edge_w16_8bpc_rvv:     251.3 ( 5.06x)
emu_edge_w32_8bpc_c:      2772.4 ( 1.00x)
emu_edge_w32_8bpc_rvv:     587.8 ( 4.72x)
emu_edge_w64_8bpc_c:      4917.2 ( 1.00x)
emu_edge_w64_8bpc_rvv:    1115.0 ( 4.41x)
emu_edge_w128_8bpc_c:    12634.6 ( 1.00x)
emu_edge_w128_8bpc_rvv:   3232.6 ( 3.91x)
Edited by Sungjoon Moon

Merge request reports

Loading