numam-dpdk/app/meson.build
Anoob Joseph 1f5cfe964e app/security-perf: add session performance test
Add performance application to test security session create & destroy
rates supported by the security enabled cryptodev PMD. The
application would create specified number of sessions and captures the
time taken for the same before proceeding to destroy of the same. When
operating on multi-core, the number of sessions would be evenly
distributed across all cores.

The application would test with all combinations of cipher & auth
algorithms supported by the PMD.

Signed-off-by: Aakash Sasidharan <asasidharan@marvell.com>
Signed-off-by: Anoob Joseph <anoobj@marvell.com>
2022-11-03 13:48:37 +01:00

110 lines
3.0 KiB
Meson

# SPDX-License-Identifier: BSD-3-Clause
# Copyright(c) 2017-2019 Intel Corporation
disable_apps = ',' + get_option('disable_apps')
disable_apps = run_command(list_dir_globs, disable_apps, check: true).stdout().split()
enable_apps = ',' + get_option('enable_apps')
enable_apps = run_command(list_dir_globs, enable_apps, check: true).stdout().split()
if enable_apps.length() == 0
enable_apps = run_command(list_dir_globs, '*', check: true).stdout().split()
endif
apps = [
'dumpcap',
'pdump',
'proc-info',
'test-acl',
'test-bbdev',
'test-cmdline',
'test-compress-perf',
'test-crypto-perf',
'test-eventdev',
'test-fib',
'test-flow-perf',
'test-gpudev',
'test-pipeline',
'test-pmd',
'test-regex',
'test-sad',
'test-security-perf',
]
default_cflags = machine_args + ['-DALLOW_EXPERIMENTAL_API']
default_ldflags = []
if get_option('default_library') == 'static' and not is_windows
default_ldflags += ['-Wl,--export-dynamic']
endif
enabled_apps = [] # used to print summary at the end
foreach app:apps
name = app
build = true
reason = '<unknown reason>' # set if build == false to explain
sources = []
includes = []
cflags = default_cflags
ldflags = default_ldflags
objs = [] # other object files to link against, used e.g. for
# instruction-set optimized versions of code
# use "deps" for internal DPDK dependencies, and "ext_deps" for
# external package/library requirements
ext_deps = []
deps = []
if not enable_apps.contains(app)
build = false
reason = 'not in enabled apps build config'
elif disable_apps.contains(app)
build = false
reason = 'explicitly disabled via build config'
endif
if build
subdir(name)
endif
if build
dep_objs = []
foreach d:deps
var_name = get_option('default_library') + '_rte_' + d
if not is_variable(var_name)
build = false
reason = 'missing internal dependency, "@0@"'.format(d)
message('Missing dependency "@0@" for app "@1@"'.format(d, name))
break
endif
dep_objs += [get_variable(var_name)]
endforeach
endif
if not build
if reason != ''
dpdk_apps_disabled += app
set_variable(app.underscorify() + '_disable_reason', reason)
endif
continue
endif
enabled_apps += app
link_libs = []
if get_option('default_library') == 'static'
link_libs = dpdk_static_libraries + dpdk_drivers
endif
executable('dpdk-' + name,
sources,
c_args: cflags,
link_args: ldflags,
link_whole: link_libs,
dependencies: ext_deps + dep_objs,
include_directories: includes,
install_rpath: join_paths(get_option('prefix'), driver_install_path),
install: true)
endforeach
# special case the autotests
subdir('test')