Implementation notes: amd64, bigmem, crypto_aead/paeq64

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_aead
Primitive: paeq64
TimeImplementationCompilerBenchmark dateSUPERCOP version
6777747refg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
6808432refg++ -m64 -O3 -fomit-frame-pointer2015021620141124
6809642refg++ -O3 -fomit-frame-pointer2015021620141124
6812449refg++ -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
6826792refg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
6826837refg++ -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
6829518refg++ -march=barcelona -O3 -fomit-frame-pointer2015021620141124
6830728refg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
6831427refg++ -march=k8 -O3 -fomit-frame-pointer2015021620141124
6842021refg++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021620141124
6843596refg++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021620141124
6846934refg++ -m64 -march=core2 -O3 -fomit-frame-pointer2015021620141124
6847458refg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021620141124
7600213refg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
8411138refg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
8412943refg++ -march=barcelona -O2 -fomit-frame-pointer2015021620141124
8422222refg++ -O2 -fomit-frame-pointer2015021620141124
8427801refg++ -m64 -O2 -fomit-frame-pointer2015021620141124
8437403refg++ -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
8519666refg++ -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
8522752refg++ -march=k8 -O2 -fomit-frame-pointer2015021620141124
8541032refg++ -m64 -march=core2 -O2 -fomit-frame-pointer2015021620141124
8545512refg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021620141124
8565844refg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021620141124
8569074refg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021620141124
8778715refg++ -march=barcelona -O -fomit-frame-pointer2015021620141124
8784365refg++ -O -fomit-frame-pointer2015021620141124
8787237refg++ -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
8789892refg++ -m64 -O -fomit-frame-pointer2015021620141124
8795508refg++ -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
8797495refg++ -march=k8 -O -fomit-frame-pointer2015021620141124
8816560refg++ -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
9088330refg++ -m64 -march=core2 -O -fomit-frame-pointer2015021620141124
9091320refg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021620141124
9098072refg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021620141124
9098170refg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021620141124
9496928refg++ -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
9498002refg++ -march=nocona -O3 -fomit-frame-pointer2015021620141124
15095178refg++ -march=nocona -O2 -fomit-frame-pointer2015021620141124
15155551refg++ -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
15513749refg++ -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
15519172refg++ -march=nocona -O -fomit-frame-pointer2015021620141124
15816550refg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
15833163refg++ -m64 -march=core2 -Os -fomit-frame-pointer2015021620141124
15833738refg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021620141124
15834851refg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021620141124
15838254refg++ -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
15839472refg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021620141124
15839523refg++ -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
15839699refg++ -Os -fomit-frame-pointer2015021620141124
15841492refg++ -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
15842297refg++ -march=k8 -Os -fomit-frame-pointer2015021620141124
15846114refg++ -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
15846222refg++ -m64 -Os -fomit-frame-pointer2015021620141124
15847349refg++ -march=nocona -Os -fomit-frame-pointer2015021620141124
15897343refg++ -march=barcelona -Os -fomit-frame-pointer2015021620141124
35019241refg++2015021620141124

Compiler output

Implementation: crypto_aead/paeq64/aesni
Compiler: g++
encrypt.cpp: In file included from encrypt.cpp:13:
encrypt.cpp: /usr/lib/gcc/x86_64-linux-gnu/4.4.3/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.cpp: encrypt.cpp: In function 'void DoubleFPermAsm(const long long int __vector__*, const long long int __vector__*, long long int __vector__*, long long int __vector__*)':
encrypt.cpp: encrypt.cpp:166: error: '_mm_aesenc_si128' was not declared in this scope
encrypt.cpp: encrypt.cpp: In function 'void FPermAsm(const long long int __vector__*, long long int __vector__*)':
encrypt.cpp: encrypt.cpp:240: error: '_mm_aesenc_si128' was not declared in this scope

Number of similar (compiler,implementation) pairs: 53, 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 -march=core2 -O2 -fomit-frame-pointer aesni
g++ -m64 -march=core2 -O3 -fomit-frame-pointer aesni
g++ -m64 -march=core2 -O -fomit-frame-pointer aesni
g++ -m64 -march=core2 -Os -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer aesni
g++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer aesni
g++ -m64 -march=k8 -O2 -fomit-frame-pointer aesni
g++ -m64 -march=k8 -O3 -fomit-frame-pointer aesni
g++ -m64 -march=k8 -O -fomit-frame-pointer aesni
g++ -m64 -march=k8 -Os -fomit-frame-pointer aesni
g++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer aesni
g++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer aesni
g++ -m64 -march=native -mtune=native -O -fomit-frame-pointer aesni
g++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer aesni
g++ -m64 -march=nocona -O2 -fomit-frame-pointer aesni
g++ -m64 -march=nocona -O3 -fomit-frame-pointer aesni
g++ -m64 -march=nocona -O -fomit-frame-pointer aesni
g++ -m64 -march=nocona -Os -fomit-frame-pointer aesni
g++ -march=barcelona -O2 -fomit-frame-pointer aesni
g++ -march=barcelona -O3 -fomit-frame-pointer aesni
g++ -march=barcelona -O -fomit-frame-pointer aesni
g++ -march=barcelona -Os -fomit-frame-pointer aesni
g++ -march=k8 -O2 -fomit-frame-pointer aesni
g++ -march=k8 -O3 -fomit-frame-pointer aesni
g++ -march=k8 -O -fomit-frame-pointer aesni
g++ -march=k8 -Os -fomit-frame-pointer aesni
g++ -march=nocona -O2 -fomit-frame-pointer aesni
g++ -march=nocona -O3 -fomit-frame-pointer aesni
g++ -march=nocona -O -fomit-frame-pointer aesni
g++ -march=nocona -Os -fomit-frame-pointer aesni

Compiler output

Implementation: crypto_aead/paeq64/aesni
Compiler: g++ -m64 -march=barcelona -O2 -fomit-frame-pointer
encrypt.cpp: In file included from encrypt.cpp:13:
encrypt.cpp: /usr/lib/gcc/x86_64-linux-gnu/4.4.3/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.cpp: encrypt.cpp: In function 'void DoubleFPermAsm(const long long int __vector__*, const long long int __vector__*, long long int __vector__*, long long int __vector__*)':
encrypt.cpp: encrypt.cpp:166: error: '_mm_aesenc_si128' was not declared in this scope
encrypt.cpp: encrypt.cpp: In function 'void FPermAsm(const long long int __vector__*, long long int __vector__*)':
encrypt.cpp: encrypt.cpp:240: error: '_mm_aesenc_si128' was not declared in this scope
encrypt.cpp: In file included from encrypt.cpp:13:
encrypt.cpp: /usr/lib/gcc/x86_64-linux-gnu/4.4.3/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
encrypt.cpp: encrypt.cpp: In function 'void DoubleFPermAsm(const long long int __vector__*, const long long int __vector__*, long long int __vector__*, long long int __vector__*)':
encrypt.cpp: encrypt.cpp:166: error: '_mm_aesenc_si128' was not declared in this scope
encrypt.cpp: encrypt.cpp: In function 'void FPermAsm(const long long int __vector__*, long long int __vector__*)':
encrypt.cpp: encrypt.cpp:240: error: '_mm_aesenc_si128' was not declared in this scope

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
g++ -m64 -march=barcelona -O2 -fomit-frame-pointer aesni
g++ -m64 -march=barcelona -O3 -fomit-frame-pointer aesni
g++ -m64 -march=barcelona -O -fomit-frame-pointer aesni
g++ -m64 -march=barcelona -Os -fomit-frame-pointer aesni