UPS understanding and infos

Hi there, I was looking forward to make a Windows VM for gaming inside a Linux Host. I’ve had not much success with my setup as I almost always had an AMD card with reset bug and other weird behavior in Windows VM. I ended with a 2080Ti for guest and a Radeon VII for host.

I made my VM on Manjaro for host and everything is working fine now.

I only have questions about UPS and how does it work exactly. I tried to search on the subject but I dont know if I understood well.

For exemple with this setup I can not get more than 40-45 UPS in any game when the game is running 120FPS+

I know UPS is only updated when something is happening on the screen but is it normal to only reach 40-45 UPS on this setup ? (FPS on LG is rock solid 144).

Of course the egl slow warning is showing up and LG is far from being smooth (stuttering etc)

My VM is plugged to my monitor on HDMI with a 1440p resolution 144Hz (instead of using a dummy adapter) and my monitor is switched to DP as it’s also connected on my host GPU. But Windows still thinks the HDMI monitor is plugged in.

I’m using Manjaro and last LG Host and client (Bleeding edge host) and last available client from AUR.

I’m using a X570 Gaming plus from MSI and a Ryzen 9 3900X and so my host card (Radeon VII) is plugged to run on x16 and my guest card on x4 (almost no visible performance hit over x16 and my VM runs almost as fast as my native Windows setup)

Here is my GPU-Z on my Windows VM (1.1 is only when no load is detected)

Is this the x4 that can bottleneck UPS ?
Anything could be done to improve UPS ?
What can influence UPS ?
The egl warning is about the host GPU not able to display frames as fast as guest is sending them ?

My goal here was to permanently move from Windows for gaming and having my VM in a easy to switch thing in my Linux host, what LG is doing really great, but it can’t be used to play high FPS titles and playing competitive FPS at 40-45FPS is not possible. (For now I use a DP switch to switch between my host and guest GPU output but the way LG is working is really nice and way better for multi tasking / switching)

Thanks in advance for your lights I hop I was clear enough in what I said.

Do you mean FPS?
Nevermind. I googled it. It’s not the same. My bad.

Hi, no I mean UPS

Here is an exmple :

Game running at 130 FPS +
LG Client running at 144 FPS
But UPS stuck under 40

I see.
I’m not well versed in hardware pass through, VM gaming and the tuning of it. But there are others here that are.
I think @SgtAwesomesauce dabbles in it. He might know something :slight_smile:

1 Like

My understanding is that looking glass only sends an update if it needs to. It’s possible your peripherals aren’t taking in more than 40 updates per second.

Not super sure on that though.

That’s one of the thing I was thinking about but it should look the same on the physical display then?

(On phyical display everything looks normal no stuterring or else)… IDK… (inputs only goes through LG client and are not passed through VM. I may try then)

EDIT : Did you mean input devices or other devices?
I was thinking of input devices.

But when dragging a window on desktop UPS can get to 120 for exemple

Input devices, yes.


Stuttering could be a lot of things. I’m heading into the gym. I’ll catch up with this when im through.


It’s worth noting that last I checked, looking glass has limited bandwidth and so trying to hit 1440@120 is probably using all of its bandwidth.

What’s your memory frequency?

Dragging a window on desktop can get to 120 UPS so I’m not sure it’s input related

Hmmmm. I don’t want to lead you in the wrong direction, so I’ll ping gnif to see what he thinks.

I’m using 3600Mhz memory

Dual channel, right?

Yes 2x16GB

Alright, I’ll do the math when I get back to my desktop.

1 Like

I’m going to sleep for now it’s almost 1am here but will be back on my desktop in the evening if you want any information.

1 Like

To confirm, yes, UPS is how many updates per second are being processed from the host application. The primary cause of low UPS is one of four things:

  1. Too high detail level. If you do not leave enough GPU resources available for capture the UPS will suffer. Try downgrading your game’s graphic settings to the minimum to determine if this is the cause.
  2. Too high resolution for the available bandwidth in your system. LG performs several full frame transfers from GPU to System RAM, and then another System RAM to System RAM transfer before a final System RAM to GPU upload. The amount of bandwidth required for this increases exponentially as you increase your resolution.
  3. Using an IGP. IGPs share the System RAM for GPU ram, as such instead of being able to transfer RAM in parallel between GPU and Systerm RAM, it becomes another System RAM to System RAM transfer which is FAR slower then a native GPU ram transfer. The solution to this is to use a dedicated GPU like a GeForce 7 series.
  4. PCIe lanes. Many systems do not have enough lanes and as such either use PCIe multiplexers to increase lanes at the expense of bandwidth… or only wire up 4-8 lanes to what looks like a x16 slot. At higher resolutions this is known to hamper performance considerably.
5 Likes

Thanks for those information.

Still LG is a really nice piece of software, and I’ll look closely it evolution.

So in my case I assume game load on GPU and x4 link may be the problem ?

(iGP is of course out of the list here)

It rather is prefered to have x8 for host and x8 for guest then ? Instead of x16 for host and x4 for guest ?

I should have been more carefull when choosed my motherboard, it was a bit like a impulsive buy…

Do you think 1440p is a bad choice for LG and should go for 1080p ?

EDIT : I have 3200Mhz memory, not 3600.

EDIT 2 : I have no swap partition in my Linux setup is it important for LG ?

Could be. He listed a number of things above.

x8/x8 would be preferable.

It’s not about size, it’s about speed. Swap just adds size. Swap can never be anywhere near as fast as ram (which is why we have RAM in the first place)

Passthrough motherboards do take some choice, but what board do you have? We might be able to make some improvements.

It’s the MSI MPG x570 Gaming plus.
I didn’t care enough when buying it but I must admit that I should have purchased something else.

No option for pci only put everything on x4 or default is x16 and x4 for the second pcie x16 port

You can also add the ASUS TUF Gaming X570-Plus to the list of motherboards not to purchase for Looking-Glass/Passthrough (unless a PCIe 4.0 GPU comes out). The second slot is 1 x PCIe 4.0 x16 (max at x4 mode).

However, I would like to highlight that on the latest BIOS you can pass a USB Controller (Two ports for the RiftS/Schiit DAC), SATA Controller without the system crashing or freezing when spinning up the VM or shutting it down.

Edit #2 - Also, I am able to set the 1080 Ti in slot one (PCIe 3.0 x16) for the guest, and the second slot for the 1060 (PCIe 3.0 x4) for the host.

Note:

Ryzen CPUs feature 20 PCIe 3.0 lanes, with 16 lanes dedicated to two 16x/8x PCIe slots for graphics cards, and four lanes to split between SATA and NVMe data transfer interfaces.

If you want more lanes you need to go to the Threadripper platform.