lavu/float_dsp: R-V V scalarproduct_double

C908:
scalarproduct_double_c:       39.2
scalarproduct_double_rvv_f64: 10.5

X60:
scalarproduct_double_c:       35.0
scalarproduct_double_rvv_f64:  5.2
This commit is contained in:
Rémi Denis-Courmont
2024-05-29 17:57:09 +03:00
parent b114952030
commit 9238f6cb41
2 changed files with 24 additions and 0 deletions

View File

@@ -46,6 +46,8 @@ void ff_vector_dmac_scalar_rvv(double *dst, const double *src, double mul,
int len);
void ff_vector_dmul_scalar_rvv(double *dst, const double *src, double mul,
int len);
double ff_scalarproduct_double_rvv(const double *v1, const double *v2,
size_t len);
av_cold void ff_float_dsp_init_riscv(AVFloatDSPContext *fdsp)
{
@@ -68,6 +70,7 @@ av_cold void ff_float_dsp_init_riscv(AVFloatDSPContext *fdsp)
fdsp->vector_dmul = ff_vector_dmul_rvv;
fdsp->vector_dmac_scalar = ff_vector_dmac_scalar_rvv;
fdsp->vector_dmul_scalar = ff_vector_dmul_scalar_rvv;
fdsp->scalarproduct_double = ff_scalarproduct_double_rvv;
}
}
#endif