Neos-Metaverse / NeosPublic

A public issue/wiki only repository for the NeosVR project
193 stars 9 forks source link

Consistent intermittent freezing with a portrait monitor connected #2813

Open MrMegaTronic opened 3 years ago

MrMegaTronic commented 3 years ago

Describe the bug?

For the last two weeks or so, while using Neos in either desktop or VR mode, I have experienced intermittent freezing that not only stutters visuals but also omits input (making double-clicks hard to time). This occurs in every world and local space regardless of whether content is loading in the background. I have included a captured video showing the behavior. The framerate counter drops when it happens and CPU activity briefly spikes then as well. In the logs, there is no indication of an event occurring repeatedly.

I recently did a fresh install of Windows 11 and after first installing Neos, it was working fine. Since Win11 is still being developed, issues may be introduced later, but the issue seemed to occur out of nowhere.

Relevant issues

Couldn't find relevant issues.

To Reproduce

Unsure of the cause but if it is related to WIndows 11, running Neos in a fresh install my recreate it.

Expected behavior

Smooth experience at idle.

Log Files

ERIK - 2021.8.14.443 - 2021-08-16 15_04_10.log

Screenshots

https://youtu.be/dQPE1sZm3T4

How often does it happen?

Always

Does the bug persist after restarting Neos?

Yes

Neos Version Number

2021.8.14.443

What Platforms does this occur on?

Windows

Link to Reproduction Item/World

No response

Did this work before?

Yes

If it worked before, on which build?

2021.7.22.458

Additional context

Recently upgraded to Windows 11 Insider Dev Channel Nvidia Studio Driver 471.68

Reporters

Mr.MegaTronic

Frooxius commented 3 years ago

Do you have any performance metrics? CPU usage, GPU usage, memory and such? Is there anything in the Debug dialog timings that spikes up during those freezes? What are your system specs?

It might be something related to Windows 11, we might need to wait until that comes out officially. If you can test on the same HW if it happens with Windows 10 as well that could help.

MrMegaTronic commented 3 years ago

There was about 10% CPU idle utilization that would jump to about 60% every moment of the FPS drop and stutter. No change in memory usage. I have a Ryzen 5 5600 with 32GB RAM. An NVIDIA RTX 2070 Super with 8GB of memory. The same computer ran Neos just fine with Windows 10 a day earlier and for a few days, just fine in windows 11. There was no activity in the debug dialog that seemed to correlate to the stutter. I included a view of each dialog page in the video I attached.

MrMegaTronic commented 3 years ago

After a lot of diagnosing, I discovered the inciting configuration change. One of my extended displays is rotated. When I disabled display rotation, the freezing stopped. I haven't made heavy use of the Desktop feature in Neos yet, but it seems that having one monitor rotated is the cause, even if I am not using the feature.

shiftyscales commented 3 years ago

After a lot of diagnosing, I discovered the inciting configuration change. One of my extended displays is rotated. When I disabled display rotation, the freezing stopped. I haven't made heavy use of the Desktop feature in Neos yet, but it seems that having one monitor rotated is the cause, even if I am not using the feature.

Can you try setting "disableDesktop" : true in the Config.json file found in Neos' installation folder, @MrMegaTronic? If the issue ceases, then try re-enabling the desktop view and see if it occurs again.

As was also mentioned, if you may be able to test on the same hardware with Windows 10, it would help inform us of where the problem lies.

mrdaemon commented 3 years ago

Hi, I am currently experiencing seemingly the same issue and would be glad to provide any information I can. I however cannot tell when this started as I spent some time away from neos between then and now, and my hardware configuration changed in the intervening period. I also cannot readily test the same configuration on Windows 10.

EDIT: I would add that I am also available in discord as mr_daemon#1429 on the neos server, if any questions arise.

Current Configuration

The Problem

Upon startup, neos exhibits a freeze/hitch roughly every three seconds, where the rendering just stops for what feels like an entire second, and then resumes. It is consistent and will persist across restarts of everything, and even in the local, empty home, while signed out.

this is visible on the frame timing window in SteamVR here

Capture d’écran 2021-10-24 105522

If I either edit Config.json and flip disableDesktop to true, or set the portrait monitors to landscape, the problem disappears and results in this graph:

Capture d’écran 2021-10-24 105959

Reversing either of these changes causes the problem to return.

Things I have tried:

Logs

With the problem present:

PIXEL - 2021.10.21.64 - 2021-10-24 11_26_14.log

With the problem absent (every monitor in landscape mode)

PIXEL - 2021.10.21.64 - 2021-10-24 11_27_44.log

mrdaemon commented 3 years ago

As an addition: I just tested and it is perfectly reproducible in Desktop mode (no vr).

towneh commented 3 years ago

I believe this is the same bug (or at least very related) here with my Windows 11 setup, where I'm seeing FPS drops/hitching every second.

https://cdn.discordapp.com/attachments/439421735474036738/915317936330248252/2021-11-30_19-03-32.mp4

1 x 2560x1440 @ 60hz (main monitor) 2 x 1920x1200 @ 60hz (side monitors - one in portrait mode, other in reversed portrait mode)

NeosVR build 2021.11.10.1253 Windows 11 Pro 21H2 22000.348

This does not happen on any other 3d application or game I have installed. I stopped all non-essential services in Windows. Have the latest display drivers installed.

image

towneh commented 3 years ago

I've managed to isolate this issue, it only happens when multiple monitors connected, as similar to the above. With a single monitor I no longer experience the hitching.

image

When my secondary monitors are re-connected, even when the game is running, the hitching problem ONLY returns after I restart NeosVR.

image

The XB271HU is my main display in windows settings. I tried disabling hardware acceleration on Firefox, which made no difference.

image

However, I have also spotted a slight discrepancy between the refresh rates in Windows vs Nvidia Control Panel, I'm going to try testing with another DP cable and see if I can correct this. image

towneh commented 2 years ago

Narrowed this down to ANY of my secondary monitors being flipped to portrait mode.

towneh commented 2 years ago

Video showing portrait specifically causing the hitching in Unity whilst in play mode (this is exactly the same behaviour observed by Neos) https://media.discordapp.net/attachments/439422161657135106/924031455049429032/2021-12-24_19-58-50.mp4

Video showing this same behaviour regardless of how many monitors I run, all good in landscape mode. https://media.discordapp.net/attachments/439422161657135106/924033009508818974/2021-12-24_20-15-26.mp4

One other with Windows 11 has confirmed this same behaviour with Neos, and the workaround.

Two or more on the Neos discord have confirmed that this is NOT happening with Windows 10.

What is the next step here? Would it be to raise a bug request with Unity? It seems like it's just Unity related performance (if Neos is using the unity renderer) as I've not seen this in any other games I play on steam, Warframe, WoW etc.