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 https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.

Bug report at https://gitlab.com/alfredchen/bmq/issues

Monday, June 1, 2020

BMQ v5.7-r0 release

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

1. Sync-up with mainline scheduler code changes.

This is the first release of BMQ in v5.7, nothing new but the sync-up. Meanwhile, Project C has been started. In this kernel release cycle, BMQ will be refactored into Project C infrastructure. A lot things need to be decided in the next 2~3 weeks. Stay tuned.

Full kernel tree repository can be found at https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.

Bug report at https://gitlab.com/alfredchen/bmq/issues

Friday, May 22, 2020

Project C announcement


BMQ scheduler has been development for more than one year. And it has accomplished the ambition when it was setup to be. As a simple scheduler, BMQ is now stable for several kernel release and less feature is added from release to release. It is now in maintenance mode.

When searching for idea about cpu scheduling, PDS, which has been exiled since BMQ, is still the most potential one, and the one most close to BMQ(in code level and performance level). Several very early improvement idea has been drafted after the reviewing of the latest PDS(kernel 5.0). So, PDS will be picked up again, and it is going to share same code base of BMQ. That comes Project C.

Project C ambitions
1. Based on BMQ code base, provide common alternative cpu scheduler code for linux kernel.
2. Provide single patch set for BMQ and PDS, switch at kernel configuration.
3. Maintenance BMQ
4. Continuous improvement on PDS till it enter maintenance mode.

Here is the recent Project C planing in the incoming kernel release cycle
5.7   Refactor BMQ into Project C infrastructure. 
5.8   Recreate PDS based on Project C code base.
5.9   PDS beta.
5.10 PDS official release.
5.11 PDS continuous improvement. 

Project C has no deadline defined, but may last for a year.

And the last thing, C for "Cross".

Saturday, May 9, 2020

BMQ v5.6-r4 release

BMQ v5.6-r4 is released with the following changes

1. Minor reworks in two core functions.
2. Set proper time slice for idle tasks.

This should be the last BMQ release in this kernel cycle. Sync-up work from next week. Enjoy BMQ for your linux kernel.

Full kernel tree repository can be found at https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.

Bug report at https://gitlab.com/alfredchen/bmq/issues

Monday, April 20, 2020

BMQ v5.6-r3 release

BMQ v5.6-r3 is released with the following changes

1. Rework codes in __schedule() and sched_fork(). These are minor changes, but will somehow help to reduce overhead.

Enjoy BMQ for your linux kernel.

Full kernel tree repository can be found at https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.

Bug report at https://gitlab.com/alfredchen/bmq/issues

Sunday, April 12, 2020

BMQ v5.6-r2 release

BMQ v5.6-r2 is released with the following changes

1. Fix sync-up error when BMQ applied but not enabled.
2. Fix cpu topology setup for BMQ in ryzen system.
3. Fix incorrect rq->sched_goidle statistics.

This is a bug fix release, thanks for who reports these. Enjoy BMQ for your linux kernel.

Full kernel tree repository can be found at https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.

Bug report at https://gitlab.com/alfredchen/bmq/issues

Sunday, April 5, 2020

BMQ v5.6-r1 release

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

1. Fix compile warning on 32bit system. Thanks jwh7 for reporting.
2. Reverted code changes which are not essential part of scheduler code. Eg cpufreq and INITIAL_JIFFIES.
3. Extend BMQ for RT tasks. This is the improvement which make bit-map queues(0-99) for RT tasks(FIFO/RR policy) instead of single double-linked queue in previous releases. Thanks whoever comment this in v5.5-r2 release.

Your feedback will be welcome and helpful for BMQ scheduler development. Next release will be come 2 weeks later.

Enjoy BMQ for your linux kernel.

Full kernel tree repository can be found at https://gitlab.com/alfredchen/linux-bmq
And all-in-one patch can be found at gitlab.

Bug report at https://gitlab.com/alfredchen/bmq/issues