VMware Horizon Community
_badger_
Contributor
Contributor

SVGA 3D gpu slow to kick in

Hi,

I'm running a test of Horizon View (5.2 build-987719) on a Dell R720 with an Nvidia GRID K2 card. The Nvidia driver is version 304.76.

I've set up a pool on this node to test out the hardware accelerated graphics, but am encountering an odd issue. I'm toying with the molecular modeling package Schrodinger Maestro, loading and rotating 3d protein models. In a fresh session, the fps is initially very poor, to the point that the software would not be usable by our users (< 10fps). On the esxi host, 'nvidia-smi' shows low to no GPU utilization, in the 0-5% range. Using the PCoIP log viewer, I see low-ish PCoIP server utilization (<20%) and relatively low Image Tx bandwidth utilization (~5000 Kb/sec).

At some point, and what triggers this I'm not entirely sure (it has happened a couple of times after I opened the task manager, though this seems an odd cause. It has happened on its own after 30 seconds or so), the GPU kicks in; 'nvidia-smi' shows 25-30% utilization, PCoIP server utilization jumps to ~90%, and Image Tx bandwidth bumps to ~20000Kb/sec. The protein rotation smooths out, and everything appears to work as it should from that point on.

The VMs run with 6 cpus and 32 GB ram. I've run through the PCoIP optimization guide (and disabled 'build to lossless' as well as tuned audio bandwidth), and also ran through the Windows 7 View optimization guide (and made use of the recommended optimization script). I'm seeing this issue with only one View desktop running on the host.

Any ideas?

Thanks,

Eric

Reply
0 Kudos
10 Replies
gunnarb
Expert
Expert

I have the exact same setup as you, any chance you could share your testing application so I can see if I get similar results?

Gunnar Berger http://www.gunnarberger.com http://www.endusercomputing.com
Reply
0 Kudos
admin
Immortal
Immortal

It sounds like the app is generating an extremely high FPS. Likely in the 1000's. There are some enhancements we are making for high FPS apps in our driver that should help in the future. If this is it...... try adding this registry key.

In the following location:

HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware SVGA DevTap

Create the DWORD value

MaxAppFrameRate

Set a dword value that matches your PCoIP FPS. If for example you have the default of 30 fps. Set it to that.

WP

Reply
0 Kudos
_badger_
Contributor
Contributor

I don't think Schrodinger offers a trial version. In trying to find something else to test with, I discovered a couple of applications that simply crash on this setup when trying to render certain things (PyMOL, Cambridge Structural Database Mercury crashing when trying to render wire/tube representations of molecules); possibly a separate issue, but maybe not. I traced the openGL calls hoping something would stand out, but I lack the expertise to spot an issue.

I'm going to give wponder's suggestions a go and see if it helps.

Reply
0 Kudos
_badger_
Contributor
Contributor

Doesn't look like setting MaxAppFrameRate solved the issue; symptoms as before. I'd like to try this with vdga as well, though I've not had luck getting that to work just yet.

Reply
0 Kudos
admin
Immortal
Immortal

Strange.. can you send a screenshot of the reg setting? I can take a look just to double check it.

Reply
0 Kudos
_badger_
Contributor
Contributor

Sure, screenshot attached:maxappframerate.png

Thanks, Eric

Reply
0 Kudos
Linjo
Leadership
Leadership

Try setting it to "0" instead, that disables any throttling,

// Linjo

Best regards, Linjo Please follow me on twitter: @viewgeek If you find this information useful, please award points for "correct" or "helpful".
Reply
0 Kudos
CyberTron123
Enthusiast
Enthusiast

I found that setting the pool to automatic makes everything behave like you describe, it takes around 30 seconds for gpu to kick in. However, when I changed the pool 3d setting to : Hardware   then it goes instantly!

/Michael

Reply
0 Kudos
_badger_
Contributor
Contributor

Thanks for the tip, though this pool was already configured to use only hardware rendering.

Reply
0 Kudos
_badger_
Contributor
Contributor

No luck with MaxAppFrameRate = 0. I'm starting to suspect the application may be doing something strange; it may also be that SVGA is simply not capable of handling workloads like this.

Reply
0 Kudos