Lag, freezes, crashes and disconnects

Sorry to open this can of worms again Riley, but this is reaching stupid levels of weirdness for me.

Anyway, just to test the hypothesis of being CPU capped, i overclocked from 3.3 to 4. I could go higher, but i normally don’t use overclocking and i don’t want to test fate too much. CPU-Z tells me that when im running my old I-5 2500K quad core at this speed, i run at almost the equivalent efficiency of an I-5 7600K 3.8 processor.

At the same time you released a new patch as well (well, yesterday, but i didn’t have a chance to test it until today).

Now, my resource monitor tells me im generally pretty far from being CPU capped. Regardless though, i’ve been getting massive freezeups both on default connection as well as on websocket. While on default connection i can also see Oculus reports my HMD has poor tracking, while on websocket it does not. Doesn’t make a lot of sense to me, but now the information is typed down regardless.

The freezeups seem to almost with 100% precision to occur when (i expect) there is specific client-server communication. This meaning especially on mob death (loot rolling i am guessing), and other general more-than-usual client-server network activity. It feels almost as if the client freezes are happening due to waiting for server information, but ofcourse that is only my guess.

The new thing however, is that during my play - which turned into testing rather than play sadly, the client actually crashed twice rather than freezing up completely and having to exit it. This in turn produced 2 crash reports.

The first report contains an access violation from the vrclient.exe. The second one contains an access violation from d3d11.dll. Immediately upon seeing that i thought graphics drivers, but i recently updated those (always clean installs) and are running nvidias geforce drivers at version 397.31 (just checked that most recent one is 397.93).

Just to be on the safe side i did a dxdiag (64bit) as well, which doesn’t show any issues apart from the oculus119B.sys rift headset audio driver not being digitally signed which isn’t something i can do anything about.

I have uploaded both crash reports as well as the dxdiag.txt for you here:
http://s000.tinyupload.com/index.php?file_id=93937284484285920351

I wish there was more i could do/test on my end. But for now it seems that all i can do is try to update to the latest nvidia drivers jumping a few weeks “forward in time”. I doubt this will make any difference, but that is all i can do it seems.

So, i updated to the latest nvidia geforce 900 series driver (397.93 as listed above). No change.

Then i remembered that the HMD gets it’s audio through the graphics card, and since i normally don’t install the nvidia HD sound driver, i reinstalled the drivers once more. However, no change on that either.

Still, the only reliable fix i have found is starting the game, checking how it runs, and quit if its bad and try again. Doing this enough time eventually gets me what seems to be a stable experience with very few freeze hitches.

Fun workaround i did find though:
For all the smaller freezeups i often get when a mob is about to drop loot, a quest updates etc, quickly going to oculus home and back to the game clears the freeze almost guaranteed. Why? I have absolutely no idea, but it works. This is for when the game is otherwise running smooth ofcourse with only the occasional freeze.

Just to point out networking and cpu go hand in hand. Depending on your chipset (Intel/Broadcom) and if its part of the motherboard or not. Everything gets an address and has to go through the same bus which runs through CPU. So CPU lag can cause lots of different issues, you should never really be over 70% usage.

You could try upgrading your network drivers and system drivers. I know for Intel it can help sometimes. There is a couple networking bugs that also eat up CPU.

But at the end of the day if your CPU is pegged its time for an upgrade.

This sounds more like your network card is sharing the same bus as your usb and other peripherals and you are running out of bandwidth.

You can check your devices by connect in device manager. See attached screen. You can see what is sharing what.
https://drive.google.com/open?id=1vQL5z04Bks45Vyg04NimEILLr4KmxBd3

A reference article from Oculus going into more detail.

1 Like

Hmm, the first link you’ve posted points to an output_log.txt of yours with a lot of errors in it. I am guessing this is not what you wanted to link to?

However, your text about network card sharing the same bus as my usb is very interesting. Upon checking it does indeed look like my HMD is on the same bus as my network card. So that is definetely a possible culprit i will look into.

It doesn’t explain why performance is different across opening and closing the game many times, but it is very much a lead i will investigate. I will return with the results once i have them. Thanks!

Just a small thing to add, I used to have an i5 2500k (OCd at 4.2Ghz), never had a freezing issue with it after I switched to websocket connection

Very similar to my setup then, as mine is OC’d to 4 at the moment. With websocket i do indeed have a lot less freezes. The strange thing is the part that on default connection it varies between unplayable to smooth seemingly depending on luck and how many times i close/open the game. That suggests that something outside my system is having an effect on the issue.

I’m on an i7-4770k at 4.5Ghz and I get constant freezes on the default connection. It’s got to be a network issue, and not CPU, when it comes to that. There’s simply a lot of optimization left to be had, but they’re doing the best they can :smiley:
@Riley_D Keep up the amazing work :smiley:

So, i changed my usb connections around a bit (quite troublesome on such an old motherboard as i have haha). Sadly it seems that the built in ethernet on the motherboard is shared with the only USB3 controller i have.

However, i have loads of USB2’s, so i set up all oculus connections on those, expecting it to fail horribly. To my surprise it didn’t and i do indeed see less freezeups on default connection now. In short i think your theory about getting usb bandwidth capped is part of the issue. I do not see my HMD reporting bad tracking in oculus either anymore on default connection.

