Looking Glass - Triage

DXGI has capture performance limitations. And overhead to turn buffers into RGB32 might require more GPU power, like (regrettably) a RTX 2080 Ti.

If the DXGI capture is instead capturing directly the DirectX output and not a fullscreen, some performance can be gained back.

@gnif, this is where a graphical GUI for the Windows Host application would be handy to have an option to grab only the DirectX output of the game, and not the entire screen, kind of like Game Capture in OBS, for those of us doing streaming using Looking Glass.

Anyone know of any idiot proof setup guides for Looking Glass? I am honestly surprised I even made it this far with my GPU passthrough. The Looking Glass website guide only instructs building Looking Glass from source but is there not any precompiled builds I can download somewhere?

1 Like

It’s still a bit of a tech preview. the website should have general guides. If you have trouble with the guide, feel free to ask questions here and we can help.

https://looking-glass.hostfission.com/quickstart

Ok thank you. So first question I am at the point where I need to create a script with these lines in it:

touch /dev/shm/looking-glass chown user:kvm /dev/shm/looking-glass chmod 660 /dev/shm/looking-glass

But it says that I need to modify the script, what exactly do I need to modify? Is /dev/shm/looking-glass supposed to point to the build I created in the bin folder?

Mostly just permissions. You probably are fine with it as is though, if it runs into problems, you can fix them as they come.

No. It’s a shared memory file. This is the access point (on host side) of the shared memory that the VM and host can both see.

@ChuckMCCluck I moved your thread to the the Triage area. Please be sure to read the docs.

Also, read the original thread. There are curated list at the bottom for set up guides.

Thank you.

Okay ran the script as it was and I get this error:

chown: invalid user: ‘user:kvm’

Please read the set up guide that I linked to you previously.

lol, dumb shit here missed the bit in bold that “does not apply to me” thanks for pointing out the obvious!

I may be missing it but I’m not seeing anywhere in the post you linked about running the scripts and the error I am getting. But I assume that I need to modify the script and replace user:kvm with my username?

Both with your username if you want to have the shared memory file be owned by your user and group, with a modification to qemu.conf to make QEMU run with your user and your group.

That’s at least how I got around it.

Hi All. Experiencing low UPS numbers in games like Rocket League, Starcraft 2, and PlayerUnknown’s battlegrounds @ 1080P resolution 60hz. They all to run at 60 UPS or below. With 60 almost seeming like a software cap it does not want to pass.

Edit:

  • Counter-Strike Global Offensive also caps out @ 60 UPS
  • Bit Trip Runner 3 caps out @ 60 UPS (should be easy to run)

These games seem to cap out at around 60 UPS. They run fine on the connected monitor, and the games themselves are all running @ 100+ FPS. KVM Looking glass client reports ~200 fps output as well.

I tested out a very low intensity game called “Teeworlds” and got ~180 UPS and 200 FPS.

Am I having issues or is ~57-60 UPS expected performance on modern games for looking glass @ 1080p with my specs.

PC Specs:
MSI-Z270A Pro Motherboard
I7-7700K
Guest has 4 cores (1 socket, 4 cores, 1 thread each)
32GB (8x4) of DDR4-2400
Host: AMD RX580 8GB (AMDGPU) (PCI-E 3 @ 4x)
Guest: GTX 1070 (PCI-E 3 @ 16x)

Okay I got Looking Glass running, thank you. You wouldn’t happen to know how I could tell looking glass to start on my second monitor instead of my primary one would you?

Might be a client argument. Or if you have an advanced enough DE, it can tell that from a launch argument.

Ya I looked through the client arguments and didn’t find anything I was looking for. -x XPOS Initial window X position [current: center] may help I’ll put some values in there and see what happens I guess. The DE I’m using is Budgie pretty sure it isn’t that advanced.

Turn off VSync in the client. If you cant achieve any higher your GPU’s capture performance is likely the hindrance. What is your guest GPU?

Some DEs treat the window better/worse depending on if it is bordered/borderless, etc… have a play around, it is possible to force it to launch in a specific location, I use it to make it span three monitors under i3.

I am not running the client with vsync. This is how I’m launching:
looking-glass-client -s -k -F -o opengl:vsync=0

My guest GPU is an Nvidia GTX 1070 Founders Edition.

Based on my research I think I should be able to get slightly better numbers. What’s interesting to me is that the UPS # is so steady around 60, and never above 60 exactly. (Except when running the Teeworlds game) (All games have vsync disabled, however).

I am sorry but it’s been quite some time since I was running A11 now, there has been some changes in the latest master version that may resolve this issue for you, I do recall patching something that might have fixed this a few weeks back. You can try the latest version if you like, but for now there is limited/no support for it.

I’ll grab the latest windows host binary & client source and report back tomorrow. Thanks.