X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Ftools%2Fcryptoperf.rst;h=dbf567270c8b3b420260c279e6d41c85eb24245b;hb=df52cb3b6e13;hp=6832312d6af5d7b615d41cb88c9be6f6a50e57ba;hpb=c6baca7adc94a204e4587761b3891916a4882fed;p=dpdk.git diff --git a/doc/guides/tools/cryptoperf.rst b/doc/guides/tools/cryptoperf.rst index 6832312d6a..dbf567270c 100644 --- a/doc/guides/tools/cryptoperf.rst +++ b/doc/guides/tools/cryptoperf.rst @@ -41,6 +41,21 @@ chain mode have to be specified in the command line as application parameters. These parameters are checked using device capabilities structure. +Limitations +----------- +On hardware devices the cycle-count doesn't always represent the actual offload +cost. The cycle-count only represents the offload cost when the hardware +accelerator is not fully loaded, when loaded the cpu cycles freed up by the +offload are still consumed by the test tool and included in the cycle-count. +These cycles are consumed by retries and inefficient API calls enqueuing and +dequeuing smaller bursts than specified by the cmdline parameter. This results +in a larger cycle-count measurement and should not be interpreted as an offload +cost measurement. + +On hardware devices the throughput measurement is not necessarily the maximum +possible for the device, e.g. it may be necessary to use multiple cores to keep +the hardware accelerator fully loaded and so measure maximum throughput. + Compiling the Application ------------------------- @@ -94,9 +109,10 @@ The following are the EAL command-line options that can be used in conjunction with the ``dpdk-test-crypto-perf`` applcation. See the DPDK Getting Started Guides for more information on these options. -* ``-c `` +* ``-c `` or ``-l `` - Set the hexadecimal bitmask of the cores to run on. + Set the hexadecimal bitmask of the cores to run on. The corelist is a + list cores to use. * ``-w `` @@ -117,6 +133,7 @@ The following are the appication command-line options: throughput latency + verify * ``--silent`` @@ -165,6 +182,8 @@ The following are the appication command-line options: auth-then-cipher aead + For GCM/CCM algorithms you should use aead flag. + * ``--sessionless`` Enable session-less crypto operations mode. @@ -173,11 +192,6 @@ The following are the appication command-line options: Enable out-of-place crypto operations mode. -* ``--verify`` - - Enable verify that all crypto operations were successful. - The verification is done after the performance test. - * ``--test-file `` Set test vector file path. See the Test Vector File chapter. @@ -335,7 +349,7 @@ Call application for performance throughput test of single Aesni MB PMD for cipher encryption aes-cbc and auth generation sha1-hmac, one milion operations, burst size 32, packet size 64:: - dpdk-test-crypto-perf -c 0xc0 --vdev crypto_aesni_mb_pmd -w 0000:00:00.0 -- + dpdk-test-crypto-perf -l 6-7 --vdev crypto_aesni_mb_pmd -w 0000:00:00.0 -- --ptest throughput --devtype crypto_aesni_mb --optype cipher-then-auth --cipher-algo aes-cbc --cipher-op encrypt --cipher-key-sz 16 --auth-algo sha1-hmac --auth-op generate --auth-key-sz 64 --auth-digest-sz 12 @@ -344,23 +358,23 @@ one milion operations, burst size 32, packet size 64:: Call application for performance latency test of two Aesni MB PMD executed on two cores for cipher encryption aes-cbc, ten operations in silent mode:: - dpdk-test-crypto-perf -c 0xf0 --vdev crypto_aesni_mb_pmd1 + dpdk-test-crypto-perf -l 4-7 --vdev crypto_aesni_mb_pmd1 --vdev crypto_aesni_mb_pmd2 -w 0000:00:00.0 -- --devtype crypto_aesni_mb --cipher-algo aes-cbc --cipher-key-sz 16 --cipher-iv-sz 16 --cipher-op encrypt --optype cipher-only --silent --ptest latency --total-ops 10 -Call application for performance latency test of single open ssl PMD +Call application for verification test of single open ssl PMD for cipher encryption aes-gcm and auth generation aes-gcm,ten operations in silent mode, test vector provide in file "test_aes_gcm.data" with packet verification:: - dpdk-test-crypto-perf -c 0xf0 --vdev crypto_openssl -w 0000:00:00.0 -- + dpdk-test-crypto-perf -l 4-7 --vdev crypto_openssl -w 0000:00:00.0 -- --devtype crypto_openssl --cipher-algo aes-gcm --cipher-key-sz 16 --cipher-iv-sz 16 --cipher-op encrypt --auth-algo aes-gcm --auth-key-sz 16 --auth-digest-sz 16 --auth-aad-sz 16 --auth-op generate --optype aead - --silent --ptest latency --total-ops 10 - --test-file test_aes_gcm.data --verify + --silent --ptest verify --total-ops 10 + --test-file test_aes_gcm.data Test vector file for cipher algorithm aes cbc 256 with authorization sha::