Go to file
Dmitry Kozlyuk c62b318a9f app/test: add allocator performance benchmark
Memory allocator performance is crucial to applications that deal
with large amount of memory or allocate frequently. DPDK allocator
performance is affected by EAL options, API used and, at least,
allocation size. New autotest is intended to be run with different
EAL options. It measures performance with a range of sizes
for dirrerent APIs: rte_malloc, rte_zmalloc, and rte_memzone_reserve.

Work distribution between allocation and deallocation depends on EAL
options. The test prints both times and total time to ease comparison.

Memory can be filled with zeroes at different points of allocation path,
but it always takes considerable fraction of overall timing. This is why
the test measures filling speed and prints how long clearing takes
for each size as a reference (for rte_memzone_reserve estimations
are printed).

Signed-off-by: Dmitry Kozlyuk <dkozlyuk@nvidia.com>
Reviewed-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
Acked-by: Aaron Conole <aconole@redhat.com>
Acked-by: Anatoly Burakov <anatoly.burakov@intel.com>
2022-02-08 21:32:53 +01:00
.ci ci: test minimum configuration 2021-11-17 12:48:20 +01:00
.github/workflows version: 22.03-rc0 2021-12-02 21:36:19 +01:00
app app/test: add allocator performance benchmark 2022-02-08 21:32:53 +01:00
buildtools build: fix warnings when running external commands 2022-02-02 15:44:12 +01:00
config kni: allow configuring thread granularity 2022-02-02 20:45:18 +01:00
devtools devtools: fix comment detection in forbidden token check 2022-01-27 17:17:41 +01:00
doc doc: add hugepage mapping details 2022-02-08 21:04:42 +01:00
drivers net/dpaa2: remove useless C++ include guard 2022-02-08 17:13:24 +01:00
examples examples/ipsec-secgw: fix default flow rule creation 2022-01-21 10:17:35 +01:00
kernel kni: fix ioctl signature 2022-02-02 20:55:05 +01:00
lib eventdev: remove useless C++ include guard 2022-02-08 17:15:47 +01:00
license lib: remove librte_ prefix from directory names 2021-04-21 14:04:09 +02:00
usertools drivers: remove octeontx2 drivers 2022-01-12 15:36:32 +01:00
.editorconfig devtools: clarify that lines up to 100 characters are ok 2021-11-25 11:51:24 +01:00
.gitattributes
.gitignore doc: add eventdev feature matrices 2021-11-26 16:29:25 +01:00
.travis.yml version: 22.03-rc0 2021-12-02 21:36:19 +01:00
ABI_VERSION version: 22.03-rc0 2021-12-02 21:36:19 +01:00
MAINTAINERS app/test: add allocator performance benchmark 2022-02-08 21:32:53 +01:00
Makefile build: create dummy Makefile 2020-09-07 23:51:57 +02:00
meson_options.txt config: add option for atomic mbuf reference counting 2021-10-25 17:53:30 +02:00
meson.build build: remove deprecated Meson functions 2022-02-02 18:46:53 +01:00
README license: introduce SPDX identifiers 2018-01-04 22:41:38 +01:00
VERSION version: 22.03-rc0 2021-12-02 21:36:19 +01:00

DPDK is a set of libraries and drivers for fast packet processing.
It supports many processor architectures and both FreeBSD and Linux.

The DPDK uses the Open Source BSD-3-Clause license for the core libraries
and drivers. The kernel components are GPL-2.0 licensed.

Please check the doc directory for release notes,
API documentation, and sample application information.

For questions and usage discussions, subscribe to: users@dpdk.org
Report bugs and issues to the development mailing list: dev@dpdk.org