Hi community, I would like to introduce library for measuring load of some arbitrary jobs. It can be used to profile every kind of job sets on any arbitrary execution unit or tasking library.
In provided l2fwd-headroom example I demonstrate how to use this library to select optimal rx burst poll time. Jobs are selected by using existing rte_timer library calls. This example does no limit possible schemes on which this library can be used. PATCH v2 changes: - Remove jobs management/callback from library to not duplicate tasking library behaviour. - Cleenup/remove useless statistics. - Rework example application to use rte_timer library for jobs selection. - Introduce new app parameter '-l' for automatic thousands separating in stats. - More readable statistics format. Pawel Wodkowski (2): librte_headroom: New library for checking core/system/app load examples: introduce new l2fwd-headroom example config/common_bsdapp | 5 + config/common_linuxapp | 5 + examples/Makefile | 1 + examples/l2fwd-headroom/Makefile | 51 ++ examples/l2fwd-headroom/main.c | 1039 ++++++++++++++++++++++++++ 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 | 20 + mk/rte.app.mk | 4 + 11 files changed, 1775 insertions(+) create mode 100644 examples/l2fwd-headroom/Makefile create mode 100644 examples/l2fwd-headroom/main.c create mode 100644 lib/librte_headroom/Makefile create mode 100644 lib/librte_headroom/rte_headroom.c create mode 100644 lib/librte_headroom/rte_headroom.h create mode 100644 lib/librte_headroom/rte_headroom_version.map -- 1.7.9.5