examples/ip_pipeline: measure CPU utilization
[dpdk.git] / examples / ip_pipeline / app.h
index d8a1717..2c91256 100644 (file)
@@ -227,6 +227,7 @@ struct app_pipeline_params {
 struct app_pipeline_data {
        void *be;
        void *fe;
+       struct pipeline_type *ptype;
        uint64_t timer_period;
        uint32_t enabled;
 };
@@ -262,6 +263,10 @@ struct app_thread_data {
 
        struct rte_ring *msgq_in;
        struct rte_ring *msgq_out;
+
+       uint64_t headroom_time;
+       uint64_t headroom_cycles;
+       double headroom_ratio;
 };
 
 struct app_eal_params {
@@ -420,6 +425,10 @@ struct app_eal_params {
 #define APP_MAX_CMDS                             64
 #endif
 
+#ifndef APP_THREAD_HEADROOM_STATS_COLLECT
+#define APP_THREAD_HEADROOM_STATS_COLLECT        1
+#endif
+
 struct app_params {
        /* Config */
        char app_name[APP_APPNAME_SIZE];