On Fri, 2025-02-14 at 09:31 +0100, Florian Paul Schmidt wrote: > > I wonder if there is still a way to save the day, i.e. use the RPI5 > as a > somewhat capable RT-system by > > 1. making sure that the RT load does not do anything nasty - this is > mostly under the users' control since they can setup their RT load to > not do this. > > 2. preventing other tasks on the system from trashing the memory bus. > These are not under direct control by the users if they wish to run a > general purpose Linux system besides the RT load. > > Is there any mechanism in the Linux kernel to achieve 2.? This would > probably come with significant slowdown of the non-RT tasks, but that > would be acceptable at least for me. > Hi Florian, as far as I'm aware, there's not much in the linux kernel to achieve 2, at least without hardware support (e.g. intel MBA and friends). What you mention really looks to me like Memguard (https://github.com/heechul/memguard), there's a lot of research on similar approaches, essentially what you do is to assume accesses to the bus are given by LLC (last level cache) misses, as those are usually easier to measure with PMUs (on-chip performance counters). Then you give budgets to each core and throttle the cores that finished their budget. Memguard is the closest to a ready-made solution (thought a bit old), but you can find several papers on the topic, also something that really throttles tasks and not cores, so you won't need to play with isolating the few cores on the Pi. This requires a bit of crafting, but I hope it gives you some insights. Best, Gabriele