API Reference Manual  1.45.0
odp_schedule_config_t Struct Reference

Schedule configuration. More...

#include <schedule_types.h>

Data Fields

uint32_t num_queues
 Maximum number of scheduled queues to be supported. More...
 
uint32_t queue_size
 Maximum number of events required to be stored simultaneously in scheduled queue. More...
 
uint32_t max_flow_id
 Maximum flow ID per queue. More...
 
struct {
   odp_bool_t   all
 ODP_SCHED_GROUP_ALL. More...
 
   odp_bool_t   control
 ODP_SCHED_GROUP_CONTROL. More...
 
   odp_bool_t   worker
 ODP_SCHED_GROUP_WORKER. More...
 
sched_group
 Enable/disable predefined scheduling groups.
 

Detailed Description

Field Documentation

◆ num_queues

uint32_t odp_schedule_config_t::num_queues

Maximum number of scheduled queues to be supported.

See also
odp_schedule_capability_t
Examples
odp_cpu_bench.c.

Definition at line 255 of file api/spec/schedule_types.h.

◆ queue_size

uint32_t odp_schedule_config_t::queue_size

Maximum number of events required to be stored simultaneously in scheduled queue.

This number must not exceed 'max_queue_size' capability. A value of 0 configures default queue size supported by the implementation.

Examples
odp_cpu_bench.c, and odp_pktio_ordered.c.

Definition at line 262 of file api/spec/schedule_types.h.

◆ max_flow_id

uint32_t odp_schedule_config_t::max_flow_id

Maximum flow ID per queue.

This value must not exceed 'max_flow_id' capability. Flow aware mode of scheduling is enabled when the value is greater than 0. The default value is 0.

Application can assign events to specific flows by calling odp_event_flow_id_set() before enqueuing events into a scheduled queue. When in flow aware mode, the event flow id value affects scheduling of the event and synchronization is maintained per flow within each queue.

Depending on the implementation, there may be much more flows supported than queues, as flows are lightweight entities.

See also
odp_schedule_capability_t, odp_event_flow_id()
Examples
odp_bench_buffer.c, and odp_l2fwd.c.

Definition at line 281 of file api/spec/schedule_types.h.

◆ all

odp_bool_t odp_schedule_config_t::all

ODP_SCHED_GROUP_ALL.

0: Disable group 1: Enable group (default)

Examples
odp_stress.c.

Definition at line 290 of file api/spec/schedule_types.h.

◆ control

odp_bool_t odp_schedule_config_t::control

ODP_SCHED_GROUP_CONTROL.

0: Disable group 1: Enable group (default)

Examples
odp_stress.c.

Definition at line 297 of file api/spec/schedule_types.h.

◆ worker

odp_bool_t odp_schedule_config_t::worker

ODP_SCHED_GROUP_WORKER.

0: Disable group 1: Enable group (default)

Examples
odp_stress.c.

Definition at line 304 of file api/spec/schedule_types.h.


The documentation for this struct was generated from the following file: