Anybody has any numbers on AMD hashing performance with Kopia?

I am usually running my servers on Intel CPUs, but I would like to know, if anyone here could share some numbers in regards to Kopia’s performance tests on AMD CPUs?

Well, I have rather positively ancient Amd fx 6300, so I bet numbers are rather meaningless today, but nevertheless…

Parallel 1

  1. BLAKE2B-256 625 MiB / second
  2. BLAKE2B-256-128 623 MiB / second
  3. BLAKE3-256 469.5 MiB / second
  4. BLAKE3-256-128 461.9 MiB / second
  5. BLAKE2S-256 349.1 MiB / second
  6. BLAKE2S-128 323.1 MiB / second
  7. HMAC-SHA3-224 251.3 MiB / second
  8. HMAC-SHA3-256 236.1 MiB / second
  9. HMAC-SHA256 186.9 MiB / second
  10. HMAC-SHA256-128 184.1 MiB / second
  11. HMAC-SHA224 180.2 MiB / second

Fastest option for this machine is: --block-hash=BLAKE2B-256

Parallel 2

  1. BLAKE2B-256-128 1.2 GiB / second
  2. BLAKE2B-256 1.1 GiB / second
  3. BLAKE3-256-128 896.8 MiB / second
  4. BLAKE3-256 864 MiB / second
  5. BLAKE2S-256 676.8 MiB / second
  6. BLAKE2S-128 673.3 MiB / second
  7. HMAC-SHA3-224 472.8 MiB / second
  8. HMAC-SHA3-256 425.9 MiB / second
  9. HMAC-SHA256 355.9 MiB / second
  10. HMAC-SHA256-128 349.4 MiB / second
  11. HMAC-SHA224 343.9 MiB / second

Fastest option for this machine is: --block-hash=BLAKE2B-256-128

Parrallel 3

  1. BLAKE2B-256-128 1.4 GiB / second
  2. BLAKE2B-256 1.4 GiB / second
  3. BLAKE3-256 1.2 GiB / second
  4. BLAKE3-256-128 1.2 GiB / second
  5. BLAKE2S-128 0.9 GiB / second
  6. BLAKE2S-256 0.9 GiB / second
  7. HMAC-SHA3-224 637.6 MiB / second
  8. HMAC-SHA3-256 579.2 MiB / second
  9. HMAC-SHA256 479.2 MiB / second
  10. HMAC-SHA256-128 466.2 MiB / second
  11. HMAC-SHA224 457.3 MiB / second

Fastest option for this machine is: --block-hash=BLAKE2B-256-128

Parrallel 4

  1. BLAKE2B-256-128 1.8 GiB / second
  2. BLAKE2B-256 1.6 GiB / second
  3. BLAKE3-256-128 1.5 GiB / second
  4. BLAKE3-256 1.5 GiB / second
  5. BLAKE2S-128 1.2 GiB / second
  6. BLAKE2S-256 1.2 GiB / second
  7. HMAC-SHA3-224 767 MiB / second
  8. HMAC-SHA3-256 720.1 MiB / second
  9. HMAC-SHA256 567.8 MiB / second
  10. HMAC-SHA224 567.8 MiB / second
  11. HMAC-SHA256-128 559.8 MiB / second

Fastest option for this machine is: --block-hash=BLAKE2B-256-128

Parrallel 8

  1. BLAKE2B-256-128 2.1 GiB / second
  2. BLAKE2B-256 2.1 GiB / second
  3. BLAKE3-256-128 2 GiB / second
  4. BLAKE3-256 1.9 GiB / second
  5. BLAKE2S-256 1.6 GiB / second
  6. BLAKE2S-128 1.6 GiB / second
  7. HMAC-SHA3-224 0.9 GiB / second
  8. HMAC-SHA3-256 896 MiB / second
  9. HMAC-SHA256-128 714.1 MiB / second
  10. HMAC-SHA256 710.6 MiB / second
  11. HMAC-SHA224 704.3 MiB / second

Fastest option for this machine is: --block-hash=BLAKE2B-256-128

Parrallel 12

  1. BLAKE2B-256 2.1 GiB / second
  2. BLAKE3-256-128 2 GiB / second
  3. BLAKE3-256 2 GiB / second
  4. BLAKE2B-256-128 1.9 GiB / second
  5. BLAKE2S-256 1.6 GiB / second
  6. BLAKE2S-128 1.6 GiB / second
  7. HMAC-SHA3-224 0.9 GiB / second
  8. HMAC-SHA3-256 918.6 MiB / second
  9. HMAC-SHA256 723.1 MiB / second
  10. HMAC-SHA224 718.7 MiB / second
  11. HMAC-SHA256-128 694.2 MiB / second

Fastest option for this machine is: --block-hash=BLAKE2B-256

Oh yeah… this is even lower than my, also rather old, Intel Xeon D-1518. I wonder, how current Ryzens would fare… Well…Athlon… that jogs some memories from the past… Thanks for sharing!

I don’t have quite the “latest” Ryzen, but I have the first gen Ryzen (1700). If you are curious, here are some numbers:

