Implementation notes: amd64, shoe, crypto_aead/paeq128tnm
Computer: shoe
Microarchitecture: amd64; Broadwell+AES (306d4)
Architecture: amd64
CPU ID: GenuineIntel-000306d4-bfebfbff
SUPERCOP version: 20240716
Operation: crypto_aead
Primitive: paeq128tnm
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
47500 | 12886 32 65536 | 29477 884 66584 | T:aesni | clang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
47559 | 10499 32 65536 | 23899 876 66552 | T:aesni | clang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
47640 | 10384 28 65536 | 24495 808 66648 | T:aesni | g++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
47841 | 14454 32 65536 | 31221 884 66584 | T:aesni | clang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
47887 | 9582 32 65536 | 23315 876 66552 | T:aesni | clang++_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
48303 | 11062 28 65536 | 25520 816 66648 | T:aesni | g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
48578 | 35806 28 65536 | 52024 816 66648 | T:aesni | g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
49961 | 8091 28 65536 | 21067 792 66616 | T:aesni | g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
1769118 | 14325 28 65536 | 30504 816 66648 | T:ref | g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2289635 | 14303 32 65536 | 31293 884 66584 | T:ref | clang++_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
2304942 | 14879 32 65536 | 31981 884 66584 | T:ref | clang++_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
5905604 | 6789 28 65536 | 21216 816 66648 | T:ref | g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
6785750 | 6478 28 65536 | 20551 808 66648 | T:ref | g++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
6924090 | 5694 32 65536 | 19563 876 66552 | T:ref | clang++_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
7192331 | 5689 32 65536 | 18995 876 66552 | T:ref | clang++_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
19137662 | 4789 28 65536 | 17731 792 66616 | T:ref | g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall | 20240630 | 20240625 |
Compiler output
encrypt.cpp: encrypt.cpp:21:9: warning: unknown pragma ignored [-Wunknown-pragmas]
encrypt.cpp: #pragma intrinsic(_mm_set_epi64x)
encrypt.cpp: ^
encrypt.cpp: 1 warning generated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aesni | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aesni | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.cpp: encrypt.cpp:21: warning: ignoring '#pragma intrinsic ' [-Wunknown-pragmas]
encrypt.cpp: 21 | #pragma intrinsic(_mm_set_epi64x)
encrypt.cpp: |
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aesni | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:aesni | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall |
T:aesni | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
encrypt.cpp: In file included from encrypt.cpp:13:
encrypt.cpp: /usr/lib/llvm-11/lib/clang/11.0.1/include/intrin.h:12:15: fatal error: 'intrin.h' file not found
encrypt.cpp: #include_next <intrin.h>
encrypt.cpp: ^~~~~~~~~~
encrypt.cpp: 1 error generated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:opt-win-aes | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:opt-win-aes | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:opt-win-aes | clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:opt-win-aes | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.cpp: encrypt.cpp:13:10: fatal error: intrin.h: No such file or directory
encrypt.cpp: 13 | #include <intrin.h>
encrypt.cpp: | ^~~~~~~~~~
encrypt.cpp: compilation terminated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:opt-win-aes | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:opt-win-aes | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:opt-win-aes | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall |
T:opt-win-aes | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
encrypt.cpp: encrypt.cpp:355:27: warning: implicit conversion from 'int' to 'unsigned char' changes value from 256 to 0 [-Wconstant-conversion]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: ~ ~~~~~~~~~~~~~~~~^~
encrypt.cpp: encrypt.cpp:610:27: warning: implicit conversion from 'int' to 'unsigned char' changes value from 256 to 0 [-Wconstant-conversion]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: ~ ~~~~~~~~~~~~~~~~^~
encrypt.cpp: encrypt.cpp:864:27: warning: implicit conversion from 'int' to 'unsigned char' changes value from 256 to 0 [-Wconstant-conversion]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits
encrypt.cpp: ~ ~~~~~~~~~~~~~~~~^~
encrypt.cpp: 3 warnings generated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:ref | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_paeq128tnm_ref_timingleaks_encrypt(unsigned char*, long long unsigned int*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*, const unsigned char*)':
encrypt.cpp: encrypt.cpp:355:27: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '256' to '0' [-Woverflow]
encrypt.cpp: 355 | D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_encrypt_no_nonce(unsigned char*, long long unsigned int*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, unsigned char*, const unsigned char*)':
encrypt.cpp: encrypt.cpp:610:27: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '256' to '0' [-Woverflow]
encrypt.cpp: 610 | D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits, zero for 256-bit nonce
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_paeq128tnm_ref_timingleaks_decrypt(unsigned char*, long long unsigned int*, unsigned char*, const unsigned char*, long long unsigned int, const unsigned char*, long long unsigned int, const unsigned char*, const unsigned char*)':
encrypt.cpp: encrypt.cpp:864:27: warning: unsigned conversion from 'int' to 'unsigned char' changes value from '256' to '0' [-Woverflow]
encrypt.cpp: 864 | D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:ref | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:ref | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall |
T:ref | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |