Implementation notes: ppc64, io83, crypto_aead/paeq128tnm

Computer: io83
Architecture: ppc64
CPU ID: unknown CPU ID
SUPERCOP version: 20180818
Operation: crypto_aead
Primitive: paeq128tnm
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
8835386? ? ?? ? ?refg++_-O3_-fomit-frame-pointer2018092720180818
8847195? ? ?? ? ?refg++_-funroll-loops_-fno-schedule-insns_-O2_-fomit-frame-pointer2018092720180818
8851801? ? ?? ? ?refg++_-m64_-maltivec_-O3_-fomit-frame-pointer2018092720180818
8865080? ? ?? ? ?refg++_-maltivec_-O3_-fomit-frame-pointer2018092720180818
8943529? ? ?? ? ?refg++_-m64_-O3_-fomit-frame-pointer2018092720180818
8955877? ? ?? ? ?refg++_-m64_-mcpu=G3_-O3_-fomit-frame-pointer2018092720180818
8998752? ? ?? ? ?refg++_-fno-schedule-insns_-O3_-fomit-frame-pointer2018092720180818
9006053? ? ?? ? ?refg++_-mcpu=G5_-maltivec_-O3_-fomit-frame-pointer2018092720180818
9015167? ? ?? ? ?refg++_-m64_-mcpu=G5_-maltivec_-O3_-fomit-frame-pointer2018092720180818
9041921? ? ?? ? ?refg++_-m64_-mcpu=G5_-O3_-fomit-frame-pointer2018092720180818
9087785? ? ?? ? ?refg++_-mcpu=G5_-O3_-fomit-frame-pointer2018092720180818
9269085? ? ?? ? ?refg++_-funroll-loops_-fno-schedule-insns_-O3_-fomit-frame-pointer2018092720180818
9364635? ? ?? ? ?refg++_-m64_-mcpu=G3_-maltivec_-O3_-fomit-frame-pointer2018092720180818
9544857? ? ?? ? ?refg++_-m64_-mcpu=G4_-O3_-fomit-frame-pointer2018092720180818
9598855? ? ?? ? ?refg++_-m64_-mcpu=G4_-maltivec_-O3_-fomit-frame-pointer2018092720180818
18283762? ? ?? ? ?refg++_-funroll-loops_-fno-schedule-insns_-O_-fomit-frame-pointer2018092720180818
33219109? ? ?? ? ?refg++_-m64_-O_-fomit-frame-pointer2018092720180818
33252331? ? ?? ? ?refg++_-O_-fomit-frame-pointer2018092720180818
33274332? ? ?? ? ?refg++_-maltivec_-O_-fomit-frame-pointer2018092720180818
33294079? ? ?? ? ?refg++_-m64_-maltivec_-O_-fomit-frame-pointer2018092720180818
33342344? ? ?? ? ?refg++_-m64_-mcpu=G3_-O_-fomit-frame-pointer2018092720180818
33352585? ? ?? ? ?refg++_-m64_-mcpu=G3_-maltivec_-O_-fomit-frame-pointer2018092720180818
33356064? ? ?? ? ?refg++_-fno-schedule-insns_-O_-fomit-frame-pointer2018092720180818
33796329? ? ?? ? ?refg++_-m64_-mcpu=G4_-maltivec_-O_-fomit-frame-pointer2018092720180818
33880952? ? ?? ? ?refg++_-m64_-mcpu=G4_-O_-fomit-frame-pointer2018092720180818
35003493? ? ?? ? ?refg++_-m64_-mcpu=G5_-maltivec_-O_-fomit-frame-pointer2018092720180818
35061803? ? ?? ? ?refg++_-m64_-mcpu=G5_-O_-fomit-frame-pointer2018092720180818
35106834? ? ?? ? ?refg++_-mcpu=G5_-O_-fomit-frame-pointer2018092720180818
35181118? ? ?? ? ?refg++_-mcpu=G5_-maltivec_-O_-fomit-frame-pointer2018092720180818
38609207? ? ?? ? ?refg++_-m64_-mcpu=G3_-maltivec_-O2_-fomit-frame-pointer2018092720180818
38626553? ? ?? ? ?refg++_-m64_-mcpu=G3_-O2_-fomit-frame-pointer2018092720180818
40007667? ? ?? ? ?refg++_-fno-schedule-insns_-O2_-fomit-frame-pointer2018092720180818
40655937? ? ?? ? ?refg++_-m64_-mcpu=G4_-O2_-fomit-frame-pointer2018092720180818
40671813? ? ?? ? ?refg++_-m64_-mcpu=G4_-maltivec_-O2_-fomit-frame-pointer2018092720180818
40764374? ? ?? ? ?refg++_-m64_-Os_-fomit-frame-pointer2018092720180818
40773880? ? ?? ? ?refg++_-maltivec_-Os_-fomit-frame-pointer2018092720180818
40777359? ? ?? ? ?refg++_-Os_-fomit-frame-pointer2018092720180818
40781426? ? ?? ? ?refg++_-m64_-maltivec_-Os_-fomit-frame-pointer2018092720180818
40855465? ? ?? ? ?refg++_-fno-schedule-insns_-Os_-fomit-frame-pointer2018092720180818
41098799? ? ?? ? ?refg++_-mcpu=G5_-maltivec_-O2_-fomit-frame-pointer2018092720180818
41103209? ? ?? ? ?refg++_-m64_-mcpu=G5_-O2_-fomit-frame-pointer2018092720180818
41134618? ? ?? ? ?refg++_-mcpu=G5_-O2_-fomit-frame-pointer2018092720180818
41320524? ? ?? ? ?refg++_-m64_-mcpu=G5_-maltivec_-O2_-fomit-frame-pointer2018092720180818
41576843? ? ?? ? ?refg++_-maltivec_-O2_-fomit-frame-pointer2018092720180818
41578362? ? ?? ? ?refg++_-O2_-fomit-frame-pointer2018092720180818
41610065? ? ?? ? ?refg++_-m64_-maltivec_-O2_-fomit-frame-pointer2018092720180818
41634761? ? ?? ? ?refg++_-m64_-O2_-fomit-frame-pointer2018092720180818
41913669? ? ?? ? ?refg++_-m64_-mcpu=G4_-maltivec_-Os_-fomit-frame-pointer2018092720180818
41924400? ? ?? ? ?refg++_-m64_-mcpu=G3_-maltivec_-Os_-fomit-frame-pointer2018092720180818
41936895? ? ?? ? ?refg++_-funroll-loops_-fno-schedule-insns_-Os_-fomit-frame-pointer2018092720180818
41960513? ? ?? ? ?refg++_-mcpu=G5_-maltivec_-Os_-fomit-frame-pointer2018092720180818
41976242? ? ?? ? ?refg++_-m64_-mcpu=G5_-Os_-fomit-frame-pointer2018092720180818
41977614? ? ?? ? ?refg++_-mcpu=G5_-Os_-fomit-frame-pointer2018092720180818
41982171? ? ?? ? ?refg++_-m64_-mcpu=G5_-maltivec_-Os_-fomit-frame-pointer2018092720180818
42000595? ? ?? ? ?refg++_-m64_-mcpu=G4_-Os_-fomit-frame-pointer2018092720180818
42023968? ? ?? ? ?refg++_-m64_-mcpu=G3_-Os_-fomit-frame-pointer2018092720180818
144376834? ? ?? ? ?refg++2018092720180818

Compiler output

Implementation: aesni
Security model: unknown
Compiler: g++
encrypt.cpp: encrypt.cpp:13:10: fatal error: wmmintrin.h: No such file or directory
encrypt.cpp: #include "wmmintrin.h"
encrypt.cpp: ^~~~~~~~~~~~~
encrypt.cpp: compilation terminated.

Number of similar (compiler,implementation) pairs: 57, namely:
CompilerImplementations
g++ aesni
g++ -O2 -fomit-frame-pointer aesni
g++ -O3 -fomit-frame-pointer aesni
g++ -O -fomit-frame-pointer aesni
g++ -Os -fomit-frame-pointer aesni
g++ -fno-schedule-insns -O2 -fomit-frame-pointer aesni
g++ -fno-schedule-insns -O3 -fomit-frame-pointer aesni
g++ -fno-schedule-insns -O -fomit-frame-pointer aesni
g++ -fno-schedule-insns -Os -fomit-frame-pointer aesni
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer aesni
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer aesni
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer aesni
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer aesni
g++ -m64 -O2 -fomit-frame-pointer aesni
g++ -m64 -O3 -fomit-frame-pointer aesni
g++ -m64 -O -fomit-frame-pointer aesni
g++ -m64 -Os -fomit-frame-pointer aesni
g++ -m64 -maltivec -O2 -fomit-frame-pointer aesni
g++ -m64 -maltivec -O3 -fomit-frame-pointer aesni
g++ -m64 -maltivec -O -fomit-frame-pointer aesni
g++ -m64 -maltivec -Os -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -O2 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -O3 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -O -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -Os -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -maltivec -O2 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -maltivec -O3 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -maltivec -O -fomit-frame-pointer aesni
g++ -m64 -mcpu=G3 -maltivec -Os -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -O2 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -O3 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -O -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -Os -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -maltivec -O2 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -maltivec -O3 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -maltivec -O -fomit-frame-pointer aesni
g++ -m64 -mcpu=G4 -maltivec -Os -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -O2 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -O3 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -O -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -Os -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -maltivec -O2 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -maltivec -O3 -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -maltivec -O -fomit-frame-pointer aesni
g++ -m64 -mcpu=G5 -maltivec -Os -fomit-frame-pointer aesni
g++ -maltivec -O2 -fomit-frame-pointer aesni
g++ -maltivec -O3 -fomit-frame-pointer aesni
g++ -maltivec -O -fomit-frame-pointer aesni
g++ -maltivec -Os -fomit-frame-pointer aesni
g++ -mcpu=G5 -O2 -fomit-frame-pointer aesni
g++ -mcpu=G5 -O3 -fomit-frame-pointer aesni
g++ -mcpu=G5 -O -fomit-frame-pointer aesni
g++ -mcpu=G5 -Os -fomit-frame-pointer aesni
g++ -mcpu=G5 -maltivec -O2 -fomit-frame-pointer aesni
g++ -mcpu=G5 -maltivec -O3 -fomit-frame-pointer aesni
g++ -mcpu=G5 -maltivec -O -fomit-frame-pointer aesni
g++ -mcpu=G5 -maltivec -Os -fomit-frame-pointer aesni

Compiler output

Implementation: opt-win-aes
Security model: unknown
Compiler: g++
encrypt.cpp: encrypt.cpp:12:10: fatal error: wmmintrin.h: No such file or directory
encrypt.cpp: #include "wmmintrin.h"
encrypt.cpp: ^~~~~~~~~~~~~
encrypt.cpp: compilation terminated.

Number of similar (compiler,implementation) pairs: 57, namely:
CompilerImplementations
g++ opt-win-aes
g++ -O2 -fomit-frame-pointer opt-win-aes
g++ -O3 -fomit-frame-pointer opt-win-aes
g++ -O -fomit-frame-pointer opt-win-aes
g++ -Os -fomit-frame-pointer opt-win-aes
g++ -fno-schedule-insns -O2 -fomit-frame-pointer opt-win-aes
g++ -fno-schedule-insns -O3 -fomit-frame-pointer opt-win-aes
g++ -fno-schedule-insns -O -fomit-frame-pointer opt-win-aes
g++ -fno-schedule-insns -Os -fomit-frame-pointer opt-win-aes
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer opt-win-aes
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer opt-win-aes
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer opt-win-aes
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -O -fomit-frame-pointer opt-win-aes
g++ -m64 -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -maltivec -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -maltivec -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -maltivec -O -fomit-frame-pointer opt-win-aes
g++ -m64 -maltivec -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -O -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -maltivec -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -maltivec -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -maltivec -O -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G3 -maltivec -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -O -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -maltivec -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -maltivec -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -maltivec -O -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G4 -maltivec -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -O -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -Os -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -maltivec -O2 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -maltivec -O3 -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -maltivec -O -fomit-frame-pointer opt-win-aes
g++ -m64 -mcpu=G5 -maltivec -Os -fomit-frame-pointer opt-win-aes
g++ -maltivec -O2 -fomit-frame-pointer opt-win-aes
g++ -maltivec -O3 -fomit-frame-pointer opt-win-aes
g++ -maltivec -O -fomit-frame-pointer opt-win-aes
g++ -maltivec -Os -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -O2 -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -O3 -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -O -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -Os -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -maltivec -O2 -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -maltivec -O3 -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -maltivec -O -fomit-frame-pointer opt-win-aes
g++ -mcpu=G5 -maltivec -Os -fomit-frame-pointer opt-win-aes

