Implementation notes: amd64, rumba7, crypto_encrypt/mceliece
Computer: rumba7
Microarchitecture: amd64; Zen (800f11)
Architecture: amd64
CPU ID: AuthenticAMD-00800f11-178bfbff
SUPERCOP version: 20240808
Operation: crypto_encrypt
Primitive: mceliece
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
987915 | 23664 128 8492 | 54563 1004 10272 | T:ref | clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
988826 | 20274 128 8492 | 50755 1004 10272 | T:ref | clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
990816 | 25655 128 8492 | 55427 1004 10272 | T:ref | clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
1001160 | 17772 128 8492 | 45195 1004 10272 | T:ref | clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
1042820 | 14597 128 8492 | 42661 996 10336 | T:ref | clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
1066338 | 20594 128 8528 | 50108 972 10400 | T:ref | gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
1131625 | 17140 128 8528 | 45492 972 10400 | T:ref | gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
1254770 | 14627 128 8528 | 42404 972 10400 | T:ref | gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
1285970 | 12479 128 8528 | 39252 964 10368 | T:ref | gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240718 | 20240716 |
Compiler output
misc.c: misc.c:6:35: warning: passing 'char *' to parameter of type 'unsigned char *' converts between pointers to integer types where one is of the unique plain 'char' type and the other is not [-Wpointer-sign]
misc.c: int u8rnd() { char c; randombytes(&c,1); return 255 & (int) c; }
misc.c: ^~
misc.c: .../supercop-data/rumba7/amd64/include/randombytes.h:8:40: note: passing argument to parameter here
misc.c: extern void randombytes(unsigned char *,unsigned long long);
misc.c: ^
misc.c: 1 warning generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
Compiler output
misc.c: misc.c: In function 'u8rnd':
misc.c: misc.c:6:35: warning: pointer targets in passing argument 1 of 'randombytes' differ in signedness [-Wpointer-sign]
misc.c: 6 | int u8rnd() { char c; randombytes(&c,1); return 255 & (int) c; }
misc.c: | ^~
misc.c: | |
misc.c: | char *
misc.c: In file included from misc.c:3:
misc.c: .../supercop-data/rumba7/amd64/include/randombytes.h:8:25: note: expected 'unsigned char *' but argument is of type 'char *'
misc.c: 8 | extern void randombytes(unsigned char *,unsigned long long);
misc.c: | ^~~~~~~~~~~~~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
Namespace violations
decrypt.o L B
decrypt.o coeffs B
decrypt.o decode T
decrypt.o g B
decrypt.o shortplaintext T
decrypt.o sk_free T
decrypt.o sk_from_string T
decrypt.o sqrtmod B
decrypt.o syndrome T
encrypt.o encryp_bloc T
encrypt.o pk_from_string T
encrypt.o shortciphertext T
encrypt.o vec_concat T
gf.o gf_exp B
gf.o gf_init T
gf.o gf_init_exp T
gf.o gf_init_log T
gf.o gf_log B
gf.o gf_pow T
gf.o gf_rand T
gf.o init_done B
keypair.o gop_supr T
keypair.o key_genmat T
mat.o mat_copy T
mat.o mat_free T
mat.o mat_ini T
mat.o mat_ini_from_string T
mat.o mat_mul T
mat.o mat_rowxor T
mat.o mat_rref T
mat.o mat_vec_mul T
misc.o bino D
misc.o buf B
misc.o buf_size B
misc.o fill_buf T
misc.o pick_er T
misc.o rnd T
misc.o u8rnd T
misc.o update_rnd T
poly.o poly_alloc T
poly.o poly_alloc_from_string T
poly.o poly_calcule_deg T
poly.o poly_copy T
poly.o poly_degppf T
poly.o poly_eeaux T
poly.o poly_eval T
poly.o poly_eval_aux T
poly.o poly_free T
poly.o poly_gcd T
poly.o poly_gcd_aux T
poly.o poly_mul T
poly.o poly_randgen_irred T
poly.o poly_rem T
poly.o poly_set T
poly.o poly_set_to_zero T
poly.o poly_shiftmod T
poly.o poly_sqmod T
poly.o poly_sqmod_init T
poly.o poly_sqrtmod_init T
poly.o poly_syndrome_init T
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:ref | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0) |
T:ref | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |
T:ref | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0) |