API Reference Manual
1.48.0
|
Schedule group parameters. More...
#include <schedule_types.h>
Data Fields | |
struct { | |
odp_schedule_prio_t level [ODP_SCHED_MAX_PRIOS] | |
Priority levels to be supported by the group. More... | |
uint32_t num | |
Number of entries in 'level' array. More... | |
} | prio |
Group specific priority configuration. | |
struct { | |
odp_cache_stash_config_t common | |
Common group specific cache stashing hints. More... | |
struct { | |
const odp_cache_stash_prio_config_t * prio | |
Pointer to 'num' entries of priority specific configuration. More... | |
uint32_t num | |
Number of entries in 'prio' array. More... | |
} | |
Priority specific cache stashing hints. More... | |
} | cache_stash_hints |
Group specific cache stashing hints. More... | |
Schedule group parameters.
Definition at line 397 of file api/spec/schedule_types.h.
odp_schedule_prio_t odp_schedule_group_param_t::level[ODP_SCHED_MAX_PRIOS] |
Priority levels to be supported by the group.
Array of priority levels to be supported by the group. The level range can be non-contiguous, must have unique values and must always be in ascending order, i.e., minimum priority level must be as the first element and maximum priority level as the last element.
Additionally, each priority level must be within the global priority range. During odp_schedule_config() the range is from odp_schedule_capability_t::min_prio to odp_schedule_capability_t::max_prios - 1. During odp_schedule_group_create_2() the range is from odp_schedule_min_prio() to odp_schedule_max_prio().
When creating a queue belonging to a schedule group with a group specific priority configuration, the used scheduler priority level (odp_schedule_param_t::prio) must be within the group specific range.
The field is ignored if 'num' is 0.
Definition at line 422 of file api/spec/schedule_types.h.
uint32_t odp_schedule_group_param_t::num |
Number of entries in 'level' array.
Number of entries in 'prio' array.
When 0, the global priority range (see odp_schedule_config_t::prio) is used with this group. 0 by default.
0 by default.
Definition at line 430 of file api/spec/schedule_types.h.
odp_cache_stash_config_t odp_schedule_group_param_t::common |
Common group specific cache stashing hints.
Configures cache stashing for each priority under the group. By default, all regions are disabled (see odp_cache_stash_config_t::regions).
Definition at line 512 of file api/spec/schedule_types.h.
const odp_cache_stash_prio_config_t* odp_schedule_group_param_t::prio |
Pointer to 'num' entries of priority specific configuration.
The field is ignored if 'num' is 0.
Definition at line 526 of file api/spec/schedule_types.h.
struct { ... } odp_schedule_group_param_t::cache_stash_hints |
Group specific cache stashing hints.
Depending on the implementation, configuring these may improve performance. Cache stashing hints can be configured with a group-wide configuration using 'common' and with optional priority specific exceptions using 'prio' and 'num'. For example:
would disable cache stashing entirely for the group except priority 3 would have event user area L2 cache stashing enabled.
would enable event data L2 cache stashing entirely for the group except disable cache stashing for priority 3.
would enable event data L2 cache stashing entirely for the group but priorities 3 and 4 would have event data cache stashing beginning from offset 64 instead of 0.