EM-ODP  3.7.0
Event Machine on ODP
em_pool_stats_opt_t Union Reference

#include <event_machine_pool.h>

Data Fields

struct {
   uint64_t   available: 1
 
   uint64_t   alloc_ops: 1
 
   uint64_t   alloc_fails: 1
 
   uint64_t   free_ops: 1
 
   uint64_t   total_ops: 1
 
   uint64_t   cache_available: 1
 
   uint64_t   cache_alloc_ops: 1
 
   uint64_t   cache_free_ops: 1
 
   uint64_t   core_cache_available: 1
 
}; 
 
uint64_t all
 

Detailed Description

EM pool configuration

Configuration of an EM event pool consisting of up to 'EM_MAX_SUBPOOLS' subpools, each supporting a specific event payload size. Event allocation, i.e. em_alloc(), will use the subpool that provides the best fit for the requested size.

Example usage:

em_pool_cfg_t pool_cfg;
em_pool_cfg_init(&pool_cfg); // init with default values (mandatory)
...
pool_cfg.num_subpools = 4;
pool_cfg.subpool[0].size = X;
pool_cfg.subpool[0].num = Y;
pool_cfg.subpool[0].cache_size = Z;
...
pool = em_pool_create(..., &pool_cfg);

EM pool statistic counter options

Examples
bench_pool.c.

Definition at line 98 of file event_machine_pool.h.

Field Documentation

◆ @7

struct { ... }

Option flags

◆ all

uint64_t em_pool_stats_opt_t::all

All bits of the bit field structure

This field can be used to set/clear all flags, or for bitwise operations over the entire structure.

Definition at line 138 of file event_machine_pool.h.

◆ alloc_fails

uint64_t em_pool_stats_opt_t::alloc_fails

◆ alloc_ops

uint64_t em_pool_stats_opt_t::alloc_ops

◆ available

uint64_t em_pool_stats_opt_t::available

◆ cache_alloc_ops

uint64_t em_pool_stats_opt_t::cache_alloc_ops

◆ cache_available

uint64_t em_pool_stats_opt_t::cache_available

◆ cache_free_ops

uint64_t em_pool_stats_opt_t::cache_free_ops

◆ core_cache_available

uint64_t em_pool_stats_opt_t::core_cache_available

Enables applications to read core/thread cache available of the underlying ODP pool with ODP API (e.g. odp_pool_stats()). EM pool statistic APIs do not support fetching core_cache_available.

Definition at line 130 of file event_machine_pool.h.

◆ free_ops

uint64_t em_pool_stats_opt_t::free_ops

◆ total_ops

uint64_t em_pool_stats_opt_t::total_ops

The documentation for this union was generated from the following file:
em_pool_create
em_pool_t em_pool_create(const char *name, em_pool_t pool, const em_pool_cfg_t *pool_cfg)
Definition: event_machine_pool.c:76
em_pool_cfg_t
Definition: event_machine_pool.h:141
em_pool_cfg_init
void em_pool_cfg_init(em_pool_cfg_t *const pool_cfg)
Definition: event_machine_pool.c:43
em_pool_cfg_t::num
uint32_t num
Definition: event_machine_pool.h:281
em_pool_cfg_t::cache_size
uint32_t cache_size
Definition: event_machine_pool.h:294
EM_EVENT_TYPE_PACKET
@ EM_EVENT_TYPE_PACKET
Definition: event_machine_hw_types.h:75
em_pool_cfg_t::subpool
struct em_pool_cfg_t::@11 subpool[EM_MAX_SUBPOOLS]
em_pool_cfg_t::size
size_t size
Definition: event_machine_pool.h:224
em_pool_cfg_t::event_type
em_event_type_t event_type
Definition: event_machine_pool.h:156