Summary
Is OpenCL support for the Mali-T628 (for example as found in the Exynos 5420 SoC on the Arndale Octa board) available? If so, how to set it up?
More details
According to the vendor, OpenCL should be supported, but the Arndale Octa Wiki does not state how this can be achieved.
I am using the latest Linaro developer build and installed Mali drivers that contain OpenCL libraries for Mali T604. According to this guide, the driver actually contains references to the Mali T628. So I tried to create the udev rule as specified, which is supposed to solve a permission problem with /dev/mali0, but I found that there is no /dev/mali0 on my installation at all. So my conclusion is that the driver indeed does not support T628.
When I execute a clinfo utility, clGetDeviceInfo returns CL_OUT_OF_HOST_MEMORY for some device properties. Why can I query the GPU for some characteristics, but does this fail for some others? When running a normal application, the same error appears when trying to create an OpenCL Context.
I was surprised to find this topic, where yoshi seems to have OpenCL working and can run benchmarks on his Arndale Octa board. How is this possible if there is no driver available? Or am I just missing something? I hope that you can help me to also establish a working OpenCL development environment.
The person who does the work to enable Mali kernel drivers with Linaro kernels will just be getting an Arndale Octa board this week. We will have a kernel git tree, hwpack and user space file systems path for install soon.
Git if you want to build your own kernel.
hwpack + user space file system if you just want to install and go.
I'll post links as they become ready.
Why doesn't Linaro have Mali support by default in it's kernels? Well first and foremost is that the Mali kernel driver isn't upstream so when you have a "new" board like Octa we have to add the Mali drivers into the bring up kernel tree, test and so on. The support for the Arndale Octa board isn't even all upstream yet.
That is great news! In that case I think I will just wait for that person to release a hwpack + file system so that I can just flash that one on an sd-card and start using OpenCL!
Hello,
can you give a rough timeline for when octabard Opencl support would be available in a linaro hwpack/filesystem (not necessarily in the main builds) ?
I'm interested in the functional capability - not so much about absolute performance as being able to put a board in front of some people so they can develop with Opencl.
As alternative to octaboard in the shorter term, does anyone know if there is a prebuilt download of the Chromebook/mali image that is described in many steps on the developer site: https://developer.arm.com/graphics/development-platforms/samsung-chromebook
thanks, Raoul
Hi Raoul,
So the Linaro Mali support is available if you look up this thread, but it looks like OpenCL could be broken at the moment. I'd recommend grabbing whatever is available from Linaro or from the post above, test it, and if it doesn't work for you report that to Linaro so it can be fixed. This is downstream of us so I can't give dates or anything, you'd need to talk to them.
As alternative to octaboard in the shorter term, does anyone know if there is a prebuilt download of the Chromebook/mali image that is described in many steps on the mali site at: https://developer.arm.com/graphics/development-platforms/samsung-chromebook
ARM provide the userspace binaries necessary for GLES/CL support on the Chromebook, but we do not have legal approval to release a public BSP image at this time, which is why we wrote the guide for the Chromebook. I don't think the click-through licence on malideveloper.arm.com for the userspace binaries allows redistribution, but as far as I know there is nothing stopping someone from following that guide, and creating an image from that and distributing it, with instructions to just grab the mali blob from the site. So far to my knowledge no-one has done this, but assuming there's nothing in any applicable licences precluding it, feel free to do so!
Hope this helps,
Chris