Linux 6.12 Features Super Real-Time, Sched_ext, Intel Xe2 and Pi 5
phoronix.com
phoronix.com
This article explains well why PREEMPT_RT is a big deal and why it was so much work to get in into the kernel.
Real-time Linux is officially part of the kernel (arstechnica.com) | 500 points | 139 comments | 10 days ago | https://news.ycombinator.com/item?id=41594862
However I would say the more useful features are the less crazy version in cpusets and the various tools to deal with irq pinning. These are in extremely wide use at this point and make a world of difference even if you aren't trying to squeeze every possible thing off your cores.
Even a 10 ms delay is noticeable when playing an instrument. A lot of processing is required to produce a sound: Receive the input over a hardware interface, send it into userspace, determine what sound to play - usually a very complicated calculation with advanced plugins - potentially accessing many megabytes of raw sound data, apply chains of effects, mix it all together, send megabytes of uncompressed sound data back to the kernel, and push it out through an audio interface.
The more predictable the kernel can be, the more advanced audio processing can be, and better music comes out. Every single microsecond counts.
Modern software instruments can emulate acoustic instruments with a high degree of precision and realism, and a huge range of expressive freedom, but that takes a lot of processing power in real time.
And is commonly used in high end professional settings for audio...
I'm not speaking against the above comment. Audio is hard, but purely because of the timelines required with extremely low buffer sizes. It's pretty common to be running at buffer sizes at 256 samples or lower... However on a modern processor thats very low latency... At 48000 samples per second a buffer of 256 samples would generally give you a latency of 5ms give or take... But that also gives you 5ms to do all processing of that buffer which can be significant as was mentioned above.
Honestly though in my experience, FPGAs are the way to go for super low latency audio, most modern implementations are measured in micro seconds for processing stages.
The problem is you have to do all the processing on the FPGA since any round trip to the CPU would take eons compared.
Avid HDX is the pricy but industry standard for studio and post production work. There are other options but because most people don't need them so they aren't popular, most people are fine with restricting processing during recording which is when the latency is important and then when producing and mixing latency could be several hundred ms and you don't care...
Source: me, professional audio "engineer" with over a decade in the industry who has recorded multiple commercially successful albums, ad spots, generic corporate videos, radio spots and entire radio shows etc...
Something doesn't have to be perfect to enable a usage.
It would also be good if they would release all the closed source firmware files needed for their devices under a redistributable license in the linux-firmware repository. For some time it was not allowed to redistribute the binary wifi firmware needed for the Raspberry Pi devices. This is needed for Linux distributions to package the binaries.
I hope they do this only because of lack of resources and not intentionally to lock people into their Linux distribution.
This thing was announced on May 2021...
So not so good is really an understatement.
https://www.raspberrypi.com/news/announcing-the-raspberry-pi...
This is even savvy marketing - it always creates some buzz around features of future chips.
You never catch them using anything near latest in an application.
Modules are available, but it’s hit-and-miss with updates.
I’m just an end user, so I don’t know if it’s been mentioned in a newsgroup somewhere.
You reminded me to write up the process, and publish a flake for NixOS users who want the kernel.
Especially for anything that needs to "just run" for multiple years. Linux means you must deal of the distro or something like Yocto or Buildroot. Both of which have major pain points.
So yeah not everything under the sun, but certainly not what I'd consider a "very small" number of MCUs.
Of course, support level varies among the platforms, but you're not going to be doing too fancy things in MicroPython I imagine.
[1]: https://github.com/micropython/micropython?tab=readme-ov-fil...
[2]: https://docs.zephyrproject.org/latest/boards/index.html
Reminded that Debian-family is outdated linux that uses the marketing 'stable' which has 0 relations to the number of bugs.
Modern Linux like Fedora has those bugs already fixed.
I say this as a warning. I thought we were trapped with Windows 11 and 'Linux'(meaning Debian-family). No, turns out that is outdated linux and Modern linux is amazing.
I'm a bit reluctant to lump Fedora in with 'Linux', because its not fair to Fedora.
Correct: It is stable, which is to say that things that work today will work tomorrow and the system does its best to stay out of your way. It doesn't, say, expect you to jump major versions every 6 months like other distros you might name.
> I thought we were trapped with Windows 11 and 'Linux'(meaning Debian-family).
I mean, yeah, the family of Linux distros alone is huge; conflating "Linux" and "Debian-family" is a significant mistake.
> No, turns out that is outdated linux and Modern linux is amazing.
And less-bleeding-edge Linux is also amazing. Unless you need the new stuff, moving at a slightly more sedate pace is perfectly fine. Which way the tradeoffs go depends on you and your usecases; some people want all the new shiny features right right now and benefit from riding the bleeding edge (like Debian Sid, Arch, or yes Fedora), and some people want to set things up and then not have to think about that machine for another few years (funny enough, I'd actually prefer that Debian supported each release for an even longer time, but that takes resources the project doesn't have). Bashing either approach is myopic.
If you are running a mission critical service, oh say for example wide-area emergency services dispatch, the downside is people might die and you will look like a dickhead for insisting on living on the bleeding edge.