I have a weird problem. I run an application with 3 monitors. The middle monitor runs on one rendering process which I start with:
start /MIN /NORMAL c:\Panda3D-1.10.4.1-x64\python\ppython.exe mainC.py
The left and right monitors run a separate process:
start /MIN /NORMAL c:\Panda3D-1.10.4.1-x64\python\ppython_left.exe mainLR.py
Left monitor uses the default DisplayRegion and the right monitor uses a different display region with a different camera.
The GPU is a Geforce GTX 2080 super and I have 32 Gb RAM.
In both processes the framerate is a stable 60 Hz. However, the images on the left monitor often stutter/jitter while the images on the left and right monitor are very fluently.
So, I tried pstats to see what causes this, but I could see nothing special during those jitter phases, that can last over a minute before the left channel becomes fluently also. In pstats most of the time was WAIT and number of geoms was well below 300 all the time. But the strange thing I noticed was that the jitter was completely gone if I run pstats during the rendering.
I have tried this several times but it is very consistent. While running pstats, images on all 3 channels (monitors) are fluent all the time while the left channel images are jittery regularly when pstats is off.
Could this be related to commands sent to the GPU by both processes which sometimes result in overload of the GPU, and that pstats accidentally results in better synchronization?
I know how strange this sounds, but it is consistent.