BORE: Restore default base slice value of 2ms #305
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, we set the
min_base_slice_ns
value of BORE to 1000000 (1ms). This was previously added to circumvent some audio crackling and glitchesusing 1000Hz kernel. However, a few benchmarks I did (see below) shows that throughput is worse with a base slice of 1ms compared to 2ms.
This behaviour is expected and it doesn't matter much when using BORE as a scheduler because we are not focused on throughput, but rather deskop responsiveness
and interactivity. What was unforeseen however, was the fact that responsiveness under heavy load was also hurt by lowering the base slice to 1ms.
@firelzrd, the developer of BORE, has also stated that a base slice of anything lower than 2ms will cause excessive scheduling, poor cache efficiency and
increased CPU overhead. It will also lower throughput (as mentioned earlier) which can also harm responsiveness.
Users can compare between these two base slice values by the following command for testing: