app/crypto-perf: move verify as single test type
[dpdk.git] / doc / guides / tools / cryptoperf.rst
index 6832312..dbf5672 100644 (file)
@@ -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 <COREMASK>``
+*   ``-c <COREMASK>`` or ``-l <CORELIST>``
 
-        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 <PCI>``
 
@@ -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 <name>``
 
         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::