X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=app%2Ftest-eventdev%2Fevt_options.h;h=413d7092f08dc515b22720408b11cba9bba536fc;hb=39ddd5d1895e72ba2bc974eddbc12a3135639ed1;hp=b51d8d5b3053fcd789a7d07a0b3afc782883e31a;hpb=d008f20bce23a05b34086a281f8d5cd2c9f8d09d;p=dpdk.git diff --git a/app/test-eventdev/evt_options.h b/app/test-eventdev/evt_options.h index b51d8d5b30..413d7092f0 100644 --- a/app/test-eventdev/evt_options.h +++ b/app/test-eventdev/evt_options.h @@ -31,44 +31,25 @@ #define EVT_SCHED_TYPE_LIST ("stlist") #define EVT_FWD_LATENCY ("fwd_latency") #define EVT_QUEUE_PRIORITY ("queue_priority") +#define EVT_DEQ_TMO_NSEC ("deq_tmo_nsec") #define EVT_PROD_ETHDEV ("prod_type_ethdev") #define EVT_PROD_TIMERDEV ("prod_type_timerdev") +#define EVT_PROD_TIMERDEV_BURST ("prod_type_timerdev_burst") +#define EVT_NB_TIMERS ("nb_timers") +#define EVT_NB_TIMER_ADPTRS ("nb_timer_adptrs") +#define EVT_TIMER_TICK_NSEC ("timer_tick_nsec") +#define EVT_MAX_TMO_NSEC ("max_tmo_nsec") +#define EVT_EXPIRY_NSEC ("expiry_nsec") +#define EVT_MBUF_SZ ("mbuf_sz") +#define EVT_MAX_PKT_SZ ("max_pkt_sz") +#define EVT_PROD_ENQ_BURST_SZ ("prod_enq_burst_sz") +#define EVT_NB_ETH_QUEUES ("nb_eth_queues") +#define EVT_ENA_VECTOR ("enable_vector") +#define EVT_VECTOR_SZ ("vector_size") +#define EVT_VECTOR_TMO ("vector_tmo_ns") +#define EVT_PER_PORT_POOL ("per_port_pool") #define EVT_HELP ("help") -enum evt_prod_type { - EVT_PROD_TYPE_NONE, - EVT_PROD_TYPE_SYNT, /* Producer type Synthetic i.e. CPU. */ - EVT_PROD_TYPE_ETH_RX_ADPTR, /* Producer type Eth Rx Adapter. */ - EVT_PROD_TYPE_EVENT_TIMER_ADPTR, /* Producer type Timer Adapter. */ - EVT_PROD_TYPE_MAX, -}; - -struct evt_options { -#define EVT_TEST_NAME_MAX_LEN 32 - char test_name[EVT_TEST_NAME_MAX_LEN]; - bool plcores[RTE_MAX_LCORE]; - bool wlcores[RTE_MAX_LCORE]; - uint8_t sched_type_list[EVT_MAX_STAGES]; - uint32_t nb_flows; - int socket_id; - int pool_sz; - int nb_stages; - int verbose_level; - uint64_t nb_pkts; - uint8_t nb_timer_adptrs; - uint64_t nb_timers; - uint64_t timer_tick_nsec; - uint64_t optm_timer_tick_nsec; - uint64_t max_tmo_nsec; - uint64_t expiry_nsec; - uint16_t wkr_deq_dep; - uint8_t dev_id; - uint32_t fwd_latency:1; - uint32_t q_priority:1; - enum evt_prod_type prod_type; - uint8_t timdev_cnt; -}; - void evt_options_default(struct evt_options *opt); int evt_options_parse(struct evt_options *opt, int argc, char **argv); void evt_options_dump(struct evt_options *opt); @@ -257,6 +238,22 @@ evt_dump_sched_type_list(struct evt_options *opt) evt_dump_end; } +static inline const char * +evt_prod_id_to_name(enum evt_prod_type prod_type) +{ + switch (prod_type) { + default: + case EVT_PROD_TYPE_SYNT: + return "Synthetic producer lcores"; + case EVT_PROD_TYPE_ETH_RX_ADPTR: + return "Ethdev Rx Adapter"; + case EVT_PROD_TYPE_EVENT_TIMER_ADPTR: + return "Event timer adapter"; + } + + return ""; +} + #define EVT_PROD_MAX_NAME_LEN 50 static inline void evt_dump_producer_type(struct evt_options *opt) @@ -272,19 +269,23 @@ evt_dump_producer_type(struct evt_options *opt) case EVT_PROD_TYPE_ETH_RX_ADPTR: snprintf(name, EVT_PROD_MAX_NAME_LEN, "Ethdev Rx Adapter producers"); - evt_dump("nb_ethdev", "%d", rte_eth_dev_count()); + evt_dump("nb_ethdev", "%d", rte_eth_dev_count_avail()); break; case EVT_PROD_TYPE_EVENT_TIMER_ADPTR: - snprintf(name, EVT_PROD_MAX_NAME_LEN, + if (opt->timdev_use_burst) + snprintf(name, EVT_PROD_MAX_NAME_LEN, + "Event timer adapter burst mode producer"); + else + snprintf(name, EVT_PROD_MAX_NAME_LEN, "Event timer adapter producer"); evt_dump("nb_timer_adapters", "%d", opt->nb_timer_adptrs); evt_dump("max_tmo_nsec", "%"PRIu64"", opt->max_tmo_nsec); evt_dump("expiry_nsec", "%"PRIu64"", opt->expiry_nsec); if (opt->optm_timer_tick_nsec) - evt_dump("optm_timer_tick_ns", "%"PRIu64"", + evt_dump("optm_timer_tick_nsec", "%"PRIu64"", opt->optm_timer_tick_nsec); else - evt_dump("timer_tick_ns", "%"PRIu64"", + evt_dump("timer_tick_nsec", "%"PRIu64"", opt->timer_tick_nsec); break; }