Page 1 of 1

FPS Multi GPU solutions Output Differences

Posted: Sun Apr 10, 2016 14:10
by Digi
Today I wanted to test some displays on a multi GPU rig to understand what really is happening.
I'm sure programmers can help explain why this is happening but these are my findings.
2x EVGA 760gtx superclock cards (not in sli)


[I'll be testing the same graphics for every configuration.]

Opening a fresh Resolume comp the rig is rendering 74fps on my test clips without touching anything using Resolumes fps counter in the output monitor. Verified with fraps.
The second I open the advanced output fps droped to 43fps. I've tried a couple compositions dvx /dvx3 and it flat out destroys the fps by 40% every time. Closing it does not get you back your fps. Seem's it acts as a virtual device and until you output anything the smaller output monitor is kinda a fps lie. The funniest part is even though you close the Advanced Output monitor it's still engaged meaning fps doesn't go back to normal while selecting a output under the output drop down and then changing it back to disabled will return your fps.

Note: When the displays are active it does not effect Resolumes fps at all. Only when a output is added and visuals start to go out to a device is the fps effected.

Configuration 1:
[1 monitor]
GPU card 1: 1x DVI out for Resolume with Advanced Output window on top. (No output is set for anything.)
GPU card 2: Not Used.
43 fps

Configuration 2:
[3 monitor 1080P extended desktop]
GPU card 1: 1x DVI out for Resolume with Advanced Output window on top.
GPU card 2: 2x DVI out each going to 1080p monitors with Advanced Output sending out identical comp sized video out.
33 fps

Configuration 3:
[3 monitor 1080P, Main montor and screen 2 & 3 cloned]
GPU card 1: 1x DVI out for Resolume with Advanced Output window on top.
GPU card 2: 2x DVI out each going to 1080p monitors with Advanced Output sending out identical comp sized video out.
37 fps

Configuration 4:
[3 monitor 1080P, extended desktop]
GPU card 1: 2x DVI, One for resolume and Advanced Output. Other DVI out for extended desktop display. 1x HDMI for the other extended desktop display identical comp sized output as DVI output.
GPU card 2: Not Used.
41 fps

So my biggest finding is the Advanced Output kills seemingly good fps for some reason and your output monitor isn't accurate when it comes to the reality that you will be outputing Resolume to something.

The other finding is using a 2nd gpu seems to be worse in fps then just maxing all the outputs off the main rendering card. Assuming the other card is just duplicating while the main card is doing all the hard work I don't understand how using a 2nd card for its outputs actually hurts performance by about 3 fps per display.

Isn't this kinda bad if you wanted to use some black magic cards and build out a media server?

Re: FPS Multi GPU solutions Output Differences

Posted: Sun Apr 10, 2016 15:25
by Oaktown
What's your MB and what PCIe slots are your 2 GPUs on?
Configuration 4:
[3 monitor 1080P, extended desktop]
GPU card 1: 2x DVI, One for resolume and Advanced Output. Other DVI out for extended desktop display. 1x HDMI for the other extended desktop display identical comp sized output as DVI output.
GPU card 2: Not Used.
41 fps
Can you try the following setup:
GPU card 1: 2xDVI for both extended desktop displays and 1xHDMI for UI

Test 1: Run your 2 cards in SLI
Test 2: Take out your GPU card 2.
Opening a fresh Resolume comp the rig is rendering 74fps on my test clips without touching anything using Resolumes fps counter in the output monitor. Verified with fraps.
You might want to check your GPU settings such as vertical refresh because you shouldn't be getting fps above 60.
The other finding is using a 2nd gpu seems to be worse in fps then just maxing all the outputs off the main rendering card.
That's a know fact and there are many threads on the topic so that shouldn't come as a surprise.
Isn't this kinda bad if you wanted to use some black magic cards and build out a media server?
Blackmagic Design doesn't make GPU so are you talking about capture cards?

Re: FPS Multi GPU solutions Output Differences

Posted: Sun Apr 10, 2016 16:48
by Digi
Oaktown wrote:What's your MB and what PCIe slots are your 2 GPUs on?
EVGA p44 FTW 200.
Main card is in a x16 slot.
2nd card is in a x8 slot.
This should not effect this kind of software. Also just to disprove x8 limitations. I ran all 3 devices on the 8x bottom card and got identical fps as my tests running it on the top 16x card. I also ran my configs the other way treating the bottom card as the main card and still identical numbers.
Oaktown wrote: Can you try the following setup:
GPU card 1: 2xDVI for both extended desktop displays and 1xHDMI for UI

Test 1: Run your 2 cards in SLI
Test 2: Take out your GPU card 2.
Tried HDMI for the UI and 2x DVI's for the outputs in extended mode. There was no difference. Was there a theory behind doing this?
Re-guarding your suggestions for test 1 & 2.
Not sure if you've ever run Resolume in SLI but I thought it was common knowledge it hates it and it wasn't written for it so I'm not going down the route.
Also not sure what we are proving by removing the 2nd card. The idea is to make multi GPU's work not take them out.
Oaktown wrote: You might want to check your GPU settings such as vertical refresh because you shouldn't be getting fps above 60.
Vertical sync is off on purpose. In my experience vertical sync on yields worse results with Resolume by around 5 fps.
Oaktown wrote: That's a know fact and there are many threads on the topic so that shouldn't come as a surprise.
Actually I read a bunch of older threads. I saw people trying it but nobody reported solid results on any kind of performence disparities. If this is the kind result you get using pci-e devices then I have concerns with building a media server with things like pci-e data paths.
Oaktown wrote: Blackmagic Design doesn't make GPU so are you talking about capture cards?
Actually they have capture AND playback cards. But this is what I was thinking which is a datapath product, which was my mistake originally. http://www.datapath.co.uk/graphic-cards ... s/imagedp4

Re: FPS Multi GPU solutions Output Differences

Posted: Sun Apr 10, 2016 18:35
by Joris
using a 2nd gpu seems to be worse in fps then just maxing all the outputs off the main rendering card
This is because after the first GPU has rendered the output, it has to physically leave that GPU and travel to the second GPU via the motherboard so it can go out the outputs there. It's actually mentioned on our FAQ: http://resolume.com/support ( near the bottom ).
The second I open the advanced output fps droped to 43fps
Yeah, we're aware that having the advanced output open is not as efficient as it can be at the moment. So far we've been treating it as low priority, because it's not a showstopper. During show, you will have the window closed and will be outputting to actual monitors. It's on the list for 5.0.3 though.

Re: FPS Multi GPU solutions Output Differences

Posted: Sun Apr 10, 2016 19:42
by Digi
Joris wrote:
The second I open the advanced output fps droped to 43fps
Yeah, we're aware that having the advanced output open is not as efficient as it can be at the moment. So far we've been treating it as low priority, because it's not a showstopper. During show, you will have the window closed and will be outputting to actual monitors. It's on the list for 5.0.3 though.

The thing is you need the advanced output to configure your show, right?
What I'm seeing is once you open it, do your thing and save/close it stays at that low fps and never returns to the fps you had before you open it. ><

Re: FPS Multi GPU solutions Output Differences

Posted: Sun Apr 10, 2016 20:53
by Joris
In a show situation you'll be outputting to one or more actual outputs, which comes with an expected performance drop. What I assume you're seeing and asking about is the unnecessary performance drop when it's rendering to a screen which is strictly virtual.

Re: FPS Multi GPU solutions Output Differences

Posted: Mon Apr 11, 2016 03:07
by Digi
Joris wrote:In a show situation you'll be outputting to one or more actual outputs, which comes with an expected performance drop. What I assume you're seeing and asking about is the unnecessary performance drop when it's rendering to a screen which is strictly virtual.
I think in the end I'm just looking for real numbers when I'm testing what the limit is of my machine before a show.
Ofc I don't own all the display equipment and configurations that will be used in the future but I just want to ball park and not find my self in sub 30fps the day of the show!

I'm also researching this to plan for a dedicated Resolume media server in a pelican server rack. I really wish Resolume instructed other video cards to render like the main card even if its kind of a waste of wattage. Or take advantage of SLI bridges. It kinda is cheaper then buying data paths.