"The min_granularity setting was renamed to base_slice in this commit in v6 kernel.
The comment says it scales with CPU count and the comment is incorrect. I wonder whether kernel developers are aware of that mistake as they are rewriting the scheduler!
- Official comments in the code says it’s scaling with log2(1+cores) but it doesn’t.
- All the comments in the code are incorrect.
- Official documentation and man pages are incorrect.
- Every blog article, stack overflow answer and guide ever published about the scheduler is incorrect."
Because it isn’t. This impacts when the scheduler kicks in, not on how many cores stuff is running on. With fewer cores scheduler is faster triggered again, and and at 8 cores the adjustment for that stops. Which may be an intentional decision to avoid high latency issues.
@aard @Fizz
Wasn’t the scheduler a one byte/bit at a time on/off scheme at some point?
Yeah its mum used to say “you eat to fast eat one byte at a time”