kopia benchmark splitter

  0. FIXED-8M                  311.6 TB/s   count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
  1. FIXED-4M                  220.5 TB/s   count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  2. FIXED-2M                  130.4 TB/s   count:256 min:2097152 10th:2097152 25th:2097152 50th:2097152 75th:2097152 90th:2097152 max:2097152
  3. FIXED-1M                  95.3 TB/s    count:512 min:1048576 10th:1048576 25th:1048576 50th:1048576 75th:1048576 90th:1048576 max:1048576
  4. FIXED                     62.3 TB/s    count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  5. DYNAMIC                   366.8 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  6. DYNAMIC-4M-BUZHASH        360.2 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  7. DYNAMIC-8M-BUZHASH        333.4 MB/s   count:49 min:677680 10th:5260579 25th:6528562 50th:11102775 75th:16777216 90th:16777216 max:16777216
  8. DYNAMIC-1M-BUZHASH        328.1 MB/s   count:428 min:9467 10th:612999 25th:766808 50th:1158068 75th:1744194 90th:2097152 max:2097152
  9. DYNAMIC-2M-BUZHASH        312.9 MB/s   count:204 min:64697 10th:1210184 25th:1638276 50th:2585985 75th:3944217 90th:4194304 max:4194304
 10. DYNAMIC-4M-RABINKARP      113.7 MB/s   count:110 min:535925 10th:2242307 25th:2767610 50th:4400962 75th:6813401 90th:8388608 max:8388608
 11. DYNAMIC-2M-RABINKARP      109.8 MB/s   count:204 min:535925 10th:1235674 25th:1675441 50th:2525341 75th:3658905 90th:4194304 max:4194304
 12. DYNAMIC-1M-RABINKARP      106.9 MB/s   count:391 min:213638 10th:623062 25th:813953 50th:1328673 75th:2097152 90th:2097152 max:2097152
 13. DYNAMIC-8M-RABINKARP      105.1 MB/s   count:60 min:1446246 10th:4337385 25th:5293196 50th:8419217 75th:12334953 90th:16777216 max:16777216
kopia benchmark crypto

       Encryption                     Throughput
-----------------------------------------------------------------
  0. AES256-GCM-HMAC-SHA256         1.3 GiB / second
  1. CHACHA20-POLY1305-HMAC-SHA256  1 GiB / second
-----------------------------------------------------------------
kopia benchmark hashing

     Hash                 Throughput
-----------------------------------------------------------------
  0. BLAKE3-256           2 GiB / second
  1. BLAKE3-256-128       1.9 GiB / second
  2. BLAKE2B-256-128      1 GiB / second
  3. BLAKE2B-256          902.8 MiB / second
  4. BLAKE2S-256          639.5 MiB / second
  5. BLAKE2S-128          635 MiB / second
  6. HMAC-SHA224          405.2 MiB / second
  7. HMAC-SHA256          404.5 MiB / second
  8. HMAC-SHA256-128      397.7 MiB / second
  9. HMAC-SHA3-224        312.1 MiB / second
 10. HMAC-SHA3-256        297.4 MiB / second
-----------------------------------------------------------------
Fastest option for this machine is: --block-hash=BLAKE3-256
kopia benchmark crypto

     Hash                 Encryption                     Throughput
-----------------------------------------------------------------
  0. BLAKE3-256-128       AES256-GCM-HMAC-SHA256         1 GiB / second
  1. BLAKE3-256           AES256-GCM-HMAC-SHA256         1 GiB / second
  2. BLAKE2B-256-128      AES256-GCM-HMAC-SHA256         700.1 MiB / second
  3. BLAKE3-256-128       CHACHA20-POLY1305-HMAC-SHA256  698.4 MiB / second
  4. BLAKE3-256           CHACHA20-POLY1305-HMAC-SHA256  684.8 MiB / second
  5. BLAKE2B-256-128      CHACHA20-POLY1305-HMAC-SHA256  553.3 MiB / second
  6. BLAKE2B-256          CHACHA20-POLY1305-HMAC-SHA256  530 MiB / second
  7. BLAKE2S-128          AES256-GCM-HMAC-SHA256         500.6 MiB / second
  8. BLAKE2S-256          AES256-GCM-HMAC-SHA256         495.5 MiB / second
  9. BLAKE2S-128          CHACHA20-POLY1305-HMAC-SHA256  420.8 MiB / second
 10. BLAKE2S-256          CHACHA20-POLY1305-HMAC-SHA256  369.4 MiB / second
 11. BLAKE2B-256          AES256-GCM-HMAC-SHA256         353.1 MiB / second
 12. HMAC-SHA256          AES256-GCM-HMAC-SHA256         341.9 MiB / second
 13. HMAC-SHA256-128      AES256-GCM-HMAC-SHA256         319.8 MiB / second
 14. HMAC-SHA224          AES256-GCM-HMAC-SHA256         306.5 MiB / second
 15. HMAC-SHA3-224        AES256-GCM-HMAC-SHA256         299.9 MiB / second
 16. HMAC-SHA224          CHACHA20-POLY1305-HMAC-SHA256  293.9 MiB / second
 17. HMAC-SHA256          CHACHA20-POLY1305-HMAC-SHA256  277.7 MiB / second
 18. HMAC-SHA256-128      CHACHA20-POLY1305-HMAC-SHA256  276.5 MiB / second
 19. HMAC-SHA3-256        AES256-GCM-HMAC-SHA256         261.7 MiB / second
 20. HMAC-SHA3-224        CHACHA20-POLY1305-HMAC-SHA256  244.5 MiB / second
 21. HMAC-SHA3-256        CHACHA20-POLY1305-HMAC-SHA256  239.4 MiB / second
-----------------------------------------------------------------
Fastest option for this machine is: --block-hash=BLAKE3-256-128 --encryption=AES256-GCM-HMAC-SHA256
kopia benchmark compression --data-file=./linux-6.0.9.tar                                                                                                                                                                                                     
NOTICE: The provided input file is too big, using first 128 MiB.

     Compression                Compressed   Throughput   Allocs   Usage
------------------------------------------------------------------------------------------------
  0. s2-default                 36.7 MiB     2.3 GiB/s    1166     129.2 MiB
  1. s2-better                  32.1 MiB     1.7 GiB/s    1129     116.5 MiB
  2. s2-parallel-8              36.7 MiB     1.5 GiB/s    1037     107 MiB
  3. s2-parallel-4              36.7 MiB     1.4 GiB/s    993      94.9 MiB
  4. pgzip-best-speed           31 MiB       1.3 GiB/s    1462     192 MiB
  5. pgzip                      26.4 MiB     655.7 MiB/s  1530     133.4 MiB
  6. deflate-best-speed         31 MiB       169.7 MiB/s  37       78.3 MiB
  7. pgzip-best-compression     24.8 MiB     166.2 MiB/s  1635     133.3 MiB
  8. zstd                       23.9 MiB     162.4 MiB/s  3264     94.2 MiB
  9. zstd-fastest               26.2 MiB     159.8 MiB/s  6251     94.3 MiB
 10. gzip-best-speed            31.5 MiB     122.1 MiB/s  44       77.2 MiB
 11. deflate-default            26.3 MiB     100.2 MiB/s  37       78.5 MiB
 12. zstd-better-compression    21.6 MiB     72 MiB/s     3160     112.2 MiB
 13. gzip                       25.2 MiB     38.4 MiB/s   41       76.8 MiB
 14. gzip-best-compression      24.9 MiB     20.3 MiB/s   41       76.8 MiB
 15. deflate-best-compression   24.8 MiB     18.3 MiB/s   38       78.6 MiB

Thanks - that helps quite a bit as I am about to purchase a new storage server and I was wondering how AMD would fare against Intel in regards to Kopia.

Ryzen 5 3600:

# kopia benchmark splitter --parallel=1
  0. FIXED-8M                  0 B/s        count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
  1. FIXED-4M                  0 B/s        count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  2. FIXED-2M                  0 B/s        count:256 min:2097152 10th:2097152 25th:2097152 50th:2097152 75th:2097152 90th:2097152 max:2097152
  3. FIXED-1M                  0 B/s        count:512 min:1048576 10th:1048576 25th:1048576 50th:1048576 75th:1048576 90th:1048576 max:1048576
  4. FIXED                     0 B/s        count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  5. DYNAMIC                   540.3 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  6. DYNAMIC-4M-BUZHASH        539.7 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  7. DYNAMIC-1M-BUZHASH        531.7 MB/s   count:428 min:9467 10th:612999 25th:766808 50th:1158068 75th:1744194 90th:2097152 max:2097152
  8. DYNAMIC-2M-BUZHASH        527.9 MB/s   count:204 min:64697 10th:1210184 25th:1638276 50th:2585985 75th:3944217 90th:4194304 max:4194304
  9. DYNAMIC-8M-BUZHASH        503.3 MB/s   count:49 min:677680 10th:5260579 25th:6528562 50th:11102775 75th:16777216 90th:16777216 max:16777216
 10. DYNAMIC-8M-RABINKARP      134.1 MB/s   count:60 min:1446246 10th:4337385 25th:5293196 50th:8419217 75th:12334953 90th:16777216 max:16777216
 11. DYNAMIC-4M-RABINKARP      131.7 MB/s   count:110 min:535925 10th:2242307 25th:2767610 50th:4400962 75th:6813401 90th:8388608 max:8388608
 12. DYNAMIC-2M-RABINKARP      130 MB/s     count:204 min:535925 10th:1235674 25th:1675441 50th:2525341 75th:3658905 90th:4194304 max:4194304
 13. DYNAMIC-1M-RABINKARP      128.1 MB/s   count:391 min:213638 10th:623062 25th:813953 50th:1328673 75th:2097152 90th:2097152 max:2097152

# kopia benchmark hashing --parallel=1
     Hash                 Throughput
-----------------------------------------------------------------
  0. BLAKE3-256-128       4.1 GiB / second
  1. BLAKE3-256           3.9 GiB / second
  2. BLAKE2B-256-128      1 GiB / second
  3. BLAKE2B-256          1 GiB / second
  4. BLAKE2S-256          740.6 MiB / second
  5. BLAKE2S-128          740.6 MiB / second
  6. HMAC-SHA256          488.9 MiB / second
  7. HMAC-SHA256-128      485.3 MiB / second
  8. HMAC-SHA224          485.3 MiB / second
  9. HMAC-SHA3-224        414.8 MiB / second
 10. HMAC-SHA3-256        393.6 MiB / second

# kopia benchmark crypto --parallel=1
     Hash                 Throughput
-----------------------------------------------------------------
  0. BLAKE3-256           AES256-GCM-HMAC-SHA256         1.5 GiB / second
  1. BLAKE3-256-128       AES256-GCM-HMAC-SHA256         1.5 GiB / second
  2. BLAKE3-256-128       CHACHA20-POLY1305-HMAC-SHA256  1.3 GiB / second
  3. BLAKE3-256           CHACHA20-POLY1305-HMAC-SHA256  1.3 GiB / second
  4. BLAKE2B-256-128      AES256-GCM-HMAC-SHA256         751.7 MiB / second
  5. BLAKE2B-256          CHACHA20-POLY1305-HMAC-SHA256  689.5 MiB / second
  6. BLAKE2B-256-128      CHACHA20-POLY1305-HMAC-SHA256  684.8 MiB / second
  7. BLAKE2B-256          AES256-GCM-HMAC-SHA256         627.7 MiB / second
  8. BLAKE2S-128          AES256-GCM-HMAC-SHA256         577.9 MiB / second
  9. BLAKE2S-256          AES256-GCM-HMAC-SHA256         574.6 MiB / second
 10. BLAKE2S-128          CHACHA20-POLY1305-HMAC-SHA256  541.9 MiB / second
 11. BLAKE2S-256          CHACHA20-POLY1305-HMAC-SHA256  540.4 MiB / second
 12. HMAC-SHA256          AES256-GCM-HMAC-SHA256         408.1 MiB / second
 13. HMAC-SHA224          AES256-GCM-HMAC-SHA256         408.1 MiB / second
 14. HMAC-SHA256-128      AES256-GCM-HMAC-SHA256         408.1 MiB / second
 15. HMAC-SHA256-128      CHACHA20-POLY1305-HMAC-SHA256  389.8 MiB / second
 16. HMAC-SHA224          CHACHA20-POLY1305-HMAC-SHA256  389.8 MiB / second
 17. HMAC-SHA256          CHACHA20-POLY1305-HMAC-SHA256  389 MiB / second
 18. HMAC-SHA3-224        AES256-GCM-HMAC-SHA256         358.3 MiB / second
 19. HMAC-SHA3-224        CHACHA20-POLY1305-HMAC-SHA256  343.6 MiB / second
 20. HMAC-SHA3-256        AES256-GCM-HMAC-SHA256         341.8 MiB / second
 21. HMAC-SHA3-256        CHACHA20-POLY1305-HMAC-SHA256  327.8 MiB / second

Ryzen 5 5600G:

# kopia benchmark splitter --parallel=1
0. FIXED-2M                  126 TB/s     count:256 min:2097152 10th:2097152 25th:2097152 50th:2097152 75th:2097152 90th:2097152 max:2097152
  1. FIXED-4M                  122 TB/s     count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  2. FIXED                     70.5 TB/s    count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  3. FIXED-8M                  56.9 TB/s    count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
  4. FIXED-1M                  57.4 TB/s    count:512 min:1048576 10th:1048576 25th:1048576 50th:1048576 75th:1048576 90th:1048576 max:1048576
  5. DYNAMIC-1M-BUZHASH        393.4 MB/s   count:428 min:9467 10th:612999 25th:766808 50th:1158068 75th:1744194 90th:2097152 max:2097152
  6. DYNAMIC                   384.8 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  7. DYNAMIC-4M-BUZHASH        376.3 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  8. DYNAMIC-2M-BUZHASH        368.7 MB/s   count:204 min:64697 10th:1210184 25th:1638276 50th:2585985 75th:3944217 90th:4194304 max:4194304
  9. DYNAMIC-8M-BUZHASH        357.2 MB/s   count:49 min:677680 10th:5260579 25th:6528562 50th:11102775 75th:16777216 90th:16777216 max:16777216
 10. DYNAMIC-8M-RABINKARP      166.9 MB/s   count:60 min:1446246 10th:4337385 25th:5293196 50th:8419217 75th:12334953 90th:16777216 max:16777216
 11. DYNAMIC-4M-RABINKARP      165.8 MB/s   count:110 min:535925 10th:2242307 25th:2767610 50th:4400962 75th:6813401 90th:8388608 max:8388608
 12. DYNAMIC-2M-RABINKARP      163.1 MB/s   count:204 min:535925 10th:1235674 25th:1675441 50th:2525341 75th:3658905 90th:4194304 max:4194304
 13. DYNAMIC-1M-RABINKARP      161.3 MB/s   count:391 min:213638 10th:623062 25th:813953 50th:1328673 75th:2097152 90th:2097152 max:2097152
 
# kopia benchmark hashing --parallel=1
     Hash                 Throughput
-----------------------------------------------------------------
  0. BLAKE3-256           4.2 GiB / second
  1. BLAKE3-256-128       4.2 GiB / second
  2. BLAKE2B-256-128      1 GiB / second
  3. BLAKE2B-256          1 GiB / second
  4. BLAKE2S-128          796.4 MiB / second
  5. BLAKE2S-256          796.4 MiB / second
  6. HMAC-SHA256          578.3 MiB / second
  7. HMAC-SHA256-128      576.2 MiB / second
  8. HMAC-SHA224          575.2 MiB / second
  9. HMAC-SHA3-224        472.6 MiB / second
 10. HMAC-SHA3-256        447 MiB / second
 
 
 # kopia benchmark crypto --parallel=1
     Hash                 Encryption                     Throughput
