xref: /freebsd/tools/tools/crypto/README (revision 05248206)
15df0c0eaSSam Leffler
25df0c0eaSSam LefflerThe cryptotest program repeatedly encrypts and decrypts a buffer
35df0c0eaSSam Lefflerwith the built-in iv and key, using hardware crypto.  At the end,
45df0c0eaSSam Lefflerit computes the data rate achieved.  Operations are carried out by
55df0c0eaSSam Lefflermaking ioctl calls to /dev/crypto.
65df0c0eaSSam Leffler
75df0c0eaSSam LefflerFor a test of how fast a crypto card is, use something like:
85df0c0eaSSam Leffler
95df0c0eaSSam Leffler	cryptotest -z 1024
105df0c0eaSSam Leffler
115df0c0eaSSam LefflerThis will run a series of tests using the available crypto/cipher
125df0c0eaSSam Leffleralgorithms over a variety of buffer sizes.  The 1024 says to do
135df0c0eaSSam Leffler1024 iterations.  Extra arguments can be used to specify one or
145df0c0eaSSam Lefflermore buffer sizes to use in doing tests.
155df0c0eaSSam Leffler
165df0c0eaSSam LefflerA sample run is:
175df0c0eaSSam Leffler
185df0c0eaSSam Leffler 0.129 sec,    2048    des crypts,       8 bytes,   127120 byte/sec,     1.0 Mb/sec
195df0c0eaSSam Leffler 0.129 sec,    2048    des crypts,      16 bytes,   253915 byte/sec,     1.9 Mb/sec
205df0c0eaSSam Leffler 0.129 sec,    2048    des crypts,      32 bytes,   508942 byte/sec,     3.9 Mb/sec
215df0c0eaSSam Leffler 0.128 sec,    2048    des crypts,      64 bytes,  1020135 byte/sec,     7.8 Mb/sec
225df0c0eaSSam Leffler 0.134 sec,    2048    des crypts,     128 bytes,  1954869 byte/sec,    14.9 Mb/sec
235df0c0eaSSam Leffler 0.142 sec,    2048    des crypts,     256 bytes,  3698107 byte/sec,    28.2 Mb/sec
245df0c0eaSSam Leffler 0.190 sec,    2048    des crypts,    1024 bytes, 11037700 byte/sec,    84.2 Mb/sec
255df0c0eaSSam Leffler 0.264 sec,    2048    des crypts,    2048 bytes, 15891127 byte/sec,   121.2 Mb/sec
265df0c0eaSSam Leffler 0.403 sec,    2048    des crypts,    4096 bytes, 20828998 byte/sec,   158.9 Mb/sec
275df0c0eaSSam Leffler 0.687 sec,    2048    des crypts,    8192 bytes, 24426602 byte/sec,   186.4 Mb/sec
285df0c0eaSSam Leffler 0.129 sec,    2048   3des crypts,       8 bytes,   127321 byte/sec,     1.0 Mb/sec
295df0c0eaSSam Leffler 0.131 sec,    2048   3des crypts,      16 bytes,   249773 byte/sec,     1.9 Mb/sec
305df0c0eaSSam Leffler 0.128 sec,    2048   3des crypts,      32 bytes,   512304 byte/sec,     3.9 Mb/sec
315df0c0eaSSam Leffler 0.128 sec,    2048   3des crypts,      64 bytes,  1021685 byte/sec,     7.8 Mb/sec
325df0c0eaSSam Leffler 0.132 sec,    2048   3des crypts,     128 bytes,  1986511 byte/sec,    15.2 Mb/sec
335df0c0eaSSam Leffler 0.142 sec,    2048   3des crypts,     256 bytes,  3695005 byte/sec,    28.2 Mb/sec
345df0c0eaSSam Leffler 0.190 sec,    2048   3des crypts,    1024 bytes, 11024876 byte/sec,    84.1 Mb/sec
355df0c0eaSSam Leffler 0.264 sec,    2048   3des crypts,    2048 bytes, 15887997 byte/sec,   121.2 Mb/sec
365df0c0eaSSam Leffler 0.402 sec,    2048   3des crypts,    4096 bytes, 20850846 byte/sec,   159.1 Mb/sec
375df0c0eaSSam Leffler 0.689 sec,    2048   3des crypts,    8192 bytes, 24333532 byte/sec,   185.7 Mb/sec
385df0c0eaSSam Leffler
395df0c0eaSSam LefflerExpect ~400 Mb/s for a Broadcom 582x for 16K buffers on a reasonable
405df0c0eaSSam LefflerCPU.  Hifn 7811 parts top out at ~120 Mb/s.  Performance depends
415df0c0eaSSam Lefflerheavily on memory and bus performance.
425df0c0eaSSam Leffler
435df0c0eaSSam LefflerThis code originally came from openbsd; give them all the credit.
44