Where can I find GPU SDK for i.MX8QM?

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

Where can I find GPU SDK for i.MX8QM?

跳至解决方案
4,364 次查看
gabrielaugustoc
Contributor II

Hi, I would like to use OpenCL with i.MX8QM and I could not find the libraries and compiler for Vivante GC7000/XSVX GPGPU.
I have found on the i.MX Linux Reference Manual, page 166, the list of libraries for the GPU, but I did not find which libraries are for the i.MX8QM, how to get and install them.
My kernel version is 4.14.170 and I am using Debian 9 for Arm64.

0 项奖励
回复
1 解答
4,280 次查看
gabrielaugustoc
Contributor II

Hi everyone,

So, the simplest solution to use OpenCL on Debian for i.MX8QM, take the blue pill, and use the Debian10 RootFS from Variscite:
ftp://ftp.variscite.com/VAR-SOM-MX8/Software/debian/

Mount this image as a loop in the memory system, then compress with tar, and install where you want.
Thank Variscite for the amazing job.

Regards,
Gabriel

在原帖中查看解决方案

0 项奖励
回复
6 回复数
4,281 次查看
gabrielaugustoc
Contributor II

Hi everyone,

So, the simplest solution to use OpenCL on Debian for i.MX8QM, take the blue pill, and use the Debian10 RootFS from Variscite:
ftp://ftp.variscite.com/VAR-SOM-MX8/Software/debian/

Mount this image as a loop in the memory system, then compress with tar, and install where you want.
Thank Variscite for the amazing job.

Regards,
Gabriel

0 项奖励
回复
4,301 次查看
gabrielaugustoc
Contributor II

Hi,

First, thanks for helping me.
Ok, I have download L4.14.98_2.0.0_ga_images_MX8QMMEK.zip and unzip it on an NFS directory. I have unzipped fsl-image-validation-imx-imx8qmmek.tar.bz2 on an NFS folder. I booted the kernel 4.14.170 via TFTP and pointed NFS folder with the fs-image-...l RootFS. Then, I could run all examples on the /opt/imx-gpu-sdk/OpenCL/ folder without any problem.
I have downloaded the L4.14.98_2.0.0_ga_images_MX8QMMEK.zip from:
https://www.nxp.com/design/software/embedded-software/i-mx-software/embedded-linux-for-i-mx-applicat...

So, I can use OpenCL with kernel 4.14.170, and NXP RootFS without any problem.
I did the same test using a RootFS system from Variscite, that is Debian 10, and the OpenCL is working too.

Now, I have copied the /opt/imx-gpu-sdk and all libraries dependencies to execute the OpenCL/Info example of the NXP on the Debian10, and I getting the following error:
root@apalis-iMX8:/opt/imx-gpu-sdk/OpenCL/Info# ./Info
ERROR: clGetPlatformIDs(0, nullptr, &count) failed with error code Unknown (-1001) at source/FslUtil/OpenCL1_1/OpenCLHelper.cpp(121)

and the result to check the Info library dependency is:
root@apalis-iMX8:/opt/imx-gpu-sdk/OpenCL/Info# ldd Info
linux-vdso.so.1 (0x0000ffffb051b000)
libIL.so => /usr/lib/libIL.so (0x0000ffffb03b7000)
libOpenCL.so => /usr/lib/libOpenCL.so (0x0000ffffb03a1000)
libstdc++.so.6 => /usr/lib/aarch64-linux-gnu/libstdc++.so.6 (0x0000ffffb0216000)
libm.so.6 => /lib/aarch64-linux-gnu/libm.so.6 (0x0000ffffb0159000)
libgcc_s.so.1 => /lib/aarch64-linux-gnu/libgcc_s.so.1 (0x0000ffffb0135000)
libpthread.so.0 => /lib/aarch64-linux-gnu/libpthread.so.0 (0x0000ffffb0106000)
libc.so.6 => /lib/aarch64-linux-gnu/libc.so.6 (0x0000ffffaff94000)
libpng16.so.16 => /usr/lib/libpng16.so.16 (0x0000ffffaff59000)
libjpeg.so.62 => /usr/lib/libjpeg.so.62 (0x0000ffffaff0f000)
libtiff.so.5 => /usr/lib/libtiff.so.5 (0x0000ffffafe93000)
libdl.so.2 => /lib/aarch64-linux-gnu/libdl.so.2 (0x0000ffffafe7f000)
librt.so.1 => /lib/aarch64-linux-gnu/librt.so.1 (0x0000ffffafe67000)
/lib/ld-linux-aarch64.so.1 (0x0000ffffb04ed000)
libz.so.1 => /lib/aarch64-linux-gnu/libz.so.1 (0x0000ffffafe3a000)
liblzma.so.5 => /lib/aarch64-linux-gnu/liblzma.so.5 (0x0000ffffafe05000)

Probably, I am missing some configuration.
Now, I am reading the i.MX Linux Reference Manual.pdf to try to find something to fix this issue.

Is the Vivante package for i.MX8QM created by Yocto?
Maybe, I can take a look on the recipes or repository to see what I am missing!
Do you know what is the repository for the Vivante packages for i.MX8QM? 

0 项奖励
回复
4,292 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello,

 

You must configure your kernel and pass as module the GPU.

 

0 项奖励
回复
4,341 次查看
gabrielaugustoc
Contributor II

Hi,

Thanks for your answer.
But, this will be a problem for me because I have added some image sensors drivers in the 4.14.170 Kernel. This is a branch from Toradex.
Is there another way to get the source code for these libraries and compile it for my Kernel?

Regards,
Gabriel

0 项奖励
回复
4,320 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello Gabriel,

 

Unfortunately no from NXP, but you can consult with Toradex if they have it.

 

Regards

 

0 项奖励
回复
4,346 次查看
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello gabriel,

 

The reason is because you are no using an nxp correct kernel version you must use 4.9.88 or 5.4.24BSP to have all the GPU libraries on it.

 

Regards

 

0 项奖励
回复