Are there any good compile options tha would help in making the gui more responsive when 1000 or more particles are kept?
Best Regards
Are there any good compile options tha would help in making the gui more responsive when 1000 or more particles are kept?
Best Regards
Not that I’m aware of, but I am interested in your use case.
I take it the geometry is not a problem. It’s just the number of trajectories? I will try it.
John
Looking forward to it. Even fairly large geometries are quite smooth. It’s the accumulated events that make it laggy.
Hi Jason
I’ve tried a few examples. Currently exampleB4a, with
/gun/particle gamma
/gun/energy 10 GeV
/run/beamOn 100
I get a view covered in trajectories and they rotate fine, no lag.
If I repeat but with
/gun/energy 100 GeV
it hangs, even after the run finishes, in
void G4VtkPolydataPipeline::Modified()
{
actor->Modified();
polydata->Modified();
mapper->Update(); <-----Hangs here
G4VVtkPipeline::Modified();
}
In other words, it works very well indeed, or, at some cliff edge, not at all. I do not experience any in-between “lagginess”.
Note that VTK displays only events kept by the vis manager, at most 100 (by default), even if you ask for more.
I will consult the VTK experts.
John
I used endofeventaction accumulate 1000 to view more events simultaneously however it does indeed look like you have many tracks. I do like the vtk interface, I am just wondering if it could be sped up since there are alot of compile options perhaps with cuda though I didnt manage to make that work.
Ok it should not hang as you report @Allison I think that legitimately looks like a bug.
@Jason_Jonson VTK almost in all circumstances needs OpenGL access to the graphics hardware. So there are no obvious compile options for VTK that would speed it up. CUDA is for using the GPU to accelerate other calculations. CUDA in general is not used to speed up visualisation. In general with discrete GPUs VTK has very high performance. So to understand your performance issue, could you please tell us
This is probably enough information to understand your performance issue.
Hi,
Native Debian12,
1060 (quite old),
9.3.1,
G4 11.3 debug build
Namely Hadr01. Though many other that work perfectly other than when over 1000 events are kept. Its not really the end of the world, I just wanted to overlay some process coordinates on to the vis output to see if they matched and I experienced this slow down, though everything is fine in paraview.
Ok I think I found the two issues that caused the slow down for large numbers of tracks.
The first problem there is a render trajectory points a little spheres, which was lazy of my early in the implementation of the VTK driver. Removing this speeds things up dramatically. A 2D circle needs to be rendered properly and not a complex sphere mesh.
Secondly. I “over” update the rendering pipelines. This is where @Allison noticed the hang. These update commands are not required and I was being overly cautious. They can be removed, but I need to do some more testing before submitting a change.
Needless to say these changes will have to wait until the next release.