this post was submitted on 19 Nov 2024
117 points (99.2% liked)

Linux

5276 readers
541 users here now

A community for everything relating to the linux operating system

Also check out [email protected]

Original icon base courtesy of [email protected] and The GIMP

founded 1 year ago
MODERATORS
 

cross-posted from: https://lemmy.zip/post/26533086

Linux kernel 6.12 is one of the most significant releases of the year, delivering a feature nearly 20 years in the making: true real-time computing.

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 18 points 2 days ago (15 children)

As I understand it, most kernel operations can’t be interrupted (i.e., they’re non-preemptible). But PREEMPT_RT allows high-priority tasks to interrupt lower-priority ones near-instantly. For specific types of tasks this improves response times and thus performance.

I never looked into the details of realtime Kernel. I know it is or was used for professional realtime audio mixing and recording and such. Besides that, if this improves response times, would gaming benefit from this? What are downsides for using a realtime Kernel for gaming?

[–] CameronDev 34 points 2 days ago* (last edited 2 days ago) (11 children)

Realtime doesn't necessarily mean low latency, it means consistent latency.

So if the latency from and input takes 1s, that is realtime, as long as its always 1s.

Typically for gaming you want the lowest latency possible, and at least historically, that meant not realtime.

Edit: Some examples with made up numbers:

Airbag: you want an airbag to go off EVERY time, and if that means it takes 10ms, thats usually OK. RT guarantees that your airbag will go off 10ms after a crash every time.

Games: you want your inputs handled ASAP, ideally <5ms, but if one or two happen after 100ms, you'll likely not notice. If you enable RT, maybe all your inputs get handled after 10ms consistently, which ends up feeling sluggish.

Unless you know you need RT, you probably dont actually want it.

[–] [email protected] 2 points 2 days ago (2 children)

@CameronDev @thingsiplay As I previously stated, a normal preemptive kernel will generally provide <1ms latency. RT does provide the possibility of lower latency and not inconsistent as you suggest unless you are resource saturated.

[–] CameronDev 1 points 2 days ago (1 children)

When I last looked into it, many years ago, RT definitely did negatively impact average latency. It was slower, but consistent. Has that actually changed?

[–] [email protected] 1 points 2 days ago

@CameronDev I never applied the real time patch before it was integrated in 6.12, so I have no previous experience to compare to. And with 6.12, I can only go by documentation at present because the realtime configuration breaks my graphics so I have no display. But I have worked in audio studios in the past where they used it and claimed it helped. I can only take their word, but I did mention the tradeoffs earlier, if you do more context switching it is going to eat more resources, so if you are resource saturated it's going to slow you down instead of speed you up. I am anxious for the driver issue to be resolved so I can try for myself on my hardware. I am particularly curious to see how my i9-10980xe (18 core / 36 thread) machine will respond to it. That is the machine this friendica runs on so I really need to know it's going to be stable before I even try it, but that machine does have nvidia rather than UHD630 graphics so may work.

load more comments (8 replies)
load more comments (11 replies)