Looking Glass - Triage

Duh, I figured it was something like that. I assumed that the driver package only contained the one driver and thought I got it when I installed the balloon driver, but I completely glossed over the PCI standard RAM controller part in the quickstart guide. It’s working perfectly now, thanks a lot!

So, i have looking glass set up, but im getting EXTREMELY low performance (60fps in windows with the -k option to see perf, but only 1-3 UPS). When i launch looking glass my FPS in the guest VM drops as well, though not to the extent that the apparent FPS in the looking glass window shows. Window size matched the guest, i launched LG with -a and -d

where can i begin to troubleshoot this?

host gpu is an rx550 with amdpro drivers, guest is a nvidia titan X maxwell. cpu is a ryzen 5 1600

We can’t diagnose anything if you do not provide logs or technical details. UPS is expected to be low if there is not much going on, windows provides frames only if there has been an update that is not just cursor movement.

Replying to the DXGI 1.5 update…

Count me out on testing. My machine doesn’t have enough cores to do a Windows 10 VM and a pfsense VM at the same time and not take a performance hit. If I ever get Threadripper, I’ll reconsider loading Windows 10 1809 in a VM with networking behind a pfsense VM. Sorry, ShutUp10 and Spybot Anti-Beacon aren’t enough.

If you could find performance enhancements for older versions of DXGI as well, that would be useful for us still rocking Windows 8.1 VMs. Otherwise I’m likely going to have to shift to a capture card based solution for streaming downscaled 4K.

God willing, if it takes Valve to expose NvFBC and for there to be a “Steam Local Link” shared memory tech based on Looking Glass, I’m fine with that. Even if they bury it in a “Virtualization” tab in Steam in-home streaming advanced settings with a checkbox that says “Detect IVSHMEM presence for use of shared memory in virtualization environments”

How many cores do you think you need? I am only giving 4 full cores (8 threads) to Windows 10 and it’s more then acceptable for everything I can throw at it.

Run Windows 10 N, it has most of that junk disabled by default as it’s intended for schools where protection of children is a major concern.

There is nothing more that can be done with the older versions. That said give it a go anyway, you never know, it might still work but just be “unsupported” by microsoft. I don’t have a Windows 8 environment to test in.

I need minimum of 3 cores hyperthreaded for both my host and guest, and I only have a 6 core processor. I tried 4 cores to the guest and 2 to the host on my 6 core system and the DPC latency didn’t work out.I also think the risk is too great to get a E5-1680 V2 at this stage, as Threadripper would serve me better for allocating enough cores for both Windows and a pfsense VM at the same time.

Unfortunately, not in a position to get volume licenses for Windows for use, and frankly, for demonstration purposes, having the watermark makes you a laughing stock.

I feel like NvFBC is the solution to performance bottlenecks, but I know that will have to be in a official downstream fork like from Codeweavers or Valve. (if they think Looking Glass is a good idea)

1080p for Looking Glass though works fine right now. It’s only 4K resolutions that suffer. I’ll be shifting to 4K for my native resolution soon because I’m likely getting a 4K monitor in the next 2 months.

Windows 10 licensing is very odd, I have found that if you skip the key the Windows 10 N install doesn’t care, it still activates and works fine.

I can confirm without a doubt that it is not.

I’ve seen volume license keys actually warn you about expiry, so that’s why I’m a little hesitant to push fully ahead, along with the fact I need to sandbox the networking with a pfsense VM to be absolutely sure.

I remember Mirai from Multiboxology talking about how anything using a DirectX or DXGI hook was simply not going to cut it for same machine 4K, and what made his situation worse was he swore by SLI, which is a nightmare to get DirectX/DXGI to capture. (In fact, it might be impossible)

I am not sure where any of that is coming from, besides it likely doesn’t apply anyway as we are not using a DX or DXGI hook, we are using the actual capture API.

Technical details of this change are discussed in my latest video:

1 Like

Multiboxology stated each capture API he’s tried for same machine capture just cannot capture 4K properly, especially since he’s explicitly using an SLI setup and not willing to go single card.

I can confirm that DXGI capture works fine with SLI, tested it today on a GTX 960.

I have been doing some invasive performance diagnostics and I have found that in titles like Fallout76, running in full screen mode drastically hinders performance.

If you’re having issues with capture rates, please try running in full screen borderless mode if you have the option to do so.

Edit: Confirmed the same issue with 'theHunter: Call of the wild", windowed performs far better.
Edit: Confirmed for BF4 also

Hmm, might be because none of his capture programs use DXGI, but rather a DirectX hook based capture API, and it only hooks to the framebuffer output of one card.

Hi there. I’m not sure if I’m posting in the right place or not - I’m trying to get Looking Glass working. My Win10 Guest in KVM is working great on Ubuntu 18.04 with passthrough 1080Ti video/hdmi audio. I’ve followed the directions for installing LG and it seems to be working. I get the WIn10 desktop popping up in Linux, but it flashes steadily between the screen and black. If I move the guest mouse, the flickering is much faster. When I stop, it cycles screen/black/screen/black about twice per second.

Any thoughts on what I might try?

Thank you!

This is the right place. What version of Looking Glass are you using? A11 or master?

Please provide the client log output also.

First thing you could try is to disable compositing in your desktop environment. I know this flickering you’re talking about. It’s to do with compositing interrupting how something is rendered.

1 Like

Thank you for your responses. I have researched how to disable compositing and tried a number of things but I haven’t figured out how to do it. I am running the default Ubuntu DE which I believe is Gnome 3? I’ve tried some of the things I found like ‘metacity --replace’ which left me with a blank desktop, compiz --replace and some other things all which seemed to prevent me from my DE altogether. Appearing to be a function of the DE, I tried other DE’s like xfce4, the rest of which didn’t seem to work at all - the client comes up and obviously sees the host, but the display is simply black. I’ll keep working on figuring out what’s going on here and if there’s a way to disable it.

As for the client log, can you tell me where I’d look for this? There doesn’t seem to be a log created in the client directory, and /var/log doesn’t appear to have anything specific to Looking Glass, and syslog doesn’t seem helpful when I look through it either?

Sorry if these are elementary questions; I’m not exactly a n00b, but I’m no Ubuntu expert either…

Thanks!

When you run the looking glass client, it outputs a ton of debug information to the console, this is the log, please provide it.

hmmm… I can’t compile the it from master anymore, seeing this error -> https://github.com/gnif/LookingGlass/issues/105

Added some more info on issue tracker. Anyone else able to run from master with egl?

Edit: I know gnif will ask for it…

[I]               main.c:752  | run                            | Looking Glass (a11-113-ga1b1ed0060-dirty)
[I]               main.c:753  | run                            | Locking Method: Atomic
[I]               main.c:793  | run                            | Trying forced renderer
[I]               main.c:746  | try_renderer                   | Using Renderer: EGL
[I]               main.c:948  | run                            | Waiting for host to signal it's ready...
[I]                egl.c:387  | egl_render_startup             | Vendor  : NVIDIA Corporation
[I]                egl.c:388  | egl_render_startup             | Renderer: GeForce GTX 1080/PCIe/SSE2
[I]                egl.c:389  | egl_render_startup             | Version : OpenGL ES 3.2 NVIDIA 396.54.09
[I]               main.c:957  | run                            | Host ready, starting session
[1]    1808 segmentation fault  looking-glass-client -L 32 -k -K 144 -Q -j -s -d -S -F -M -g egl