-----------------------------------------------------------------
  0. BLAKE3-256           AES256-GCM-HMAC-SHA256         1.7 GiB / second
  1. BLAKE3-256-128       AES256-GCM-HMAC-SHA256         1.7 GiB / second
  2. BLAKE3-256-128       CHACHA20-POLY1305-HMAC-SHA256  1.5 GiB / second
  3. BLAKE3-256           CHACHA20-POLY1305-HMAC-SHA256  1.5 GiB / second
  4. BLAKE2B-256-128      AES256-GCM-HMAC-SHA256         792.6 MiB / second
  5. BLAKE2B-256-128      CHACHA20-POLY1305-HMAC-SHA256  743.9 MiB / second
  6. BLAKE2B-256          CHACHA20-POLY1305-HMAC-SHA256  738.8 MiB / second
  7. BLAKE2S-128          AES256-GCM-HMAC-SHA256         636.3 MiB / second
  8. BLAKE2S-256          AES256-GCM-HMAC-SHA256         634.4 MiB / second
  9. BLAKE2S-128          CHACHA20-POLY1305-HMAC-SHA256  602.8 MiB / second
 10. BLAKE2S-256          CHACHA20-POLY1305-HMAC-SHA256  573.3 MiB / second
 11. BLAKE2B-256          AES256-GCM-HMAC-SHA256         491 MiB / second
 12. HMAC-SHA256          AES256-GCM-HMAC-SHA256         481.5 MiB / second
 13. HMAC-SHA224          AES256-GCM-HMAC-SHA256         481.1 MiB / second
 14. HMAC-SHA256-128      AES256-GCM-HMAC-SHA256         481 MiB / second
 15. HMAC-SHA224          CHACHA20-POLY1305-HMAC-SHA256  463.1 MiB / second
 16. HMAC-SHA256          CHACHA20-POLY1305-HMAC-SHA256  462.7 MiB / second
 17. HMAC-SHA256-128      CHACHA20-POLY1305-HMAC-SHA256  462.6 MiB / second
 18. HMAC-SHA3-224        AES256-GCM-HMAC-SHA256         404.6 MiB / second
 19. HMAC-SHA3-224        CHACHA20-POLY1305-HMAC-SHA256  392 MiB / second
 20. HMAC-SHA3-256        AES256-GCM-HMAC-SHA256         382.8 MiB / second
 21. HMAC-SHA3-256        CHACHA20-POLY1305-HMAC-SHA256  372 MiB / second

AMD Ryzen 7 3700X

 Hash                 Throughput

  1. BLAKE3-256 4.2 GiB / second
  2. BLAKE3-256-128 4.1 GiB / second
  3. BLAKE2B-256-128 1.1 GiB / second
  4. BLAKE2B-256 837.2 MiB / second
  5. BLAKE2S-128 766.7 MiB / second
  6. BLAKE2S-256 765.2 MiB / second
  7. HMAC-SHA256 498.1 MiB / second
  8. HMAC-SHA224 496.7 MiB / second
  9. HMAC-SHA256-128 496.6 MiB / second
  10. HMAC-SHA3-224 427.3 MiB / second
  11. HMAC-SHA3-256 403.7 MiB / second

Fastest option for this machine is: --block-hash=BLAKE3-256

  1. FIXED-8M 313.4 TB/s count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
  2. FIXED-4M 223.2 TB/s count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  3. FIXED-2M 150.5 TB/s count:256 min:2097152 10th:2097152 25th:2097152 50th:2097152 75th:2097152 90th:2097152 max:2097152
  4. FIXED 104.4 TB/s count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  5. FIXED-1M 35.8 TB/s count:512 min:1048576 10th:1048576 25th:1048576 50th:1048576 75th:1048576 90th:1048576 max:1048576
  6. DYNAMIC-4M-BUZHASH 552.6 MB/s count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  7. DYNAMIC-1M-BUZHASH 550.8 MB/s count:428 min:9467 10th:612999 25th:766808 50th:1158068 75th:1744194 90th:2097152 max:2097152
  8. DYNAMIC-2M-BUZHASH 542.4 MB/s count:204 min:64697 10th:1210184 25th:1638276 50th:2585985 75th:3944217 90th:4194304 max:4194304
  9. DYNAMIC 538.7 MB/s count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  10. DYNAMIC-8M-BUZHASH 536.5 MB/s count:49 min:677680 10th:5260579 25th:6528562 50th:11102775 75th:16777216 90th:16777216 max:16777216
  11. DYNAMIC-8M-RABINKARP 141.7 MB/s count:60 min:1446246 10th:4337385 25th:5293196 50th:8419217 75th:12334953 90th:16777216 max:16777216
  12. DYNAMIC-4M-RABINKARP 138.8 MB/s count:110 min:535925 10th:2242307 25th:2767610 50th:4400962 75th:6813401 90th:8388608 max:8388608
  13. DYNAMIC-2M-RABINKARP 136.1 MB/s count:204 min:535925 10th:1235674 25th:1675441 50th:2525341 75th:3658905 90th:4194304 max:4194304
  14. DYNAMIC-1M-RABINKARP 135.3 MB/s count:391 min:213638 10th:623062 25th:813953 50th:1328673 75th:2097152 90th:2097152 max:2097152

AMD Ryzen 7 3800X @ 3.9GHz

kopia benchmark splitter
splitting 16 blocks of 32MiB each, parallelism 1

  0. FIXED-8M                  0 B/s        count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
  1. FIXED-4M                  0 B/s        count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  2. FIXED-2M                  0 B/s        count:256 min:2097152 10th:2097152 25th:2097152 50th:2097152 75th:2097152 90th:2097152 max:2097152
  3. FIXED-1M                  0 B/s        count:512 min:1048576 10th:1048576 25th:1048576 50th:1048576 75th:1048576 90th:1048576 max:1048576
  4. FIXED                     0 B/s        count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  5. DYNAMIC-4M-BUZHASH        544.1 MB/s   count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  6. DYNAMIC-1M-BUZHASH        531.7 MB/s   count:428 min:9467 10th:612999 25th:766808 50th:1158068 75th:1744194 90th:2097152 max:2097152
  7. DYNAMIC                   504 MB/s     count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  8. DYNAMIC-2M-BUZHASH        502.8 MB/s   count:204 min:64697 10th:1210184 25th:1638276 50th:2585985 75th:3944217 90th:4194304 max:4194304
  9. DYNAMIC-8M-BUZHASH        500 MB/s     count:49 min:677680 10th:5260579 25th:6528562 50th:11102775 75th:16777216 90th:16777216 max:16777216
 10. DYNAMIC-2M-RABINKARP      130.3 MB/s   count:204 min:535925 10th:1235674 25th:1675441 50th:2525341 75th:3658905 90th:4194304 max:4194304
 11. DYNAMIC-8M-RABINKARP      129.6 MB/s   count:60 min:1446246 10th:4337385 25th:5293196 50th:8419217 75th:12334953 90th:16777216 max:16777216
 12. DYNAMIC-4M-RABINKARP      129.3 MB/s   count:110 min:535925 10th:2242307 25th:2767610 50th:4400962 75th:6813401 90th:8388608 max:8388608
 13. DYNAMIC-1M-RABINKARP      129 MB/s     count:391 min:213638 10th:623062 25th:813953 50th:1328673 75th:2097152 90th:2097152 max:2097152
kopia benchmark crypto

     Hash                 Encryption                     Throughput
-----------------------------------------------------------------
  0. BLAKE3-256-128       AES256-GCM-HMAC-SHA256         1.5 GiB / second
  1. BLAKE3-256           AES256-GCM-HMAC-SHA256         1.5 GiB / second
  2. BLAKE3-256-128       CHACHA20-POLY1305-HMAC-SHA256  1.3 GiB / second
  3. BLAKE3-256           CHACHA20-POLY1305-HMAC-SHA256  1.3 GiB / second
  4. BLAKE2B-256-128      AES256-GCM-HMAC-SHA256         751.7 MiB / second
  5. BLAKE2B-256          CHACHA20-POLY1305-HMAC-SHA256  691.9 MiB / second
  6. BLAKE2B-256-128      CHACHA20-POLY1305-HMAC-SHA256  689.5 MiB / second
  7. BLAKE2B-256          AES256-GCM-HMAC-SHA256         604.1 MiB / second
  8. BLAKE2S-256          AES256-GCM-HMAC-SHA256         583 MiB / second
  9. BLAKE2S-128          AES256-GCM-HMAC-SHA256         581.3 MiB / second
 10. BLAKE2S-256          CHACHA20-POLY1305-HMAC-SHA256  540.4 MiB / second
 11. BLAKE2S-128          CHACHA20-POLY1305-HMAC-SHA256  539 MiB / second
 12. HMAC-SHA224          AES256-GCM-HMAC-SHA256         410.6 MiB / second
 13. HMAC-SHA256-128      AES256-GCM-HMAC-SHA256         410.6 MiB / second
 14. HMAC-SHA256          AES256-GCM-HMAC-SHA256         403.2 MiB / second
 15. HMAC-SHA256-128      CHACHA20-POLY1305-HMAC-SHA256  392.1 MiB / second
 16. HMAC-SHA256          CHACHA20-POLY1305-HMAC-SHA256  389.8 MiB / second
 17. HMAC-SHA224          CHACHA20-POLY1305-HMAC-SHA256  383.1 MiB / second
 18. HMAC-SHA3-224        AES256-GCM-HMAC-SHA256         355.2 MiB / second
 19. HMAC-SHA3-224        CHACHA20-POLY1305-HMAC-SHA256  340.1 MiB / second
 20. HMAC-SHA3-256        AES256-GCM-HMAC-SHA256         336.6 MiB / second
 21. HMAC-SHA3-256        CHACHA20-POLY1305-HMAC-SHA256  329.4 MiB / second
-----------------------------------------------------------------
Fastest option for this machine is: --block-hash=BLAKE3-256-128 --encryption=AES256-GCM-HMAC-SHA256
kopia benchmark hashing

     Hash                 Throughput
-----------------------------------------------------------------
  0. BLAKE3-256-128       4.1 GiB / second
  1. BLAKE3-256           4 GiB / second
  2. BLAKE2B-256          1 GiB / second
  3. BLAKE2B-256-128      1 GiB / second
  4. BLAKE2S-128          763.2 MiB / second
  5. BLAKE2S-256          760.3 MiB / second
  6. HMAC-SHA256          496.2 MiB / second
  7. HMAC-SHA256-128      493.7 MiB / second
  8. HMAC-SHA224          484.2 MiB / second
  9. HMAC-SHA3-224        400.7 MiB / second
 10. HMAC-SHA3-256        367.6 MiB / second
-----------------------------------------------------------------
Fastest option for this machine is: --block-hash=BLAKE3-256-128
kopia benchmark compression

     Compression                Compressed   Throughput   Allocs   Usage
------------------------------------------------------------------------------------------------
  0. pgzip-best-speed           115.7 MiB    1.4 GiB/s    1506     437.4 MiB
  1. s2-parallel-8              116.7 MiB    1.2 GiB/s    1147     466 MiB
  2. pgzip                      115.2 MiB    1.1 GiB/s    1492     414 MiB
  3. s2-parallel-4              116.7 MiB    1.1 GiB/s    1035     452.9 MiB
  4. s2-default                 116.7 MiB    1 GiB/s      1141     479.1 MiB
  5. s2-better                  116 MiB      1 GiB/s      1130     444 MiB
  6. deflate-best-speed         115.7 MiB    914.1 MiB/s  42       338.2 MiB
  7. zstd-fastest               115.2 MiB    792.4 MiB/s  6293     359.6 MiB
  8. deflate-default            115.2 MiB    654.6 MiB/s  46       330.5 MiB
  9. zstd                       114.5 MiB    627.3 MiB/s  3210     466.3 MiB
 10. pgzip-best-compression     114.8 MiB    389.6 MiB/s  1505     413.8 MiB
 11. gzip-best-speed            115.6 MiB    359.5 MiB/s  47       316.6 MiB
 12. zstd-better-compression    114.1 MiB    322 MiB/s    3207     482.2 MiB
 13. deflate-best-compression   114.8 MiB    69.6 MiB/s   46       311.7 MiB
 14. gzip                       114.8 MiB    56.8 MiB/s   47       305.2 MiB
 15. gzip-best-compression      114.8 MiB    46.9 MiB/s   51       305.2 MiB
kopia benchmark encryption

     Encryption                     Throughput
-----------------------------------------------------------------
  0. CHACHA20-POLY1305-HMAC-SHA256  1.7 GiB / second
  1. AES256-GCM-HMAC-SHA256         1.5 GiB / second
-----------------------------------------------------------------
Fastest option for this machine is: --encryption=CHACHA20-POLY1305-HMAC-SHA256
kopia benchmark ecc

     ECC                                Throughput     Throughput       Growth
                                          Encoding       Decoding
---------------------------------------------------------------------------------------
  0. REED-SOLOMON-CRC32 - 2%               2 GiB/s      2.3 GiB/s        2% [10.2 MiB]
  1. REED-SOLOMON-CRC32 - 1%             1.4 GiB/s      1.7 GiB/s        1% [10.1 MiB]
  2. REED-SOLOMON-CRC32 - 5%             1.3 GiB/s      1.4 GiB/s        5% [10.5 MiB]
  3. REED-SOLOMON-CRC32 - 10%          825.6 MiB/s      0.9 GiB/s       10% [11 MiB]
  4. REED-SOLOMON-CRC32 - 20%          454.9 MiB/s    897.5 MiB/s       20% [12 MiB]
---------------------------------------------------------------------------------------
Fastest option for this machine is: --ecc=REED-SOLOMON-CRC32 - 2%

Cool - thanks to all of you. I am going for a rather new AMD EPYC 7313, 3.00GHz, 16C/32T, so I guess, I won’t have to worry about hashing/crypto performance.

Thanks!

There must be a bug with the splitter benchmarks that goes to many TB/s.
Fine, fixed splitting is fast, but 2-300 TB/s is fantasy numbers.

AMD Ryzen 5 7600X

kopia benchmark splitter

  0. FIXED                     0 B/s        count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  1. FIXED-8M                  0 B/s        count:64 min:8388608 10th:8388608 25th:8388608 50th:8388608 75th:8388608 90th:8388608 max:8388608
  2. FIXED-512K                0 B/s        count:1024 min:524288 10th:524288 25th:524288 50th:524288 75th:524288 90th:524288 max:524288
  3. FIXED-4M                  0 B/s        count:128 min:4194304 10th:4194304 25th:4194304 50th:4194304 75th:4194304 90th:4194304 max:4194304
  4. FIXED-2M                  0 B/s        count:256 min:2097152 10th:2097152 25th:2097152 50th:2097152 75th:2097152 90th:2097152 max:2097152
  5. FIXED-256K                0 B/s        count:2048 min:262144 10th:262144 25th:262144 50th:262144 75th:262144 90th:262144 max:262144
  6. FIXED-1M                  0 B/s        count:512 min:1048576 10th:1048576 25th:1048576 50th:1048576 75th:1048576 90th:1048576 max:1048576
  7. FIXED-128K                0 B/s        count:4096 min:131072 10th:131072 25th:131072 50th:131072 75th:131072 90th:131072 max:131072
  8. DYNAMIC-4M-BUZHASH        1 GB/s       count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
  9. DYNAMIC                   0.9 GB/s     count:107 min:9467 10th:2277562 25th:2971794 50th:4747177 75th:7603998 90th:8388608 max:8388608
 10. DYNAMIC-1M-BUZHASH        0.9 GB/s     count:428 min:9467 10th:612999 25th:766808 50th:1158068 75th:1744194 90th:2097152 max:2097152
 11. DYNAMIC-256K-BUZHASH      0.9 GB/s     count:1612 min:9467 10th:155695 25th:206410 50th:315497 75th:493851 90th:524288 max:524288
 12. DYNAMIC-2M-BUZHASH        0.9 GB/s     count:204 min:64697 10th:1210184 25th:1638276 50th:2585985 75th:3944217 90th:4194304 max:4194304
 13. DYNAMIC-128K-BUZHASH      0.9 GB/s     count:3183 min:3076 10th:80896 25th:104312 50th:157621 75th:249115 90th:262144 max:262144
 14. DYNAMIC-512K-BUZHASH      896.9 MB/s   count:812 min:9467 10th:313948 25th:400696 50th:619560 75th:978932 90th:1048576 max:1048576
 15. DYNAMIC-8M-BUZHASH        895 MB/s     count:49 min:677680 10th:5260579 25th:6528562 50th:11102775 75th:16777216 90th:16777216 max:16777216
 16. DYNAMIC-8M-RABINKARP      228.9 MB/s   count:60 min:1446246 10th:4337385 25th:5293196 50th:8419217 75th:12334953 90th:16777216 max:16777216
 17. DYNAMIC-4M-RABINKARP      222.1 MB/s   count:110 min:535925 10th:2242307 25th:2767610 50th:4400962 75th:6813401 90th:8388608 max:8388608
 18. DYNAMIC-2M-RABINKARP      218.4 MB/s   count:204 min:535925 10th:1235674 25th:1675441 50th:2525341 75th:3658905 90th:4194304 max:4194304
 19. DYNAMIC-1M-RABINKARP      217.3 MB/s   count:391 min:213638 10th:623062 25th:813953 50th:1328673 75th:2097152 90th:2097152 max:2097152
 20. DYNAMIC-128K-RABINKARP    217 MB/s     count:3160 min:9667 10th:80098 25th:106626 50th:162269 75th:250655 90th:262144 max:262144
 21. DYNAMIC-512K-RABINKARP    215.6 MB/s   count:777 min:124727 10th:322811 25th:431615 50th:643713 75th:1048576 90th:1048576 max:1048576
 22. DYNAMIC-256K-RABINKARP    213.9 MB/s   count:1575 min:49480 10th:159059 25th:212920 50th:316420 75th:508831 90th:524288 max:524288

