I am playing with in-situ visualisation and I have made some progress with EGL on GPU nodes, but would now like to enable it on every CPU-only nodes as well. I believe this should be possible with the use of OSMesa, but I am getting a little confused about dependencies. My main question is whether it’s possible to build a fully headless ParaView with OSMesa i.e. without any reference to X11 or other display server?
I have looked at @mwestphal tutorial, but I see that
meson has an option
-Dplatforms='x11'. I have also looked at this page in the documentation and I infer that I will need
VTK_OPENGL_HAS_OSMESA=ON. I am assuming this to be possible as there is a pre-compiled headless server with OSMesa on PV download page but please advise.
I’ve also got two questions or notes about that doc page:
ON, implies that ParaView can use OSMesa to support headless modes of operation.
Is that meant to be headless or just offscreen? Or is “Off-screen rendering in Mesa” actually headless according to the terminology?
All combinations of above options can be turned on or off independently except that presently
VTK_OPENGL_HAS_OSMESAare mutually exclusive i.e. only one of the two can be ON at the same time. This is because the current version of Mesa (17.1.5) doesn’t support EGL for OpenGL, it’s only supported for OpenGL-ES.
Is this still true? I was looking at Mesa 20+ and I think it now supports EGL.