-rw-r--r-- 2509 libmceliece-20240513/doc/speed.md raw
In the following speed table, smaller numbers are better. The numbers are interquartile means of single-core cycle counts on various microarchitectures. Overclocking is disabled. | μarch | KEM | keypair | enc | dec | | :---- | :--- | ------: | ---: | ---: | | Zen 3 (2020) | 348864f | 25589845 | 22897 | 99684 | | 348864 | 38602285 | 22115 | 99666 | | 460896f | 75556358 | 47868 | 203905 | | 460896 | 121695897 | 52717 | 203937 | | 6688128f | 152383521 | 81905 | 237919 | | 6688128 | 271203794 | 82804 | 237688 | | 6960119f | 138846132 | 84506 | 228152 | | 6960119 | 227806627 | 85902 | 228176 | | 8192128f | 173855341 | 100794 | 238135 | | 8192128 | 278479878 | 95158 | 238170 | Cortex-A72 (2016) | 348864f | 254263118 | 196237 | 659793 | | 348864 | 334123845 | 188766 | 659063 | | 460896f | 970889805 | 406786 | 1777314 | | 460896 | 1383194061 | 392769 | 1775714 | | 6688128f | 4386761616 | 780561 | 2021442 | | 6688128 | 2901802792 | 745340 | 2022452 | | 6960119f | 3806418876 | 709333 | 1953096 | | 6960119 | 2555564451 | 742344 | 1953928 | | 8192128f | 5494655765 | 841953 | 1950167 | | 8192128 | 4971332265 | 830206 | 1950921 | Skylake (2015) | 348864f | 29929407 | 30238 | 113936 | | 348864 | 46346406 | 30507 | 114007 | | 460896f | 95273707 | 63254 | 243032 | | 460896 | 160086273 | 65589 | 243016 | | 6688128f | 229181676 | 108836 | 287129 | | 6688128 | 370844067 | 107019 | 287821 | | 6960119f | 185368263 | 115282 | 266069 | | 6960119 | 301755341 | 115170 | 265945 | | 8192128f | 235835488 | 121788 | 287784 | | 8192128 | 288402336 | 122017 | 287953 | Haswell (2013) | 348864f | 36358371 | 36473 | 121798 | | 348864 | 56547209 | 36670 | 121915 | | 460896f | 113750151 | 77705 | 256292 | | 460896 | 191557721 | 76139 | 256214 | | 6688128f | 273037997 | 125670 | 304945 | | 6688128 | 353468181 | 128118 | 304658 | | 6960119f | 241661662 | 134877 | 282401 | | 6960119 | 345605381 | 133572 | 282327 | | 8192128f | 308065654 | 148219 | 304642 | | 8192128 | 417334872 | 148947 | 304135 Microarchitectures are listed in reverse chronological order of when they were introduced. In the libmceliece distribution, `command/mceliece-speed.c` measures libmceliece; `benchmarks/*-*` is the output of `mceliece-speed` on various machines; and `autogen/md-speed` extracts the table from those measurements. The table reports only interquartile means of cycle counts. See the full output files for differences between multiple measurements and the interquartile mean.