> Is this going to be reused anywhere? it seems the macro is only used once
atm.
The next patch will use ([PATCH 4/5] lavc/hevc: R-V V pel_uni(pow2))
> Also is there a reason to use RVV here instead of just unaligned RVI?
Yes, RVI is enough; I deleted it and resent it.
Rémi Denis-Courmont 于202
Le maanantaina 28. lokakuuta 2024, 19.08.24 EET u...@foxmail.com a écrit :
> From: sunyuechi
>
> k230
> banana_f3 put_uni_pixels_chroma_8_4x4_c: 128.3 (
> 1.00x)90.5 ( 1.00x) put_uni_pixels_chroma_8_4x
> Up to 64-bit rows, you can use strided loads and stores here.
Due to the SRC_OFFSET in testing, only e8 and e16 can be loaded; e32 cannot
be loaded (Bus error).
Since the width ranges from 4 to 128, it seems that strided loads may not
be possible.
> Though for memory copying, unaligned scalar a
From: sunyuechi
k230
banana_f3
put_uni_pixels_chroma_8_4x4_c: 128.3 ( 1.00x)90.5 (
1.00x)
put_uni_pixels_chroma_8_4x4_rvv_i32:17.6 ( 7.30x)17.4 (
5.18x)
put_uni_pixels_chroma
Le lauantaina 19. lokakuuta 2024, 13.55.46 EEST Rémi Denis-Courmont a écrit :
> Le perjantaina 11. lokakuuta 2024, 13.40.20 EEST u...@foxmail.com a écrit :
> > From: sunyuechi
> > +.macro put_uni_pixels w, vlen, id
> > +\id\w\vlen:
> > +.if \w == 128 && \vlen == 128
> > +li
Le perjantaina 11. lokakuuta 2024, 13.40.20 EEST u...@foxmail.com a écrit :
> From: sunyuechi
> +.macro put_uni_pixels w, vlen, id
> +\id\w\vlen:
> +.if \w == 128 && \vlen == 128
> +lit0, \w
> +vsetvli zero, t0, e8, m8, ta, ma
> +.else
> +vsetvlsta
From: sunyuechi
k230
banana_f3
put_uni_pixels_chroma_8_4x4_c: 128.3 ( 1.00x)90.5 (
1.00x)
put_uni_pixels_chroma_8_4x4_rvv_i32:17.6 ( 7.30x)17.4 (
5.18x)
put_uni_pixels_chroma