To give some context to my problem, I am using a custom Python plugin that, in short, reads from a file, then transforms the data to numpy, and subsequently converts it to vtk format (vtkPoints) for visualization.
My plugin works, but only for relatively small sizes (I have tested it and it works for up to ~161 million particles, although I must say that it is quite slow).
I was trying to visualize a PointCloud of ~322 million particles, but shortly after loading, I get the error shown in the image (Server Disconnected!), with no further information.
There are a lot of particles, and that is probably the reason considering that it works with smaller amounts, but I don’t know exactly what it is and how to fix it. I have included the Memory inspector for additional information.
I hope I was understood. For additional information that might be useful, I am using Paraview 5.11.0 in a linux client-server environment. I have no rights to install and configure ParaView on the server. If you need more information, please don’t hesitate to ask, such as the code, etc.
If the treatment on the server is too big, the server will be killed and the client will be notified by this pop up. To be sure this is the issue, do you have some log from the disconnected server itself?
Is it possible to share your paraview config (Help > About > “Copy to clipboard”) ?
These are the last lines of the log. The first line of these lines (numpy to vtk TIME[…]) is from a print of my RequestData code from my custom source module. These are the last lines of code of my RequestData:
# set points
numPts = vtkpoints.GetNumberOfPoints()
ptIds = vtk.vtkIdList()
ptIds.SetNumberOfIds(numPts)
for a in range(numPts):
ptIds.SetId(a, a)
output.SetPoints(vtkpoints)
output.Allocate(1)
output.InsertNextCell(vtk.VTK_POLY_VERTEX, ptIds)
print("numpy to vtk TIME:", time.time() - vtk_time, flush=True) # TIME
return 1
I have more information on the subject, but I’m still not entirely sure what the problem is exactly.
I’ve tried the StreamingParticles plugin and its RandomStreamingPoints source module. When I run it with lots of particles, I get the same error (Server Disconnected!), but this time it’s more explicit about it:
( 822.184s) [paraview ] vtkOutputWindow.cxx:78 ERR| ERROR: In vtkTextureObject.cxx, line 1028 vtkTextureObject (0x18cb18b0): Attempt to use a texture buffer exceeding your hardware's limits. This can happen when trying to color by cell data with a large dataset. Hardware limit is 134217728 values while 249999993 was requested.
I’ve looked into the problem and found a couple of threads about it: Paraview texture buffer size (or driver) issue and Texture buffer size error, both threads answered by @cory.quammen . I’m using ParaView 5.11.0 (which 5.12 seems recommended), and also my OpenGL Mesa versiones are 21.2.1 in my server side but 20.0.8 in my client side (which +21.1 seems recommended). However, even though this plugin needs to be loaded on both the server and client, mine in particular does not, so I don’t know if the Mesa version on my client side would have any influence.