Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Which rvv version should we choose? intrinsic or not? #6

Open
sunmin89 opened this issue Jul 3, 2023 · 1 comment
Open

Which rvv version should we choose? intrinsic or not? #6

sunmin89 opened this issue Jul 3, 2023 · 1 comment

Comments

@sunmin89
Copy link
Contributor

sunmin89 commented Jul 3, 2023

根据我目前的信息,有些库是兼容0.7的,有的是采用 intrinsic,很疑惑,到底该怎木选择?

这里用的是 intrinsic
https://chromium.googlesource.com/libyuv/libyuv/+/refs/heads/main/source/row_rvv.cc

这里采用纯汇编的方式实现
https://github.com/FFmpeg/FFmpeg/tree/master/libavutil/riscv

截止目前,rvv1.0 的intrinsic 接口尚未完全定义好,为了测试 rvv1.0 的 intrinsic接口,我必须把 riscv-gnu-toolchain 中的 gcc 切到master分支,似乎 **gcc14 ?**中才兼容 rvv1.0 的 intrinsic

此外,有些接口不支持intrinsic ,比如
"setvl", "vundefined", "viota", "vmclr", "vmset_", "vid", "vmv_v_x", "vfmv_v_f", "vread_csr", "vwrite_csr", "vcreate", "vlm_v"
参见: rvv-intrinsic-doc/rvv-intrinsic-generator/rvv_intrinsic_gen/generator.py

@unicornx
Copy link
Contributor

unicornx commented Jul 4, 2023

可以先不考虑 v0.7 吧,毕竟 rvv 1.0 现在已经正式发布了。

至于用 c intrinsic 还是 assembly, 我建议优先 c intrinsic,intrinsic 正式发布 1.0 应该快了吧,先用起来再说。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants