mceliece-speed(1)

πŸ“¦
version 0~20260622 Β· 3 versions
, in ubuntu stonking

πŸ’– mceliece-speed(1) β€” the libmceliece speed-test girly πŸ’–

okay bestie, welcome to mceliece-speed, a General Commands Manual icon πŸŽ€


✨ NAME ✨

mceliece-speed β€” run some libmceliece speed tests πŸƒβ€β™€οΈπŸ’¨


🌸 SYNOPSIS 🌸

mceliece-speed

that's it. no flags, no args, no drama. she just runs. πŸ’…


πŸ¦‹ DESCRIPTION πŸ¦‹

so mceliece-speed runs some tests of the speed of the libmceliece implementation of the Classic McEliece cryptosystem. like, how fast is this crypto actually going, bestie? we're finding out. πŸ”₯

heads up: the mceliece-speed output format is subject to change. no promises, it's giving experimental. πŸ’€

here are examples of output lines with the current format, straight from a mceliece-speed run on an Intel Haswell CPU core:

kem_6960119f selected implementation avx compiler clang -Wall -fPIC -fwrapv -Qunused-arguments -O2 -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msse4.2 -mavx -mbmi -mbmi2 -mpopcnt -mavx2 -mtune=haswell; Ubuntu clang version 14.0.0-1ubuntu1.1; Target: x86_64-pc-linux-gnu; Thread model: posix; InstalledDir: /usr/bin
kem_6960119f_keypair selected 1047319 239336111 -45926+75149-74501+77935+25323-18662-14170+21804-50286+79063+119473+24254+32692-86692-11325+11853-1641+85401+79900-36121+31647-46848-82935-77649+50771-61354+25615-19507-213-113509-15330+22405
kem_6960119f_enc selected 194 133429 +8665+1198+718-1682-1798-1955+3726+6311+3449+8172+423+6202-1740+68-2005-2473-2441+137-2698+6077+680-1746+1015-1769+3059+223+609+291+1042-2685-2438+534
kem_6960119f_dec selected 32 282786 +26439+2205+1168+72-226+118-56+122-334+23+193+46+1698+694+168-350+79-209+2-479+15+31-222-273-108+106-205+191-254+70-104-248

okay so what are these lines even saying? let me translate, because it's giving cryptic on purpose πŸ™ˆ

these lines say that the automatically selected implementation for the 6960119f parameter set was the avx implementation, compiled with the clang options shown, and it took an interquartile mean (IQM) of:

  • 239336111 CPU cycles to generate a key pair πŸ”‘
  • 133429 CPU cycles to encapsulate a session key πŸ“¦
  • 282786 CPU cycles to decapsulate a session key πŸ”“

and the numbers like 282786 +26439+2205+...? those show the timings for a series of consecutive operations. so: the IQM was 282786 cycles, the first run took 26439 cycles more than the IQM, the second run took 2205 cycles more than the IQM, etc. etc. slay, now you can read the vibes. ⭐


πŸ‘‘ SEE ALSO πŸ‘‘


that's the whole page, bestie, no cap 🫢 this was the mceliece-speed(1) page from the General Commands Manual β€” go run her and watch those cycles roll in. periodt. πŸ’œβœ¨ πŸ¦‹πŸŒΈπŸŽ€

πŸ“¦ where this page comes from