This however raises an interesting question: Why do i only see this issue with Orbus and not other VR games/apps? A good example of a similar app would be “Rec Room” which - i am guessing - also has a lot of network traffic updating peoples location, avatar looks, actions, voices etc.

My immediate guess would be that Orbus has a much higher network load in general, which in my case being shared with the HMD traffic when i use USB3 either reaches the cap or spikes the CPU or possibly both. But i have not tested this, so it remains a guess.

I’ll do some testing with my setup like this but using websocket as well and see how that goes.

Edit: Just want to chime in with Wyndrunner that i indeed also think they are doing amazing work. If not i wouldn’t be bothering with all these posts in the first place. This game is like v.1 of what i always dreamed of being able to play for many years :wink:

Originally the sensors used to need USB 3 ports, but Oculus managed to reduce the bandwidth requirement and it works on USB 2 as well :slight_smile: If you want to use USB 3 ports, the best idea I have is to use a PCI-E USB 3 hub?

Yeah, i’ve been wondering about that too. My old mobo (Asrock Z68 extreme3 gen3) has 2 USB3’s which as far as i can see are paired with my built in network card and all share the same controller aka bandwidth. Then there is 3 sets of USB2’s, 2 with 2 connections and one with 4.

In short i have 4 controllers as far as i can see, which leaves me having to use the 3 USB2 controllers for each separate oculus connection (HMD, sensor 1, sensor 2).

So yeah, i would either have to buy a PCI-E USB3 card which should mean a separate controller and bandwidth, or “simply” upgrade my motherboard and probably in turn my CPU.

The odd thing is that even though my machine is somewhat dated by now, in general i run most games (non VR) on highest or close to highest settings. VR ofcourse being an entirely different beast requiring very high framerates to be pleasant as well as double rendering does push the standards quite a bit. Regardless, none of the other titles i have in my VR library has any issues. These titles being all the general free onces on the oculus and steam portals ofcourse, as well as BoxVR, VR Dungeon Knight and Elite Dangerous (very immersive that one i must say, but touch support is **** compared to non VR keyboard or HOTA controls).

Anyway, i’ve done some testing with my new USB setup now but on websocket, and to be honest, it feels pretty much like default connection. It is generally slightly smoother, but the freezes will and does occur still. And still, most of the time quickly popping into oculus home and back out clears up the freeze (but not always).

In not so many words i think the issue here that i have been writing a lot about, and more and more people seem to chime in about as well now (and in the past) is probably made up of several issues:

  • the player being CPU capped or getting CPU cap spikes
  • the player having shared usb controller bandwidth issues
  • game initialization having an unknown effect somehow, making some game starts better than others
  • server hiccups/latency on Orbus’ end
  • routing issues from the player to the destination server
  • game issue where some things probably aren’t handled as well as they could during one or several of the above causing freezes to persist rather than being temporary

At least that is my guesses so far during the past days of talking with you guys and testing out everything i can think of.

Not sure if that is exactly an issue, what I’ve noticed is that the 2500k in general is a bit weak for VR games, ever since I’ve upgraded to a 4790k I’ve got no similar issue

Yep, and you are apparently not the only one.

However, there are contradicting reports around from other players both in this thread, other threads and some of the fellowship discords. If you scoll up a little you can see one of those from Wyndrunner having freezes on a [email protected] on default connection.

Again, my guess is that it’s a composite issue, and CPU is just one of many variables leading to gameplay problems.

Just to clarify, I still get occasional freezes/DCs on websocket (Tolerable, though), but default is practically unplayable.

Btw G, i upped my OC to 4.2Ghz since you said you used to run the same with websocket. Windows resource monitor tells me my CPU is at 62-75% usage on average while the game is running at this speed. However, i am still getting the freezes.

Also, the trick with starting/exiting the game several times to get a “smoother” game also seems to work with websocket. In short i am able to enjoy playing and most of the time smoothly, but not without using that particular “trick”.

Sorry should have double checked my link.
https://drive.google.com/open?id=1vQL5z04Bks45Vyg04NimEILLr4KmxBd3
that one should be the right photo.

I picked up the following USB card to reduce the load on my single controller.

If you have an extra pci-e slot it might be worth it. Unless your thinking of building a new pc :slight_smile:

1 Like

Thanks Mike. I’d build a new PC if i could afford it, but dreams and reality are often two different things right? :smiley:

I saved your link and i will definetely consider this. Even more so if i want to add a third sensor at some point for proper 360 roomscale.

You know you can have 360 roomscale with only 2 sensors, right? all you have to do it to put them in the opposite corner of the playspace (though worth noting that it won’t be as accurate as it would be with 3 sensors)

1 Like

Yep, i know (but thanks for posting it anyway though). I have it set up like that at the moment. Or rather, i have a North and East setup rather. The reason being that i don’t have any USB extension cables, so that is as far as i can place them. But they cover my 2x2ish meter playspace pretty well.

I basically need to be blocking my controllers with my body and facing SW for them to lose tracking.

Btw @Riley_D, i don’t know if you have done something on your end, but currently i have been able to play (on websocket) continuously for 410 minutes aka almost 7 hours without any crashes. Also, i have had no hard freezes either. There has been a few small freezes, which i have quickly resolved with the tap-into-oculus-home-and-back-out trick. Just thought you should know in case you have changed anything since my setup is the same.

(that being said i have not played 7 hours straight, i’m putting the headset down for a breather between grind sessions and watching some anime till i catch my breath again haha)