Copyright (c) 2014-2021 SEGGER Microcontroller GmbH www.segger.com
Modular Exponentiation Benchmark compiled Dec 9 2023 23:44:05
Compiler: SEGGER cc 16.0.6
System: Processor speed = 996.000 MHz
Config: CRYPTO_VERSION = 24001 [2.40a]
Config: CRYPTO_MPI_BITS_PER_LIMB = 32
Modular Arithmetic Performance
==============================
CRT private key, exponent length = modulus length, all times in ms
+---------------------------+--------------------------------+--------------------------------+
| Modulus | 1024 bits | 2048 bits |
| Algorithm | Time x Memory x | Time x Memory x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, fast | 16.23 1.00x 700 1.00x | 79.87 1.00x 1340 1.00x |
| Basic, ladder | 18.93 0.86x 840 1.20x | 94.52 0.84x 1608 1.20x |
| Basic, 2b, FW | 16.82 0.97x 1260 1.80x | 80.69 0.99x 2412 1.80x |
| Basic, 3b, FW | 14.94 1.09x 1820 2.60x | 69.96 1.14x 3484 2.60x |
| Basic, 4b, FW | 14.12 1.15x 2940 4.20x | 64.62 1.24x 5628 4.20x |
| Basic, 5b, FW | 13.84 1.17x 5180 7.40x | 62.94 1.27x 9916 7.40x |
| Basic, 6b, FW | 13.75 1.18x 9660 13.80x | 60.55 1.32x 18492 13.80x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, 2b, RM | 15.57 1.04x 1260 1.80x | 74.79 1.07x 2412 1.80x |
| Basic, 3b, RM | 14.50 1.12x 1540 2.20x | 67.89 1.18x 2948 2.20x |
| Basic, 4b, RM | 13.76 1.18x 2100 3.00x | 63.47 1.26x 4020 3.00x |
| Basic, 5b, RM | 13.21 1.23x 3220 4.60x | 60.08 1.33x 6164 4.60x |
| Basic, 6b, RM | 13.19 1.23x 5460 7.80x | 58.62 1.36x 10452 7.80x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, fast | 29.26 0.55x 980 1.40x | 150.28 0.53x 1876 1.40x |
| Barrett, ladder | 39.75 0.41x 1120 1.60x | 247.43 0.32x 2144 1.60x |
| Barrett, 2b, FW | 28.20 0.58x 1540 2.20x | 150.04 0.53x 2948 2.20x |
| Barrett, 3b, FW | 28.60 0.57x 2100 3.00x | 129.44 0.62x 4020 3.00x |
| Barrett, 4b, FW | 29.12 0.56x 3220 4.60x | 135.11 0.59x 6164 4.60x |
| Barrett, 5b, FW | 29.61 0.55x 5460 7.80x | 129.21 0.62x 10452 7.80x |
| Barrett, 6b, FW | 30.93 0.52x 9940 14.20x | 132.74 0.60x 19028 14.20x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, 2b, RM | 30.72 0.53x 1540 2.20x | 157.67 0.51x 2948 2.20x |
| Barrett, 3b, RM | 31.65 0.51x 1820 2.60x | 132.47 0.60x 3484 2.60x |
| Barrett, 4b, RM | 32.00 0.51x 2380 3.40x | 130.54 0.61x 4556 3.40x |
| Barrett, 5b, RM | 30.66 0.53x 3500 5.00x | 130.38 0.61x 6700 5.00x |
| Barrett, 6b, RM | 30.49 0.53x 5740 8.20x | 129.16 0.62x 10988 8.20x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, fast | 6.37 2.55x 700 1.00x | 36.24 2.20x 1340 1.00x |
| Montgomery, ladder | 8.52 1.91x 840 1.20x | 47.97 1.67x 1608 1.20x |
| Montgomery, 2b, FW | 6.42 2.53x 1260 1.80x | 36.08 2.21x 2412 1.80x |
| Montgomery, 3b, FW | 5.77 2.81x 1820 2.60x | 32.23 2.48x 3484 2.60x |
| Montgomery, 4b, FW | 5.51 2.94x 2940 4.20x | 30.53 2.62x 5628 4.20x |
| Montgomery, 5b, FW | 5.47 2.97x 5180 7.40x | 29.78 2.68x 9916 7.40x |
| Montgomery, 6b, FW | 5.69 2.85x 9660 13.80x | 30.14 2.65x 18492 13.80x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, 2b, RM | 6.01 2.70x 1260 1.80x | 33.32 2.40x 2412 1.80x |
| Montgomery, 3b, RM | 5.72 2.84x 1540 2.20x | 31.35 2.55x 2948 2.20x |
| Montgomery, 4b, RM | 5.51 2.94x 2100 3.00x | 30.09 2.65x 4020 3.00x |
| Montgomery, 5b, RM | 5.49 2.96x 3220 4.60x | 29.51 2.71x 6164 4.60x |
| Montgomery, 6b, RM | 5.59 2.90x 5460 7.80x | 29.33 2.72x 10452 7.80x |
+---------------------------+--------------------------------+--------------------------------+
| Configured | 16.52 0.98x 700 1.00x | 81.13 0.98x 1340 1.00x |
+---------------------------+--------------------------------+--------------------------------+
Public key, exponent length = 17 bits, all times in ms
+---------------------------+--------------------------------+--------------------------------+
| Modulus | 1024 bits | 2048 bits |
| Algorithm | Time x Memory x | Time x Memory x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, fast | 0.42 1.00x 804 1.00x | 1.16 1.00x 1572 1.00x |
| Basic, ladder | 0.76 0.55x 1072 1.33x | 2.45 0.47x 2096 1.33x |
| Basic, 2b, FW | 0.53 0.79x 1876 2.33x | 1.53 0.76x 3668 2.33x |
| Basic, 3b, FW | 0.59 0.71x 2948 3.67x | 1.71 0.68x 5764 3.67x |
| Basic, 4b, FW | 0.84 0.50x 5092 6.33x | 2.48 0.47x 9956 6.33x |
| Basic, 5b, FW | 1.29 0.32x 9380 11.67x | 3.80 0.30x 18340 11.67x |
| Basic, 6b, FW | 2.04 0.20x 17956 22.33x | 6.52 0.18x 35108 22.33x |
+---------------------------+--------------------------------+--------------------------------+
| Basic, 2b, RM | 0.50 0.83x 1876 2.33x | 1.32 0.88x 3668 2.33x |
| Basic, 3b, RM | 0.50 0.83x 2412 3.00x | 1.44 0.81x 4716 3.00x |
| Basic, 4b, RM | 0.62 0.68x 3484 4.33x | 1.81 0.64x 6812 4.33x |
| Basic, 5b, RM | 0.86 0.48x 5628 7.00x | 2.51 0.46x 11004 7.00x |
| Basic, 6b, RM | 1.28 0.33x 9916 12.33x | 3.96 0.29x 19388 12.33x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, fast | 0.67 0.62x 1340 1.67x | 2.03 0.57x 2620 1.67x |
| Barrett, ladder | 2.09 0.20x 1608 2.00x | 4.24 0.27x 3144 2.00x |
| Barrett, 2b, FW | 1.10 0.38x 2412 3.00x | 2.54 0.46x 4716 3.00x |
| Barrett, 3b, FW | 1.28 0.32x 3484 4.33x | 3.00 0.39x 6812 4.33x |
| Barrett, 4b, FW | 1.95 0.21x 5628 7.00x | 4.21 0.28x 11004 7.00x |
| Barrett, 5b, FW | 3.30 0.13x 9916 12.33x | 6.63 0.17x 19388 12.33x |
| Barrett, 6b, FW | 5.65 0.07x 18492 23.00x | 11.47 0.10x 36156 23.00x |
+---------------------------+--------------------------------+--------------------------------+
| Barrett, 2b, RM | 1.12 0.37x 2412 3.00x | 2.48 0.47x 4716 3.00x |
| Barrett, 3b, RM | 1.22 0.34x 2948 3.67x | 2.63 0.44x 5764 3.67x |
| Barrett, 4b, RM | 1.50 0.28x 4020 5.00x | 3.12 0.37x 7860 5.00x |
| Barrett, 5b, RM | 2.02 0.21x 6164 7.67x | 4.35 0.27x 12052 7.67x |
| Barrett, 6b, RM | 3.19 0.13x 10452 13.00x | 6.75 0.17x 20436 13.00x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, fast | 0.26 1.63x 804 1.00x | 0.87 1.34x 1572 1.00x |
| Montgomery, ladder | 0.51 0.81x 1072 1.33x | 1.61 0.72x 2096 1.33x |
| Montgomery, 2b, FW | 0.39 1.08x 1876 2.33x | 1.30 0.89x 3668 2.33x |
| Montgomery, 3b, FW | 0.41 1.02x 2948 3.67x | 1.35 0.86x 5764 3.67x |
| Montgomery, 4b, FW | 0.53 0.79x 5092 6.33x | 1.73 0.67x 9956 6.33x |
| Montgomery, 5b, FW | 0.73 0.57x 9380 11.67x | 2.47 0.47x 18340 11.67x |
| Montgomery, 6b, FW | 1.15 0.36x 17956 22.33x | 3.83 0.30x 35108 22.33x |
+---------------------------+--------------------------------+--------------------------------+
| Montgomery, 2b, RM | 0.36 1.17x 1876 2.33x | 1.03 1.12x 3668 2.33x |
| Montgomery, 3b, RM | 0.40 1.05x 2412 3.00x | 1.13 1.03x 4716 3.00x |
| Montgomery, 4b, RM | 0.49 0.85x 3484 4.33x | 1.38 0.84x 6812 4.33x |
| Montgomery, 5b, RM | 0.62 0.67x 5628 7.00x | 1.73 0.67x 11004 7.00x |
| Montgomery, 6b, RM | 0.87 0.48x 9916 12.33x | 2.40 0.48x 19388 12.33x |
+---------------------------+--------------------------------+--------------------------------+
| Configured | 0.42 1.00x 804 1.00x | 1.15 1.01x 1572 1.00x |
+---------------------------+--------------------------------+--------------------------------+
Benchmark complete
STOP.