Sunday, June 7, 2020

BMQ v5.7-r1 release

BMQ v5.7-r1 is released with the following changes

1. Fixes for two compilation issue in r0 release.

Nothing new, just a bug fix release before project-C.

Full kernel tree repository can be found at
And all-in-one patch can be found at gitlab.

Bug report at


  1. Thank you very much.

  2. Running great on Ryzen@home and i7@work. Thanks!

    I have a question, though. Now it's +/- 4 boost for tasks, theoretically I can change that in code to be +/- 8 or whatever.
    Is 4 optimal or how did You determine that 4 is the right boost? Is it meaningful to try other boost range at all?

    BR, Eduardo

    1. Sure you can, it's defined at

      As for choosing 4 as the right boost - it's what Google chose for their initial scheduler design for their zicron kernel, on which BMQ is based on.

      It was originally defined at :

      And dynamic priorities were introduced in the commit : which doesn't really explain the rationale behind it.

      But would still like an explanation by the man himself!


    2. +/- 4 boost prio is kept in BMQ b/c the time slice duration.
      Time slice is default 4ms in BMQ, in BMQ, boost prio happens in condition when task run time is less than a threshold(time slice shift some bits).
      If there are +/- 8 boost prio, there will be 16 levels will need to be distinguished. 4ms >> 16 = 64ns. It's unlikely a reasonable duration(too too short) tasks will spend.