diff options
author | Petri Savolainen <petri.savolainen@linaro.org> | 2018-10-24 15:20:21 +0300 |
---|---|---|
committer | Maxim Uvarov <maxim.uvarov@linaro.org> | 2018-10-29 13:54:17 +0300 |
commit | 52d54fae53f5e65f232cb21b116e51ea36b4eb0b (patch) | |
tree | 7f3d7aaf8d1ce24b00bc83d067c61a58435b7f42 /config | |
parent | eab91f7101cdf47c59b14b5a511a82c701e66ff4 (diff) |
linux-gen: sched: add spread weight config file option
Add new config file option to control scheduler internal queue
preference ratio.
Signed-off-by: Petri Savolainen <petri.savolainen@linaro.org>
Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org>
Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
Diffstat (limited to 'config')
-rw-r--r-- | config/odp-linux-generic.conf | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/config/odp-linux-generic.conf b/config/odp-linux-generic.conf index af651d7f6..2417d23f2 100644 --- a/config/odp-linux-generic.conf +++ b/config/odp-linux-generic.conf @@ -16,7 +16,7 @@ # Mandatory fields odp_implementation = "linux-generic" -config_file_version = "0.1.1" +config_file_version = "0.1.2" # Shared memory options shm: { @@ -80,13 +80,27 @@ queue_basic: { } sched_basic: { - # Priority level spread. Each priority level is spread into multiple - # scheduler internal queues. A higher spread value typically improves - # parallelism and thus is better for high thread counts, but causes - # uneven service level for low thread counts. Typically, optimal - # value is the number of threads using the scheduler. + # Priority level spread + # + # Each priority level is spread into multiple scheduler internal queues. + # This value defines the number of those queues. Minimum value is 1. + # Each thread prefers one of the queues over other queues. A higher + # spread value typically improves parallelism and thus is better for + # high thread counts, but causes uneven service level for low thread + # counts. Typically, optimal value is the number of threads using + # the scheduler. prio_spread = 4 + # Weight of the preferred scheduler internal queue + # + # Each thread prefers one of the internal queues over other queues. + # This value controls how many times the preferred queue is polled + # between a poll to another internal queue. Minimum value is 1. A higher + # value typically improves parallelism as threads work mostly on their + # preferred queues, but causes uneven service level for low thread + # counts as non-preferred queues are served less often + prio_spread_weight = 63 + # Burst size configuration per priority. The first array element # represents the highest queue priority. The scheduler tries to get # burst_size_default[prio] events from a queue and stashes those that |