Experimental: 0.81.0.0 Beta with Monitor-order & save feature for Virtual Desktop

I’ve seen SSD benchmarks and most of the games benefit a lot from SSDs, however there is little difference between all the SSDs, including the SATA ones.

The issue is AFAIK that game engines currently are not well suited for SSD, apart from actually loading the assets, they do quite a lot of other work, including decompression, processing, etc. A lot of developers had to invest quite a lot of development time for a proper backend, which enables seamless content streaming.

In a year or so we will be able to reap some real benefits from SSD, due to game engines finally being able to leverage higher bandwidth and that Direct Storage stuff.

1 Like

Roughly true.

Do you mean ‘execute in place’ kind of stuff, where things are not copied into RAM/VRAM at all? Because 3D objects tend to be used over many frames before leaving the player’s field of view, I rather doubt that is going to be a big thing in VR or gaming.

No. DirectStorage is a new API that is aimed towards reducing IO call overhead, having an efficient batch mode, reducing callbacks. It is also aimed for improving decompression performance (somehow) and offering shortpath for IO handling on supported hardware, also I think they are doing DMA between GPU and NVMe drives but don’t quote me on that. Basically they are trying to adapt new XBox and PS5 storage arch to PCs.

1 Like

Ah. Stuff I would expect Linux does for me already, since I tend to configure/compile recent kernels myself. :stuck_out_tongue_winking_eye:

I wouldn’t bet on it. Linux historically has poor desktop usage responsiveness. It can be mitigated with non-standard IO scheduler, but it is work in progress. AFAIK there is no special low level IO API geared towards gaming workloads.
You might confuse the situation with the recent AMD SAM debacle and even then you would be wrong. Resizable BAR support is only a part of equation. Only now has AMD started improving Linux gpu drivers with that in mind. (Mesa 21.0 Begins Landing Optimizations For AMD Smart Access Memory - Phoronix)

I believe you are referring either to the lack of PREEMPT_RT (and similar) patches, or to an incident with the IO Scheduler. Both were many, many years back.

Since then, Linux has been catching up faster than MSW, to the point that most desktop and server machines can run hard real-time Linux ( 100us latency guaranteed, 10kHz response rate guaranteed), which is part of the reason we are starting to see fast CNC machines using desktop/laptop/raspi computers running Linux, rather than microcontrollers or slow CNC machines using EMC2 software on MSW.

I don’t know as much about the GPU side, but I do go over the new features showing up in ‘make oldconfig’ and such when I compile new kernels. Some of the stuff happening there sounds very impressive.

1 Like

I found two launcher parameters that can help us, /VR and /autoquit

so, now my ed.bat batch is

start /w "ED" "{elite path}\EDLaunch.exe" /VR /autoquit
taskkill /F /IM vrmonitor.exe

At the end it also kills SteamVR, so it comes back to PE

Imported the .bat in PE works, you can run Elite as many times as you want, but maybe this logic can be integrated in the main one

5 Likes

I was not talking about process scheduling, which is fine. I was talking about IO scheduling and user experience responsiveness. Which, especially on regular hdd, was comparatively bad. This is the reason why there are quite some number of IO schedulers available. Some excell for throughput, some help apps load faster. Some work better on HDDs, some on SSDs (actually NVMe prefers no scheduler at all).
Current default IO scheduler is CFQ. AFAIK it is not the best for app start time.
You can find some IO schedulers benchmarks here:
Linux 5.6 I/O Scheduler Benchmarks: None, Kyber, BFQ, MQ-Deadline - Phoronix - SSD
Linux 5.0 HDD I/O Scheduler Benchmarks - BFQ Takes The Cake - Phoronix - HDD

1 Like

That’s why I just went with a 2TB Intel 660p NVMe (came from 4 x Samsung EVO 850 in Raid-0) when I upgraded to the i9-9900K a few Years (?) back… :slight_smile:

Having everything on one SSD was more important to me than benchmarks and I figured I probably wouldn’t be feeling like I was missing out on anything (and I haven’t been)… :wink:

1 Like

I know. While it still might not be as good as what I hear about MacOS, and BSD generally, the major spinlocking bugs (all spinlocking is a bug) and whatnot have largely been solved. Combined with the advantages of SSDs, this is mostly a non-issue on Linux, with the possible exception of swapping out most of the system RAM, which is also avoidable these days.

2 Likes

Thanks for this!

20 char

1 Like

I would argue that they never “solved” it, but they just have avoided it through superior hardware. Doesn’t change the fact that HDDs still suck for app load on default. The best Linux has is blq-mq, which is designed specifically for NVMe, it is close to the metal. It is a huge leap forward, but you won’t see games benefiting from it much more than from any SSD. Because games are a very specific workload with specific requirements.

3 Likes

Please note that 0.84 (installer) is now available:

https://community.openmr.ai/t/pimax-vr-experience-0-84-0-0-beta-download/33809

2 Likes

@SweViver Are you planning to add a physical / virtual keyboard to you virtual desk layout? It could be an interesting way to help us switch from VR Controllers to KB. Next up, adding a virtual desk and mouse!

Thanks for the hard work, this whole Pimax Experience is making it way better.