numam-dpdk/app/test-crypto-perf/configs/crypto-perf-aesni-mb.json
Ciara Power f400e0b82b app/crypto-perf: add script to graph perf results
The python script introduced in this patch runs the crypto performance
test application for various test cases, and graphs the results.

Test cases are defined in config JSON files, this is where parameters
are specified for each test. Currently there are various test cases for
devices crypto_qat, crypto_aesni_mb and crypto_gcm. Tests for the
ptest types Throughput and Latency are supported for each.

The results of each test case are graphed and saved in PDFs (one PDF for
each test suite graph type, with all test cases).
The graphs output include various grouped barcharts for throughput
tests, and histogram and boxplot graphs are used for latency tests.

Documentation is added to outline the configuration and usage for the
script.

Usage:
A JSON config file must be specified when running the script,
	"./dpdk-graph-crypto-perf <config_file>"

The script uses the installed app by default (from ninja install).
Alternatively we can pass path to app by
	"-f <rel_path>/<build_dir>/app/dpdk-test-crypto-perf"

All device test suites are run by default.
Alternatively we can specify by adding arguments,
	"-t latency" - to run latency test suite only
	"-t throughput latency"
		- to run both throughput and latency test suites

A directory can be specified for all output files,
or the script directory is used by default.
	"-o <output_dir>"

To see the output from the dpdk-test-crypto-perf app,
use the verbose option "-v".

Signed-off-by: Ciara Power <ciara.power@intel.com>
Acked-by: Declan Doherty <declan.doherty@intel.com>
Acked-by: Adam Dybkowski <adamx.dybkowski@intel.com>
2021-01-27 19:03:52 +01:00

109 lines
2.5 KiB
JSON

{
"throughput": {
"default": {
"eal": {
"l": "1,2",
"vdev": "crypto_aesni_mb"
},
"app": {
"csv-friendly": true,
"buffer-sz": "64,128,256,512,768,1024,1408,2048",
"burst-sz": "1,4,8,16,32",
"ptest": "throughput",
"devtype": "crypto_aesni_mb"
}
},
"AES-CBC-128 SHA1-HMAC auth-then-cipher decrypt": {
"cipher-algo": "aes-cbc",
"cipher-key-sz": "16",
"auth-algo": "sha1-hmac",
"optype": "auth-then-cipher",
"cipher-op": "decrypt"
},
"AES-CBC-128 SHA1-HMAC cipher-then-auth encrypt": {
"cipher-algo": "aes-cbc",
"cipher-key-sz": "16",
"auth-algo": "sha1-hmac",
"auth-op": "generate",
"auth-key-sz": "64",
"digest-sz": "20",
"optype": "cipher-then-auth",
"cipher-op": "encrypt"
},
"AES-CBC-256 SHA2-256-HMAC auth-then-cipher decrypt": {
"cipher-algo": "aes-cbc",
"cipher-key-sz": "32",
"auth-algo": "sha2-256-hmac",
"optype": "auth-then-cipher",
"cipher-op": "decrypt"
},
"AES-CBC-256 SHA2-256-HMAC cipher-then-auth encrypt": {
"cipher-algo": "aes-cbc",
"cipher-key-sz": "32",
"auth-algo": "sha2-256-hmac",
"optype": "cipher-then-auth"
},
"AES-GCM-128 aead-op encrypt": {
"aead-algo": "aes-gcm",
"aead-key-sz": "16",
"aead-iv-sz": "12",
"aead-op": "encrypt",
"aead-aad-sz": "16",
"digest-sz": "16",
"optype": "aead",
"total-ops": "10000000"
},
"AES-GCM-128 aead-op decrypt": {
"aead-algo": "aes-gcm",
"aead-key-sz": "16",
"aead-op": "decrypt"
},
"AES-GCM-256 aead-op encrypt": {
"aead-algo": "aes-gcm",
"aead-key-sz": "32",
"aead-op": "encrypt"
},
"AES-GCM-256 aead-op decrypt": {
"aead-algo": "aes-gcm",
"aead-key-sz": "32",
"aead-op": "decrypt"
},
"AES-GMAC 128 auth-only generate": {
"auth-algo": "aes-gmac",
"auth-key-sz": "16",
"auth-iv-sz": "12",
"auth-op": "generate",
"digest-sz": "16",
"optype": "auth-only",
"total-ops": "10000000"
}
},
"latency": {
"default": {
"eal": {
"l": "1,2",
"vdev": "crypto_aesni_mb"
},
"app": {
"csv-friendly": true,
"buffer-sz": "1024",
"burst-sz": "16",
"ptest": "latency",
"devtype": "crypto_aesni_mb"
}
},
"AES-CBC-128 SHA1-HMAC auth-then-cipher decrypt": {
"cipher-algo": "aes-cbc",
"cipher-key-sz": "16",
"auth-algo": "sha1-hmac",
"optype": "auth-then-cipher",
"cipher-op": "decrypt"
},
"AES-GCM-256 aead-op encrypt": {
"aead-algo": "aes-gcm",
"aead-key-sz": "32",
"aead-op": "encrypt"
}
}
}