Toybrick

V1.3 Fedroa 缺少mali库支持

板蓝根

注册会员

积分
187
楼主
发表于 2019-7-2 16:32:28    查看: 27648|回复: 15 | [复制链接]    打印 | 只看该作者
我在Fedroa上准备跑glmark2时发现系统好像没有包含mali库,请问贵公司可不可以提供可安装的deb包,或者之后的更新中会不会添加mali库支持
回复

使用道具 举报

jefferyzhang

版主

积分
13574
沙发
发表于 2019-7-2 17:12:16 | 只看该作者
有的,只是因为依赖问题,我们放到了标准ocl的库里
dnf install ocl-icd-devel.aarch64
回复

使用道具 举报

板蓝根

注册会员

积分
187
板凳
 楼主| 发表于 2019-7-3 09:50:22 | 只看该作者
jefferyzhang 发表于 2019-7-2 17:12
有的,只是因为依赖问题,我们放到了标准ocl的库里
dnf install ocl-icd-devel.aarch64
...

你好,这样的话glmark2怎么去用mali来跑呢?debian上是通过链接链到mali库上去
回复

使用道具 举报

jefferyzhang

版主

积分
13574
地板
发表于 2019-7-3 10:05:00 | 只看该作者
板蓝根 发表于 2019-7-3 09:50
你好,这样的话glmark2怎么去用mali来跑呢?debian上是通过链接链到mali库上去 ...

rpm -ql ocl-icd-devel

链接这个库/usr/lib64/libOpenCL.so就可以了。
mali的GL和CL是在一个so里,我们只是解决了CL依赖而已,GL依赖还没找到相关的包。先这么用
回复

使用道具 举报

板蓝根

注册会员

积分
187
5#
 楼主| 发表于 2019-7-3 10:27:18 | 只看该作者
jefferyzhang 发表于 2019-7-3 10:05
rpm -ql ocl-icd-devel

链接这个库/usr/lib64/libOpenCL.so就可以了。

[toybrick@localhost ~]$ readlink -f /usr/lib64/libOpenCL.so
/usr/lib64/libmali.so.r18p0

但是结果FPS只有20多左右,在debian下基本上都是60,还是没有用mali在跑
回复

使用道具 举报

jefferyzhang

版主

积分
13574
6#
发表于 2019-7-3 10:51:25 | 只看该作者
板蓝根 发表于 2019-7-3 10:27
[toybrick@localhost ~]$ readlink -f /usr/lib64/libOpenCL.so
/usr/lib64/libmali.so.r18p0

这个mali库应该是没问题的,我们也在用。
可以单独写一些gl程序试下走的是不是mali.so
或者你可以从debian把那套so拷贝过来用,debian的mali是多少版本的?
回复

使用道具 举报

板蓝根

注册会员

积分
187
7#
 楼主| 发表于 2019-7-3 11:11:38 | 只看该作者
jefferyzhang 发表于 2019-7-3 10:51
这个mali库应该是没问题的,我们也在用。
可以单独写一些gl程序试下走的是不是mali.so
或者你可以从debia ...

[toybrick@localhost ~]$ ldd /usr/bin/glmark2-es2
        linux-vdso.so.1 (0x0000007f84bb2000)
        libjpeg.so.62 => /lib64/libjpeg.so.62 (0x0000007f84b1c000)
        libdl.so.2 => /lib64/libdl.so.2 (0x0000007f84afb000)
        libpng12.so.0 => /lib64/libpng12.so.0 (0x0000007f84aba000)
        libX11.so.6 => /lib64/libX11.so.6 (0x0000007f84966000)
       libEGL.so.1 => /lib64/libEGL.so.1 (0x0000007f84935000)
        libGLESv2.so.2 => /lib64/libGLESv2.so.2 (0x0000007f848f4000)
        libstdc++.so.6 => /lib64/libstdc++.so.6 (0x0000007f8474f000)
        libm.so.6 => /lib64/libm.so.6 (0x0000007f8468e000)
        libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x0000007f8465d000)
        libc.so.6 => /lib64/libc.so.6 (0x0000007f844e7000)
        /lib/ld-linux-aarch64.so.1 (0x0000007f84b84000)
        libz.so.1 => /lib64/libz.so.1 (0x0000007f844b6000)
        libxcb.so.1 => /lib64/libxcb.so.1 (0x0000007f84475000)
        libGLdispatch.so.0 => /lib64/libGLdispatch.so.0 (0x0000007f84344000)
        libpthread.so.0 => /lib64/libpthread.so.0 (0x0000007f8430f000)
        libXau.so.6 => /lib64/libXau.so.6 (0x0000007f842ee000)
[toybrick@localhost ~]$ [ 2558.267001] wl_run_escan: LEGACY_SCAN sync ID: 43, bssidx: 0


你好,是不是应该连到libEGL.so.1呢 ,我之前试过把debian 的mali,deb包解包手动cp到fedroa中然后(libmali-rk-midgard-t86x-r14p0_1.6-1_arm64.deb),然后链接上面的库,跑glmark2-es2-drm可以达到60fps,但是glmark2-es2会报一下的错

eglinitialize() failed with error 0x3001
回复

使用道具 举报

jefferyzhang

版主

积分
13574
8#
发表于 2019-7-3 11:33:03 | 只看该作者
本帖最后由 jefferyzhang 于 2019-7-3 11:35 编辑

直接链接 /usr/lib64/libmali.so.r18p0 就好了

你报错的是显示框架,跟EGL无关。

如果桌面在运行,drm已经被桌面占用了,是不能跑DRM的,但是如果你没有其他框架,只有DRM,那你跑EGL肯定初始化失败。。。

设置:sudo systemctl set-default multi-user.target
然后重启,然后就没有桌面了,这时候再跑drm的es2

库差异我们这里复现下试试
回复

使用道具 举报

板蓝根

注册会员

积分
187
9#
 楼主| 发表于 2019-7-3 11:43:28 | 只看该作者
jefferyzhang 发表于 2019-7-3 11:33
直接链接 /usr/lib64/libmali.so.r18p0 就好了

你报错的是显示框架,跟EGL无关。

上面的报错是跑glmark2-es2跑的错 ,glmark2-es2-drm是成功的。。
回复

使用道具 举报

jefferyzhang

版主

积分
13574
10#
发表于 2019-7-3 11:43:56 | 只看该作者
板蓝根 发表于 2019-7-3 11:43
上面的报错是跑glmark2-es2跑的错 ,glmark2-es2-drm是成功的。。

glmark2是自己编译的还是dnf install的?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表