Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

CONFIG_RT_GROUP_SCHED=y harmuflull for real time applications

Featured Replies

Since linux v5.4 armbian_build enables the CONFIG_RT_GROUP_SCHED config option.

 

Some armbian users use the soft real-time features for either real-time audio (jackd), or control (eg. klipper_host_mcu),

However, real-time group scheduling, enabled by this options complicates the user space configuration required to acquire real-time scheduling in applications and daemons.

 

Setting ulimit -r or LimitRTPRIO= is no longer enough, it is also required to allocate CPU time for RT task. In a brutal way this can be done as 
 

echo 950000 > /sys/fs/cgroup/cpu,cpuacct/{system,user}.slice/cpu.rt_runtime_us

JACK documentation recommends using cgroup-tools for configuration. This is redundant with systemd's own configuration of cgroups hierarchies.

 

However, it is currently not possible to setup with systemd configs files: the team responded "wontfix, accounting rules for RT_GROUP_SCHED are too convoluted for systemd to support"

The systemd's README was updated with the follwing warning:

Quote

We recommend to turn off Real-Time group scheduling in the

kernel when using systemd. RT group scheduling effectively

makes RT scheduling unavailable for most userspace, since it

requires explicit assignment of RT budgets to each unit whose

processes making use of RT. As there's no sensible way to

assign these budgets automatically this cannot really be

fixed, and it's best to disable group scheduling hence.

CONFIG_RT_GROUP_SCHED=n

 

I was hesitant to open an issue on armbuild_config. The changes in the config file are quite recent (Dec 2019) and probably unintentional (kernel default).

But, I could be missing something. Surely lots of folks use RT scheduling on their board. Maybe along with an older kernel ?

Does real-time group scheduling have any use on SBC ?

Do you have simpler solution for this problem (other than CONFIG_RT_GROUP_SCHED=n) ?

@Piezo - did you already try "sysctl -w kernel.sched_rt_runtime_us=-1" - it works well for me for jackd ...

 

best wishes and good luck - hexdump

  • Author

Thanks, I confirm that it work for this application too!

(Sorry for the late reply. And dang, that typo in the title, no wonder I was to ashamed to come back here :wacko:)

Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.