Forum

Strange performance behaviour with two (different) graphic cards and HAP Playback

Hello again,
I described some other problems here yesterday, but here’s another one (with a more detailed description of the setup)

I am working on a project with 5 Iijama Multitouch screens (2x 32" HD, 2x 55" 4k, 1x 65"4k) and one 1920x1200px screen as control monitor. They are all connected to one Computer, which has to Graphic Cards build in (one NVIDIA RTX 3060 with 4 video outputs and one NVIDIA GT370 with 3 Video Outputs).

I am playing one big 8k Hap Video, which is cropped and fed into a subpatch. The 5 instances of the subpatch then use “SetWindowState” functionalities to move a Stride render window to the corresponding screen and set it to fullscreen.

Now I experienced some strange behaviours, I guess nobody can help me or reproduce them but I thought might be useful for future generations ;)

  • According to the debug function (F3), the used graphic card for each screen does not depend on which graphic card is connected to, but depends on the graphic card, to which the “primary monitor” of windows is connected (= the screen where V4 spawn screen is shown on startup). I also tried setting the “Open GL” Graphic Card on the NVIDIA Control panel general and also specifically for V4 from “choose automatically” to the RTX3060 (like recommended somewhere online), but this didn’t seem to affect which Graphic card was used.

Screenshot 2022-07-19 224036

  • But not enough! There are also some strange performance issues: When the Videos are only playing on the the 3 4k Screens, everything works fine and runs at 60fps. But when I play the videos on the 2 HD screens the framerate drops to a very jittery 17-22fps. But not always, sometimes when I arrange the windows by hand it does happen that all the 5 screens play smoothly with 60fps. But then, when I save and reopen the file it goes bad again. I tried several things
  • Connecting the screens to the different video outputs of the graphic cards in all imaginable combinations
  • programming a little logic for a start sequence, where at the first 5 seconds at every second a renderer window is moved to the corresponding screen
  • Have the renderers being set to fullscreen, or resized to 1920x1080 and hiding the title bar
  • Positioning the renderer, so that it is overlapping 1 pixel onto another screen (that is connected to the “good” graphic card

Normally I would simply capitulate and replace the GT370 with another RTX3060, but the thing that drives me crazy is, that I know, that sometimes everything plays smoothly with 60fps, just not when I reopen the file. So in theory, it is possible, but in reality not :( Any ideas? Nevertheless, felt good to get it of my chest :D

PS: When I tried to update the graphic card drivers to the newest version, the GT370 was not recognized anymore, so that might be a solution but is not a viable option :D

hey lorenz,

let’s first clarify your desired setup. do i understand correctly:

  • RTX3060 → 2x HD, 2x 4k
  • GT370 → 1x 4k, 1xHD (control monitor)

is the control monitor another fullscreen renderer? or only showing the patch editor?

Hey Joreg,
the current setup is:

  • RTX3060 → 3x4k, 1x1920x1200 (this is the “control monitor”, that only shows the patch editor).
  • GT370 → 2xHD

Like I wrote, I also tested several other combinations, but this one (where the control monitor is the primary one where also the patch editor is spawning is connected to the RTX3060) seems to be the smoothest.

Greetings, Lorenz

this makes sense because as you found out already: vvvv/stride is running from the primary card. and: only from that card! ie the second card is not adding any power, it only costs additional power to copy data, rendered by the main card over to the second card.

yes, because vvvv/stride is not using OpenGL, but DirectX11.

obviously this is really odd. what behavior do you get if you arrange all 5 windows only on desktops that are running on the main card, ie non-fullscreen. just to see if the main card would handle 5 windows properly.

as noted above, this may not even help, as still only the main card would do the rendering.

1 Like

Hi @joreg and thanks for the detailed answer!

I guessed already, that vvvv/stride would be running from only one card, that’s why I thought I would buy one good card and the second one only for the additional video outputs. I was only confused how it chooses on which card the calculations are done. Is it really based on the “primary monitor”, or is there another setting?

I am away from the setup until next Monday, but if I remember correctly, when I arrange the windows on screens running on the main card, it is running smoothly. I will test this again and will let you know about the results. Also, I will get my hands on a HDMI video splitter (not a Matrox Card or something, just a device to split one 4K signal into four HD signals). For my setup now, this might be a viable workaround.

1 Like

it is the primary monitor.

yes, that sounds like a good option.