Compiler output

Implementation: ref
Security model: unknown
Compiler: g++
encrypt.cpp: encrypt.cpp: In function 'int crypto_aead_paeq128tnm_ref_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: large integer implicitly truncated to unsigned type [-Woverflow]
encrypt.cpp: 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: large integer implicitly truncated to unsigned type [-Woverflow]
encrypt.cpp: 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_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: large integer implicitly truncated to unsigned type [-Woverflow]
encrypt.cpp: D0[0] = CRYPTO_NPUBBYTES*8; //nonce length in bits

Number of similar (compiler,implementation) pairs: 57, namely:
CompilerImplementations
g++ ref
g++ -O2 -fomit-frame-pointer ref
g++ -O3 -fomit-frame-pointer ref
g++ -O -fomit-frame-pointer ref
g++ -Os -fomit-frame-pointer ref
g++ -fno-schedule-insns -O2 -fomit-frame-pointer ref
g++ -fno-schedule-insns -O3 -fomit-frame-pointer ref
g++ -fno-schedule-insns -O -fomit-frame-pointer ref
g++ -fno-schedule-insns -Os -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
g++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
g++ -m64 -O2 -fomit-frame-pointer ref
g++ -m64 -O3 -fomit-frame-pointer ref
g++ -m64 -O -fomit-frame-pointer ref
g++ -m64 -Os -fomit-frame-pointer ref
g++ -m64 -maltivec -O2 -fomit-frame-pointer ref
g++ -m64 -maltivec -O3 -fomit-frame-pointer ref
g++ -m64 -maltivec -O -fomit-frame-pointer ref
g++ -m64 -maltivec -Os -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -O2 -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -O3 -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -O -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -Os -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -maltivec -O2 -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -maltivec -O3 -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -maltivec -O -fomit-frame-pointer ref
g++ -m64 -mcpu=G3 -maltivec -Os -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -O2 -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -O3 -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -O -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -Os -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -maltivec -O2 -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -maltivec -O3 -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -maltivec -O -fomit-frame-pointer ref
g++ -m64 -mcpu=G4 -maltivec -Os -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -O2 -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -O3 -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -O -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -Os -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -maltivec -O2 -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -maltivec -O3 -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -maltivec -O -fomit-frame-pointer ref
g++ -m64 -mcpu=G5 -maltivec -Os -fomit-frame-pointer ref
g++ -maltivec -O2 -fomit-frame-pointer ref
g++ -maltivec -O3 -fomit-frame-pointer ref
g++ -maltivec -O -fomit-frame-pointer ref
g++ -maltivec -Os -fomit-frame-pointer ref
g++ -mcpu=G5 -O2 -fomit-frame-pointer ref
g++ -mcpu=G5 -O3 -fomit-frame-pointer ref
g++ -mcpu=G5 -O -fomit-frame-pointer ref
g++ -mcpu=G5 -Os -fomit-frame-pointer ref
g++ -mcpu=G5 -maltivec -O2 -fomit-frame-pointer ref
g++ -mcpu=G5 -maltivec -O3 -fomit-frame-pointer ref
g++ -mcpu=G5 -maltivec -O -fomit-frame-pointer ref
g++ -mcpu=G5 -maltivec -Os -fomit-frame-pointer ref