Paraview binaries client-server poor performance with large number of processes

Hi guys,

I’m running the ParaView 5.13.1 binaries in a client-server set up, with a beefy server. I am also using the MPI that ships with the binaries.

I’ve noticed that when I ramp up the number of processes/cores, the Waiting for Server Connection dialogue takes significantly longer.
Also for example, if I had created a source and set the render type from outline to say surface. ParaView hangs for a significantly longer time when switching over to surface.

However viewing and rendering (+ rotating) the object afterwards has similar performance regardless of number of processes. This is using server sided rendering.

I’ve run client-server at 256 processes (2 nodes, 128 cores), 1280 processes (10 nodes, 128 cores) and they seemed to perform as expected.
But ramping things up to say 3840 processes (30 nodes, 128 cores), the two metrics I mentioned earlier take significantly longer.
And at 12,800 processes (100 nodes, 128 cores), ParaView hangs at the Waiting for Server Connection dialogue and freezes.

I’ve also tried 30 nodes with 16 cores (480 processes) and the performance of that was fine, which leads me to believe the issue is linked to the total number of processes.

At first I was thinking it must just be a limitation of MPI, but this shouldn’t be the case since people must run larger jobs with more compute / cores?

Any ideas on debugging this, or any potential issues that could be causing this?
Let me know if you need any further information.

Cheers,
Paulo

hi @98Alto !

Performance debugging with ParaView is very complex because there are many aspects to consider: I/O, computing, rendering, network, build options, third-party libraries like MPI or HDF, etc.
As a first start, I would recommend to read our scalability guide:
https://www.kitware.com/paraview-hpc-scalability-guide/

Hope this will help you to identify the main bottleneck.

Best,

François

2 Likes