Hi all
I am building ParaView/5.11.2-foss-2023a module on our HPC system for our users, using EasyBuild. For now, I have successfully compiled ParaView on our Intel Skylake nodes under Rocky Linux 8.9.
However, a simple ‘Sphere’ example fails to actually ‘Render()’ the sphere. Similarly, the OpenGL information query fails like this (where I have massively trimmed off repeated error messages):
>>> openGLInfo = GetOpenGLInformation()
( 702.880s) [paraview ] vtkEGLRenderWindow.cxx:666 WARN| vtkEGLRenderWindow (0x5ec9df0): Unable to eglMakeCurrent: 12290
Mesa: error: GL_INVALID_ENUM in glEnable(GL_POINT_SPRITE)
( 702.881s) [paraview ] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined.
Mesa: error: GL_INVALID_ENUM in glTexImage2DMultisample(internalformat=GL_NONE)
( 702.882s) [paraview ] vtkOpenGLState.cxx:1795 WARN| Hardware does not support the number of textures defined.
Mesa: error: GL_INVALID_VALUE in glTexImage2D(internalFormat=GL_NONE)
Mesa: error: 2 similar GL_INVALID_VALUE errors
Mesa: error: GL_INVALID_VALUE in glUniform1i(invalid sampler/tex unit index for uniform 0)
Mesa: error: GL_INVALID_FRAMEBUFFER_OPERATION in glDrawArrays
( 702.998s) [paraview ] vtkEGLRenderWindow.cxx:666 WARN| vtkEGLRenderWindow (0x5ec9df0): Unable to eglMakeCurrent: 12290
Mesa: error: GL_INVALID_FRAMEBUFFER_OPERATION in glBlitFramebuffer(incomplete draw/read buffers)
( 702.999s) [paraview ] vtkEGLRenderWindow.cxx:666 WARN| vtkEGLRenderWindow (0x5ec9df0): Unable to eglMakeCurrent: 12290
However, if I rebuild the same module with the same dependencies with OSMESA, then I can run the simple ‘Sphere’ example and take a screenshot of the off-screen rendering as a file. For this build, I have used the following compiler flags:
-DVTK_OPENGL_HAS_EGL=OFF \
-DVTK_USE_X=OFF \
-DVTK_USE_SDL2=OFF \
-DVTK_OPENGL_HAS_OSMESA=ON
Now, my question is how can I still use the nomal ParaView (i.e. without OSMESA) and yet do not get the error blow up when using pvpython --no-mpi
for the simple ‘Sphere’ example?
Thanks in advance
Ehsan (VSC/KU Leuven, Belgium)