I am curious what the current state of graphics API support on the VisionFive 2 is.
I was under the impression that basic Vulkan support was available, but I am not able to get Vulkan apps to launch, and running vulkaninfo in the terminal gives an output of Segmentation fault. If I try to run Godot, it crashes when it gets to loading Vulkan. vkcube runs successfully, but it stutters, and that’s the only one that I’ve gotten to work. Are there any other tools I can use to test Vulkan?
I am also unable to get OpenGL applications to run. If I run glxgears then it gives me a message of “Error: couldn’t get an RGB, Double-buffered visual”. If I try to run Godot, it gives me a message that OpenGL is not supported.
These demos all work fine for me (I had to patch a few to get them to compile):
If it helps, I also hacked the reporting tool to compile (somehow the surface lookups failed, but the report is otherwise fairly complete) and reported the GPU info here:
That said, I get terrible performance issues - vkQueueSubmit and vkQueuePresentKHR each start taking around 1s after a few calls, and performance is terrible. I tried digging reducing to minimal calls and running through pvrdebug and couldn’t see why - also the demos above don’t have this problem, although my software runs fine on a wide range of other devices (including other IMG/PowerVR GPUs.)
For OpenGL, I did notice that the installed SDL2 was compiled without GL/GLX support. I suspect there’s just more parts of the system without GLX compiled in, causing OpenGL init failures. I haven’t been adventurous enough to go on a recompiling spree, since other PowerVR/IMG devices have given me better performance through Vulkan anyway and it’s more interesting.
Not sure if that helps but some of Sascha’s demos run pretty decently.
I’m a bit confused now. VisionFive 2 has IMG BXE-4-32 MC1, and the official SuperTuxKart demo is running. But you said IMG BXE does not support OpenGL by now. So how is it possible for the official demo to run?
The VF2 has a Imagination Technologies BXE-4-32 (MC1) for it’s GPU as part of the JH7110 SoC.
My ASSumption would be that everything that is possible with that hardware, which should eventually be open sourced by Imagination Technologies will become available. So:
OpenCL 3.0 OpenGL ES 3.2/2.0/1.1 + Extensions Vulkan 1.2
Debian Image 69 does not have any drivers or software support for OpenGL. All of the system libraries are compiled without OpenGL support. glxgears does not run. I don’t know how they managed to run SuperTuxKart.
Its interesting, vkcube is kinda jittery but Sascha’s demos compiled and ran for me just fine and smoothly in terms of consistent FPS and on screen appearance.
+1 for the vulkaninfo segfault.
I also tried connecting the PVRTune profiler from a windows host - its has riscv64 support etc, I did have to add RSA to the sshd HostKeyAlgorithms for it to connect. However I ran into issues with the device binary due to the glibc version on the debian image and missing libssp.so.0 from GCC (I think?)
My ASSumption would be that everything that is possible with that hardware, which should eventually be open sourced by Imagination Technologies will become available. So: OpenCL 3.0 OpenGL ES 3.2/2.0/1.1 + Extensions Vulkan 1.2
WRT this they’ve committed to open sourcing a mesa vulkan driver only, with GLES to be provided by the ANGLE translation layer.