Implementation notes: amd64, raptor, crypto_encrypt/r5n13pke0smallct

Computer: raptor
Microarchitecture: amd64; Raptor Cove (b06a2)
Architecture: amd64
CPU ID: GenuineIntel-000b06a2-40-bfebfbff
SUPERCOP version: 20231107
Operation: crypto_encrypt
Primitive: r5n13pke0smallct
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1019207339469 0 0181640 956 1768T:avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1208670236819 0 0179280 948 1800T:avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1210225331370 0 0180200 956 1768T:avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1216317623750 0 0170680 956 1736T:avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1227856927456 0 0172880 948 1800T:avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1230499223260 0 0171410 948 1800T:avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1244844037435 0 0179632 956 1768T:optclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1318941933268 0 0174944 956 1736T:avx2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1320108233268 0 0174944 956 1736T:optclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1431049029396 0 0178200 956 1768T:optclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1446847935542 0 0178024 948 1800T:optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1455557723309 0 0170232 956 1736T:optclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1472361826889 0 0172336 948 1800T:optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1476856522802 0 0170962 948 1800T:optclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2023111420230530
1479840525106 0 0171240 948 1800T:avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1631878322935 0 0168836 940 1768T:avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1792216724467 0 0170648 948 1800T:optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530
1945597422374 0 0168276 940 1768T:optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2023111420230530

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
measure.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
measure.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

Number of similar (compiler,implementation) pairs: 17, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:avx2
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:avx2
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:avx2
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:avx2
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:opt

Compiler output

Implementation: T:avx2
Security model: timingleaks
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
a_fixed.c: In file included from a_fixed.c:10:
a_fixed.c: In file included from ./a_fixed.h:13:
a_fixed.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
a_fixed.c: #warning AVX2 not supported by platform
a_fixed.c: ^
a_fixed.c: 1 warning generated.
a_random.c: In file included from a_random.c:10:
a_random.c: In file included from ./a_random.h:13:
a_random.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
a_random.c: #warning AVX2 not supported by platform
a_random.c: ^
a_random.c: 1 warning generated.
cca_encrypt.c: In file included from cca_encrypt.c:12:
cca_encrypt.c: In file included from ./cca_encrypt.h:14:
cca_encrypt.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
cca_encrypt.c: #warning AVX2 not supported by platform
cca_encrypt.c: ^
cca_encrypt.c: 1 warning generated.
cpa_kem.c: In file included from cpa_kem.c:11:
cpa_kem.c: In file included from ./cpa_kem.h:13:
cpa_kem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
cpa_kem.c: #warning AVX2 not supported by platform
cpa_kem.c: ^
cpa_kem.c: 1 warning generated.
drbg.c: In file included from drbg.c:18:
drbg.c: In file included from ./drbg.h:13:
drbg.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
drbg.c: #warning AVX2 not supported by platform
drbg.c: ^
drbg.c: 1 warning generated.
matmul.c: In file included from matmul.c:8:
matmul.c: In file included from ./matmul.h:8:
matmul.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
matmul.c: #warning AVX2 not supported by platform
matmul.c: ^
matmul.c: 1 warning generated.
matmul_avx2.c: In file included from matmul_avx2.c:8:
matmul_avx2.c: In file included from ./matmul.h:8:
matmul_avx2.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
matmul_avx2.c: #warning AVX2 not supported by platform
matmul_avx2.c: ^
matmul_avx2.c: 1 warning generated.
matmul_cm.c: In file included from matmul_cm.c:7:
matmul_cm.c: In file included from ./matmul.h:8:
matmul_cm.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
matmul_cm.c: #warning AVX2 not supported by platform
matmul_cm.c: ^
matmul_cm.c: 1 warning generated.
probe_cm.c: In file included from probe_cm.c:6:
probe_cm.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
probe_cm.c: #warning AVX2 not supported by platform
probe_cm.c: ^
probe_cm.c: 1 warning generated.
r5_cca_kem.c: In file included from r5_cca_kem.c:7:
r5_cca_kem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cca_kem.c: #warning AVX2 not supported by platform
r5_cca_kem.c: ^
r5_cca_kem.c: 1 warning generated.
r5_cca_pke.c: In file included from r5_cca_pke.c:12:
r5_cca_pke.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cca_pke.c: #warning AVX2 not supported by platform
r5_cca_pke.c: ^
r5_cca_pke.c: 1 warning generated.
r5_cpa_kem.c: In file included from r5_cpa_kem.c:9:
r5_cpa_kem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_kem.c: #warning AVX2 not supported by platform
r5_cpa_kem.c: ^
r5_cpa_kem.c: 1 warning generated.
r5_cpa_pke_n1.c: In file included from r5_cpa_pke_n1.c:6:
r5_cpa_pke_n1.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_pke_n1.c: #warning AVX2 not supported by platform
r5_cpa_pke_n1.c: ^
r5_cpa_pke_n1.c: 1 warning generated.
r5_cpa_pke_nd.c: In file included from r5_cpa_pke_nd.c:7:
r5_cpa_pke_nd.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_cpa_pke_nd.c: #warning AVX2 not supported by platform
r5_cpa_pke_nd.c: ^
r5_cpa_pke_nd.c: 1 warning generated.
r5_dem.c: In file included from r5_dem.c:11:
r5_dem.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
r5_dem.c: #warning AVX2 not supported by platform
r5_dem.c: ^
r5_dem.c: 1 warning generated.
ringmul.c: In file included from ringmul.c:8:
ringmul.c: In file included from ./ringmul.h:9:
ringmul.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
ringmul.c: #warning AVX2 not supported by platform
ringmul.c: ^
ringmul.c: 1 warning generated.
ringmul_cm.c: In file included from ringmul_cm.c:8:
ringmul_cm.c: In file included from ./ringmul.h:9:
ringmul_cm.c: ./r5_parameter_sets.h:143:2: warning: AVX2 not supported by platform [-W#warnings]
ringmul_cm.c: #warning AVX2 not supported by platform
ringmul_cm.c: ^
ringmul_cm.c: 1 warning generated.
try.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
measure.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
measure.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:avx2

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(parameters.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(parameters.o):(.bss+0x40): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_pke.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_pke.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_kem.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_kem.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cpa_pke.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cpa_pke.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_core.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_core.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_fixed.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_fixed.o):(.bss+0x10): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_random.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_random.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: clang-16: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(parameters.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(parameters.o):(.rodata+0x60): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_pke.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_pke.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_kem.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cca_kem.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cpa_pke.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_cpa_pke.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_core.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(r5_core.o):(.rodata+0x20): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_fixed.o):(.bss+0x20): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_fixed.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_random.o):(.bss+0x0): multiple definition of `r5_parameter_set_names'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.bss+0x0): first defined here
try.c: /usr/bin/ld: libcrypto_encrypt_r5n13pke0smallct.a(a_random.o):(.rodata+0x0): multiple definition of `r5_parameter_sets'; libcrypto_encrypt_r5n13pke0smallct.a(cca_encrypt.o):(.rodata+0x0): first defined here
try.c: /usr/bin/ld: warning: KeccakP-1600-AVX2.o: missing .note.GNU-stack section implies executable stack
try.c: /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref