Forum

Beta39 framerate drops on AWS EC2 instance

Hello devvvvs & all

Have been testing with Beta39 release on amazon ec2 instance (Windows Server 2016, Nvidia Tesla M60 GPU).
Getting this weird frame rate drop, as soon as I minimise or close remote desktop. The interesting thing is, running the same test patch in beta34.2 or beta38 it is all fine, just seeing the drop in beta39.
See attached images, I marked in yellow the frame rates captures in a queue while remote desktop was minimised.
Any idea what could cause this? Anything with DX9 significantly changed with beta39 release?

Muchos!
Simon

What happens if the renderer is fullscreen?
Have you tried dx11?

Test with DX9 renderer in fullscreen:
Beta39 - Renderer black (at least in remote desktop) and same framerate drop while RD minimised. When taking out of fullscreen, renderer stays black and framerate shoots up (as it’s not rendering anything anymore). Only creating a new renderer fixes it

Older Betas - Renderer black in fullscreen, but no framerate drop and keeps rendering when taken out of fullscreen

Also have to say, fullscreen not really an option in this case, as we need to run multiple instances of vvvv of the same project

Test with DX11
Beta39 - Getting same framerates no matter if remote desktop is open or not. Also can see rendering when in fullscreen through remote desktop.

Older Betas - also constant framerates with remote desktop opened or closed

Regarding DX11 in this case. At least in the short-term not an option either, as part of a bigger project that can’t quickly be switched over from DX9 to DX11. Even though it would be great to have it on DX11 anyhow.

So definitely seem that there is something in DX9 that changed with Beta39 release and that doesn’t like the AWS setup. The fact it “disconnects” after going into fullscreen and back out again is also weird. And this only happens in Beta39, not with older versions.
Any ideas?

Add a TTY renderer and check if it throws any errors.

Beta38.1
no message in TTY when minimising RD and coming back
only one message when coming out of fullscreen “cannot reset device, try different parameters”

Beta39
no message in TTY when minimising RD (and getting framerate drop).
When coming out of fullscreen, I get endless stream of errors. “couldn’t draw vertex buffer. \lib\thirdparty\x64\dxerr9.dll is not found. Description for 0x887608C is not available”

so nothing when doing the minimising. Any idea about this dxerr9.dll error?

Beta38_after_fullscreen

I’d inspect the GPU driver.

Nvidia drivers are up to date. v441.22
And still, the weird thing is that it’s totally fine with Beta38.1, but in Beta39 we get that drop. (and fullscreen error)
My guess, it has sth to do with how vvvv handles the fact that there is no physical screen attached. So wondering what could have changed between beta38.1 and beta39 in that regard? Or anything DX9 handling that changed?
Guess only the devvvvs could really know…

so that missing dxerr9 file…did you check? is it actually missing? if so, please try copying it over from 38.1 and see if that makes a difference.

i never used such a tesla card, but can imagine there’s some specialties about them, since they don’t have any outputs.

the file lib\thirdparty\x64\dxerr9.dll doesn’t exist in either version.

but it’s there in x86 folder, lib\thirdparty\x86\dxerr9.dll in Beta38.1 but NOT in Beta39 (the whole x86 missing there).

Will be doing more testing bit later today. Will also try new, clean re-install of Beta39. Perhaps sth went wrong there…

@Sebl, yeah, definitely bit a special setup. But all working fine with any Beta other than the new 39. So just digging around what could have changed and caused that framerate drop.

i just checked and found the \x64\dxerr9.dll was indeed never shipped.
but you’d say all the above tests with b38.1 where also done with x64?
if so, can you give b39 x86 a testrun and see if it shows the same issue?

I can confirm, only x64 versions involved in testing so far.
Just tried with Beta39_x86. Getting same framerate drop when closing RD. When going into fullscreen and back out I get a different error now (keeps throwing that error and renderer doesn’t recover, renderer needs deleting and recreating to work again). error “couldn’t draw vertexbuffer. D3DERR_INVALIDCALL”

Beta39_x86_after_fullscreen
I have to say though, this whole fullscreen thing is not really a problem, as we won’t (and can’t) run our application in fullscreen. It just seems the only action we have found so far that throws some error and different error in Beta38 and Beta39…so might be a clue to a underlying problem that also causes the framerate drop…or not at all…

Also, the only thing we change on DX9 renderer after creating it, is setting presentation interval to immediately…in case that could have an impact (same on Beta38.1 though, where it’s all fine)

Why and have you tried with different settings?
Is the MainLoop set to raw or filtered?

set to immediately for the test as this is how it is used in our app. mainloop was set to filtered.

But just tried with any combinations (presentation interval = default/immediately, main loop = raw/filtered etc). I get significant drop of framerate in all cases with Beta39 when I minimise (or close) remote desktop…not at all in Beta38.1.

what I also found…let’s say test case, I push it to draw 5000 quads with a lava texture 512x512. When the renderer is open and sized to 400x300 (backbuffer set to 0,0), then it runs at 19fps. I minimise RD and open back up, so I can see while RD was minimised it ran at 2fps. When I double click the renderer to maximise on desktop, then framerate also drops to 2fps.
Now I set the backbuffer to 400,300. It runs at 19fps when renderer window is at 400/300 size and 16fps when renderer maximised. When I minimise RD in both cases though, framerate still drops to 2fps.
So it seem for some reason it’s always switching to render at full desktop resolution or something when remote desktop not connected, no matter what back buffer has been set on the renderer.

And again…doing any of those test in Beta38.1, I don’t get any framerate drop when closing RD. If the renderer is maximised, then I even get a slight increase of framerate when minimising the RD.

I have the feeling the problem (and change between 38.1 and 39) must be somewhere around there. Handling of backbuffer size when no screen present? Or when screens switch? Or whatever gets triggered when remote desktop closes or gets minimised.

ja, so i guess the dx9err.dll issue was a wrong lead and can be ignored.

  • when you’re using b39, did you install it via the installer or not?
  • can you re-run the config.exe and see if it makes a difference if you have “disable fullscreen optimization” on or off
    grafik

installer wouldn’t work on AWS as it somehow blocks the downloads via installer. Guess some security settings that could be fixed.
Beta39_Installer Connetion Fail

Beta39 was installed via a git repo. This is what we do for many installations, just put the whole vvvv release in a repo and pull on client machines. then run setup.exe and install dependencies if needed.
Is that something that will cause problems with Beta39?
I just installed Beta39 on that AWS instance using the offline installer. Getting same framerate drop.
Is there any difference between standard installer and offline installer?

Tried disabling fullscreen optimization, still same framerate drop.

no, both run config.exe /silent which is the same as opening config.exe and register the defaults.

@hengge we found something. please try with latest beta preview