最近发现给Mail GPU做的开源Vulkan实现已经合入mesa有挺长一段时间了,所以来试试(
这个panvk实际上是来自Panfrost的一个vulkan实现
https://www.collabora.com/news-and-blog/news-and-events/panvk-v10-support.html
设备是Rock5B,运行Redxa的官方Debian系统。
想要跑起来大概需要如下几步:
1.关闭闭源驱动和内核参数
2.将Debian源更改为sid安装新版mesa(或者你打个新的mesa包装上去也行(推荐))
看不懂的话可以参考这里:
https://docs.radxa.com/rock5/rock5b/radxa-os/mali-gpu?Driver=Panfrost%2FPanthor
只不过你的mesa版本也要拉一下
这里还有个插曲,为了前后对比,我专门安装了闭源驱动并跑了下vkpeak 然后会segmentation fault,但是vkcube是好的,Mail的闭源驱动和IMG有的一拼啊x(后面发现是Redxa的锅,他们自己打坏了)
看nihui结界的参数 似乎还需要 PAN_I_WANT_A_BROKEN_VULKAN_DRIVER=1 但是我好像并没有设置这个环境变量也能工作
运行vkpeak如下:
root@rock-5b:~/vkpeak/build# ./vkpeak 0
device = Mali-G610
fp32-scalar = 80.08 GFLOPS
fp32-vec4 = 71.35 GFLOPS
fp16-scalar = 0.00 GFLOPS
fp16-vec4 = 0.00 GFLOPS
fp16-matrix = 0.00 GFLOPS
fp64-scalar = 0.00 GFLOPS
fp64-vec4 = 0.00 GFLOPS
int32-scalar = 27.09 GIOPS
int32-vec4 = 26.97 GIOPS
int16-scalar = 0.00 GIOPS
int16-vec4 = 0.00 GIOPS
性能如何呢,可以去对比区看看(笑):
https://github.com/NoitaniGami-idol-Group/Documentation/blob/main/gpubench.md
最近经nihui姐姐提醒,发现panvk的性能和ARM的闭源驱动差距悬殊,如果追求性能建议使用ARM闭源驱动。
最新开源驱动(截至20250912)测试结果:
device = Mali-G610
fp32-scalar = 85.40 GFLOPS
fp32-vec4 = 71.59 GFLOPS
fp16-scalar = 85.02 GFLOPS
fp16-vec4 = 150.80 GFLOPS
fp16-matrix = 0.00 GFLOPS
fp64-scalar = 0.00 GFLOPS
fp64-vec4 = 0.00 GFLOPS
int32-scalar = 27.03 GIOPS
int32-vec4 = 27.05 GIOPS
int16-scalar = 27.03 GIOPS
int16-vec4 = 53.90 GIOPS
int64-scalar = 3.65 GIOPS
int64-vec4 = 3.26 GIOPS
int8-dotprod = 429.72 GIOPS
int8-matrix = 0.00 GIOPS
bf16-dotprod = 0.00 GFLOPS
bf16-matrix = 0.00 GFLOPS
fp8-matrix = 0.00 GFLOPS
bf8-matrix = 0.00 GFLOPS
copy-h2h = 12.16 GBPS
copy-h2d = 9.32 GBPS
copy-d2h = 1.45 GBPS
copy-d2d = 11.87 GBPS
!我尝试在rock5b上启用mali驱动跑vulkan,但是按radxa文档设置完跑不了vkcube,用其他一些测试工具只能CPU软件跑OpenGL,能否给我一些指点@(小乖)vkcube报错:arm_release_ver: g24p0-00eac0, rk_so_ver: 3
Selected GPU 0: Mali-G610, type: IntegratedGpu
arm_release_ver: g24p0-00eac0, rk_so_ver: 3
段错误