kopia benchmark crypto

     Hash                 Encryption                     Throughput
-----------------------------------------------------------------
  0. BLAKE3-256-128       AES256-GCM-HMAC-SHA256         2.6 GB / second
  1. BLAKE3-256           AES256-GCM-HMAC-SHA256         2.1 GB / second
  2. BLAKE3-256-128       CHACHA20-POLY1305-HMAC-SHA256  2 GB / second
  3. BLAKE3-256           CHACHA20-POLY1305-HMAC-SHA256  2 GB / second
  4. HMAC-SHA256-128      CHACHA20-POLY1305-HMAC-SHA256  1.5 GB / second
  5. HMAC-SHA256          CHACHA20-POLY1305-HMAC-SHA256  1.5 GB / second
  6. HMAC-SHA224          CHACHA20-POLY1305-HMAC-SHA256  1.5 GB / second
  7. HMAC-SHA224          AES256-GCM-HMAC-SHA256         1.5 GB / second
  8. HMAC-SHA256          AES256-GCM-HMAC-SHA256         1.4 GB / second
  9. HMAC-SHA256-128      AES256-GCM-HMAC-SHA256         1.4 GB / second
 10. BLAKE2B-256-128      AES256-GCM-HMAC-SHA256         1.1 GB / second
 11. BLAKE2B-256          CHACHA20-POLY1305-HMAC-SHA256  0.9 GB / second
 12. BLAKE2B-256-128      CHACHA20-POLY1305-HMAC-SHA256  0.9 GB / second
 13. BLAKE2B-256          AES256-GCM-HMAC-SHA256         798.3 MB / second
 14. BLAKE2S-256          CHACHA20-POLY1305-HMAC-SHA256  742.6 MB / second
 15. BLAKE2S-256          AES256-GCM-HMAC-SHA256         737.7 MB / second
 16. BLAKE2S-128          CHACHA20-POLY1305-HMAC-SHA256  720 MB / second
 17. BLAKE2S-128          AES256-GCM-HMAC-SHA256         701.3 MB / second
 18. HMAC-SHA3-224        AES256-GCM-HMAC-SHA256         590 MB / second
 19. HMAC-SHA3-224        CHACHA20-POLY1305-HMAC-SHA256  589.4 MB / second
 20. HMAC-SHA3-256        AES256-GCM-HMAC-SHA256         559.4 MB / second
 21. HMAC-SHA3-256        CHACHA20-POLY1305-HMAC-SHA256  541.4 MB / second
-----------------------------------------------------------------
Fastest option for this machine is: --block-hash=BLAKE3-256-128 --encryption=AES256-GCM-HMAC-SHA256

kopia benchmark hashing

     Hash                 Throughput
-----------------------------------------------------------------
  0. HMAC-SHA256          15 GB / second
  1. BLAKE3-256-128       13.1 GB / second
  2. BLAKE3-256           10 GB / second
  3. HMAC-SHA224          7.9 GB / second
  4. HMAC-SHA256-128      5.1 GB / second
  5. BLAKE2B-256-128      5 GB / second
  6. BLAKE2B-256          4 GB / second
  7. BLAKE2S-256          3.3 GB / second
  8. BLAKE2S-128          2.6 GB / second
  9. HMAC-SHA3-256        2.2 GB / second
 10. HMAC-SHA3-224        2 GB / second
-----------------------------------------------------------------
Fastest option for this machine is: --block-hash=HMAC-SHA256

kopia benchmark encryption

     Encryption                     Throughput
-----------------------------------------------------------------
  0. AES256-GCM-HMAC-SHA256         1.9 GB / second
  1. CHACHA20-POLY1305-HMAC-SHA256  1.5 GB / second
-----------------------------------------------------------------
Fastest option for this machine is: --encryption=AES256-GCM-HMAC-SHA256

kopia benchmark ecc

     ECC                                Throughput     Throughput       Growth
                                          Encoding       Decoding
---------------------------------------------------------------------------------------
  0. REED-SOLOMON-CRC32 - 2%              4.1 GB/s       5.6 GB/s        2% [10.7 MB]
  1. REED-SOLOMON-CRC32 - 10%             1.8 GB/s       1.7 GB/s       10% [11.5 MB]
  2. REED-SOLOMON-CRC32 - 5%              1.4 GB/s       2.5 GB/s        5% [11 MB]
  3. REED-SOLOMON-CRC32 - 1%              1.8 GB/s       1.2 GB/s        1% [10.6 MB]
  4. REED-SOLOMON-CRC32 - 20%             1.1 GB/s       1.6 GB/s       20% [12.6 MB]
---------------------------------------------------------------------------------------
Fastest option for this machine is: --ecc=REED-SOLOMON-CRC32 - 2%