Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8337632

AES-GCM Algorithm optimization for x86_64

XMLWordPrintable

    • Icon: Enhancement Enhancement
    • Resolution: Fixed
    • Icon: P4 P4
    • 24
    • 24
    • hotspot
    • b18
    • x86

      I would like to submit AES-GCM optimization for x86_64 architectures using AVX512/VAES instructions. This optimization interleaves AES and GHASH operations. The optimization also brings the PARALLEL_LEN down from 7680 to 512.

      Performance numbers:

      Benchmark dataSize BaseJDK (ops/s) AES-GCM (ops/s) %gain
      full.AESGCMBench.decrypt 512 2928259.197 3269964.387 11.66922622
      full.AESGCMBench.decrypt 1024 2494254.611 3010987.731 20.71693554
      full.AESGCMBench.decrypt 1500 1883453.546 1934915.846 2.7323371
      full.AESGCMBench.decrypt 2048 1825780.711 2452861.368 34.34589122
      full.AESGCMBench.decrypt 4096 1275108.345 1806329.066 41.66083008
      full.AESGCMBench.decrypt 8192 1033936.634 1196836.052 15.75526126
      full.AESGCMBench.decrypt 16384 681494.768 711630.498 4.422004602
      full.AESGCMBench.decrypt 32768 385026.017 395043.193 2.601688083
      full.AESGCMBench.decrypt 65536 207373.924 214723.588 3.544160162

      full.AESGCMBench.encrypt 512 2658008.476 2882496.94 8.445739208
      full.AESGCMBench.encrypt 1024 2283709.63 2589534.403 13.39157873
      full.AESGCMBench.encrypt 1500 1794993.519 1817669.531 1.263292138
      full.AESGCMBench.encrypt 2048 1745532.435 2191097.29 25.52601407
      full.AESGCMBench.encrypt 4096 1203301.174 1649593.953 37.08903379
      full.AESGCMBench.encrypt 8192 985174.988 1132407.54 14.94481222
      full.AESGCMBench.encrypt 16384 658980.441 684765.771 3.912912796
      full.AESGCMBench.encrypt 32768 373543.798 391518.837 4.812029833
      full.AESGCMBench.encrypt 65536 202532.315 205084.833 1.260301597

            svkamath Smita Kamath (Inactive)
            svkamath Smita Kamath (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

              Created:
              Updated:
              Resolved: