Skip to content

Added QAT v1.7 support#20

Merged
toddouska merged 7 commits intomasterfrom
qat2
Dec 26, 2018
Merged

Added QAT v1.7 support#20
toddouska merged 7 commits intomasterfrom
qat2

Conversation

@dgarske
Copy link
Copy Markdown
Member

@dgarske dgarske commented Nov 20, 2018

  • Added support for new usdm memory driver.
  • Added support for detecting QAT API version and features.
  • Added QAT_ENABLE_RNG option.
  • Added QAT RSA Key Generation support.
  • Added QAT SHA3 support.
  • Improvements to QAT hashing support.
  • Updates to README.md.

Intel QuickAssist 8950 (2.5-4x improvement)

Key Generation Benchmarks:

RSA   1024 key gen   SW 119.883 ops/sec
RSA   2048 key gen   SW 18.738 ops/sec
RSA   1024 key gen   HW 284.242 ops/sec
RSA   2048 key gen   HW 72.734 ops/sec

Intel QuickAssist 8970 (7.8-9x improvement)

Key Generation Benchmarks:

RSA   1024 key gen   SW 69.225 ops/sec
RSA   2048 key gen   SW 16.085 ops/sec
RSA   1024 key gen   HW 540.348 ops/sec
RSA   2048 key gen   HW 153.033 ops/sec

SHA-3 Benchmarks:

SHA3-256        SW   115 MB took 1.034 seconds,  111.256 MB/s Cycles per byte =  29.08
SHA3-256        SW   115 MB took 1.034 seconds,  111.251 MB/s Cycles per byte =  29.08
SHA3-256        SW   115 MB took 1.034 seconds,  111.191 MB/s Cycles per byte =  29.10
SHA3-256        SW   115 MB took 1.037 seconds,  110.850 MB/s Cycles per byte =  29.18
SHA3-256        SW   115 MB took 1.038 seconds,  110.822 MB/s Cycles per byte =  29.19
SHA3-256        SW   115 MB took 1.038 seconds,  110.802 MB/s Cycles per byte =  29.20
SHA3-256        SW   115 MB took 1.038 seconds,  110.795 MB/s Cycles per byte =  29.20
SHA3-256        SW   115 MB took 1.039 seconds,  110.666 MB/s Cycles per byte =  29.23
SHA3-256    SW  887.633 MB/s
SHA3-256        HW   315 MB took 1.002 seconds,  314.250 MB/s Cycles per byte =  10.29
SHA3-256        HW   315 MB took 1.004 seconds,  313.771 MB/s Cycles per byte =  10.31
SHA3-256        HW   310 MB took 1.004 seconds,  308.721 MB/s Cycles per byte =  10.48
SHA3-256        HW   320 MB took 1.005 seconds,  318.559 MB/s Cycles per byte =  10.16
SHA3-256        HW   340 MB took 1.005 seconds,  338.223 MB/s Cycles per byte =   9.57
SHA3-256        HW   335 MB took 1.006 seconds,  332.847 MB/s Cycles per byte =   9.72
SHA3-256        HW   320 MB took 1.007 seconds,  317.698 MB/s Cycles per byte =  10.18
SHA3-256        HW   315 MB took 1.008 seconds,  312.636 MB/s Cycles per byte =  10.35
SHA3-256    HW 2556.704 MB/s

@dgarske dgarske self-assigned this Nov 20, 2018
…ed support for detecting QAT version and features. Added `QAT_ENABLE_RNG` option. Updates to README.md.
… in software, then the calculation for key parameters uses QAT hardware.
…rdware. With `./configure --with-intelqa=../QAT1.7 --enable-asynccrypt --enable-intelasm --enable-intelrand --enable-keygen && make` the hardware performance is 2.5 - 4 times faster (on older 8950 QAT card) with QAT v1.7:

```
RSA   1024 key gen   SW 108.625 ops/sec
RSA   2048 key gen   SW 18.767 ops/sec
RSA   1024 key gen   HW 275.366 ops/sec
RSA   2048 key gen   HW 75.123 ops/sec
```
@dgarske dgarske assigned dgarske and unassigned toddouska Dec 12, 2018
…Implemented alternate hashing method to cache all updates. Fix for memory leak with RSA key generation.
@dgarske dgarske assigned toddouska and unassigned dgarske Dec 14, 2018
@toddouska toddouska merged commit 14eed40 into master Dec 26, 2018
@dgarske dgarske deleted the qat2 branch December 27, 2018 00:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants