[dpdk-dev] [PATCH v5 1/3] librte_headroom: New library for checking core/system/app load
Thomas Monjalon
thomas.monjalon at 6wind.com
Tue Feb 24 02:55:36 CET 2015
2015-02-19 13:18, Pawel Wodkowski:
> This library provide API to measure time spend in particular parts of
> code and to calculate optimal polling time.
>
> To calculate a those statistics application code need to be divided into
> parts (called jobs) that do something. It is up to application to decide
> what is considered a job.
>
> Series of jobs must be surrounded with the rte_headroom_start_loop() and
> rte_headroom_finish_loop() calls. After that, jobs might be started.
> Each job must be surrounded with rte_headroom_start_job() and
> rte_headroom_finish_job() calls.
>
> After job finishes its execution, period in which it should be called
> again is adjusted to minimize time wasted on unnecessary polls/calls.
> Adjustment is based on data provided by job itself (ex: number of
> packets it processed).
>
> After all jobs in serie are executed fallowing statistics are updated
> and might be used by application. Statistics can be reset. Some of
> provided statistic data:
> - total/min/max execution - time spent in executing jobs.
> - total/min/max management - time spent outside execution area. This
> value might be used to measure overhead of scheduling jobs. This time
> also
> contains overhead of headroom library itself.
> - number of loops that executed at least one job
> - executed jobs
> - time when statistics were reset.
>
> Each job provide total/min/max execution time and execution count
> statistics.
>
> Signed-off-by: Pawel Wodkowski <pawelx.wodkowski at intel.com>
> ---
> config/common_bsdapp | 5 +
> config/common_linuxapp | 5 +
> lib/Makefile | 1 +
> lib/librte_headroom/Makefile | 54 +++++
> lib/librte_headroom/rte_headroom.c | 271 ++++++++++++++++++++++
> lib/librte_headroom/rte_headroom.h | 324 +++++++++++++++++++++++++++
> lib/librte_headroom/rte_headroom_version.map | 19 ++
Please add the library in doc/api/doxy-api.conf.
More information about the dev
mailing list