Implementation notes: amd64, bigmem, crypto_aead/aes128gcmv1

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_aead
Primitive: aes128gcmv1
TimeImplementationCompilerBenchmark dateSUPERCOP version
4668693refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2015021520141124
4669495refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2015021520141124
4719974refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2015021520141124
4721677refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021520141124
4722229refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2015021520141124
4737359refgcc -funroll-loops -O3 -fomit-frame-pointer2015021520141124
4737790refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2015021520141124
4807226refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2015021520141124
4807232refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2015021520141124
6307167refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021520141124
6314695refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2015021520141124
6367627refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021520141124
6371730refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2015021520141124
6383775refgcc -march=nocona -O3 -fomit-frame-pointer2015021520141124
6415001refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2015021520141124
6415423refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021520141124
6493634refgcc -march=k8 -O3 -fomit-frame-pointer2015021520141124
6544714refgcc -m64 -O3 -fomit-frame-pointer2015021520141124
6557418refgcc -O3 -fomit-frame-pointer2015021520141124
6563015refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2015021520141124
6578677refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2015021520141124
6598768refgcc -march=barcelona -O3 -fomit-frame-pointer2015021520141124
13148352refgcc -funroll-loops -O2 -fomit-frame-pointer2015021520141124
13149262refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2015021520141124
13153801refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2015021520141124
13155297refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2015021520141124
13161284refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2015021520141124
13161955refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2015021520141124
13199630refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021520141124
13210774refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2015021520141124
13211771refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2015021520141124
14029004refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021520141124
14029468refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021520141124
14066888refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021520141124
14070631refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021520141124
14122575refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021520141124
14134914refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021520141124
14238837refgcc -funroll-loops -m64 -O -fomit-frame-pointer2015021520141124
14239186refgcc -funroll-loops -O -fomit-frame-pointer2015021520141124
14242917refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021520141124
22806007refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2015021520141124
22807336refgcc -funroll-loops -Os -fomit-frame-pointer2015021520141124
22807707refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2015021520141124
22808118refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2015021520141124
22808472refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021520141124
22843886refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2015021520141124
22845147refgcc -m64 -O2 -fomit-frame-pointer2015021520141124
22846493refgcc -O2 -fomit-frame-pointer2015021520141124
22866776refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2015021520141124
22875157refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2015021520141124
22953618refgcc -march=barcelona -O2 -fomit-frame-pointer2015021520141124
23017649refgcc -fno-schedule-insns -Os -fomit-frame-pointer2015021520141124
23018640refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2015021520141124
23018674refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2015021520141124
23018884refgcc -march=barcelona -Os -fomit-frame-pointer2015021520141124
23018986refgcc -m64 -Os -fomit-frame-pointer2015021520141124
23019255refgcc -m64 -march=k8 -Os -fomit-frame-pointer2015021520141124
23084357refgcc -march=k8 -Os -fomit-frame-pointer2015021520141124
23087887refgcc -Os -fomit-frame-pointer2015021520141124
23110341refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2015021520141124
23111755refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2015021520141124
23113537refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021520141124
23115260refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021520141124
23150960refgcc -march=nocona -Os -fomit-frame-pointer2015021520141124
23151473refgcc -m64 -march=nocona -Os -fomit-frame-pointer2015021520141124
23177573refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021520141124
23181866refgcc -m64 -march=core2 -Os -fomit-frame-pointer2015021520141124
23292162refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2015021520141124
23297511refgcc -march=k8 -O2 -fomit-frame-pointer2015021520141124
23304351refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2015021520141124
23304872refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021520141124
23305345refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021520141124
23310734refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021520141124
23310799refgcc -m64 -march=nocona -O -fomit-frame-pointer2015021520141124
23326981refgcc -march=nocona -O -fomit-frame-pointer2015021520141124
23391501refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2015021520141124
23457762refgcc -march=nocona -O2 -fomit-frame-pointer2015021520141124
23514511refgcc -march=k8 -O -fomit-frame-pointer2015021520141124
23528513refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021520141124
23530901refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021520141124
23543861refgcc -m64 -march=core2 -O -fomit-frame-pointer2015021520141124
23544737refgcc -m64 -march=barcelona -O -fomit-frame-pointer2015021520141124
23577847refgcc -m64 -march=k8 -O -fomit-frame-pointer2015021520141124
23594416refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021520141124
23595606refgcc -m64 -O -fomit-frame-pointer2015021520141124
23596369refgcc -fno-schedule-insns -O -fomit-frame-pointer2015021520141124
23598828refgcc -O -fomit-frame-pointer2015021520141124
23608917refgcc -march=barcelona -O -fomit-frame-pointer2015021520141124
75224940refgcc2015021520141124
75227247refgcc -funroll-loops2015021520141124
75472730refcc2015021520141124

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: cc
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_decrypt':
decrypt.c: decrypt.c:25: warning: passing argument 2 of 'EVP_DecryptInit_ex' makes pointer from integer without a cast
decrypt.c: /usr/include/openssl/evp.h:587: note: expected 'const struct EVP_CIPHER *' but argument is of type 'int'
decrypt.c: decrypt.c:26: error: 'EVP_CTRL_GCM_SET_IVLEN' undeclared (first use in this function)
decrypt.c: decrypt.c:26: error: (Each undeclared identifier is reported only once
decrypt.c: decrypt.c:26: error: for each function it appears in.)
decrypt.c: decrypt.c:27: error: 'EVP_CTRL_GCM_SET_TAG' undeclared (first use in this function)

Number of similar (compiler,implementation) pairs: 87, namely:
CompilerImplementations
cc openssl
gcc openssl
gcc -O2 -fomit-frame-pointer openssl
gcc -O3 -fomit-frame-pointer openssl
gcc -O -fomit-frame-pointer openssl
gcc -Os -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O2 -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O3 -fomit-frame-pointer openssl
gcc -fno-schedule-insns -O -fomit-frame-pointer openssl
gcc -fno-schedule-insns -Os -fomit-frame-pointer openssl
gcc -funroll-loops openssl
gcc -funroll-loops -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -O -fomit-frame-pointer openssl
gcc -funroll-loops -Os -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer openssl
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer openssl
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer openssl
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer openssl
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer openssl
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer openssl
gcc -m64 -O2 -fomit-frame-pointer openssl
gcc -m64 -O3 -fomit-frame-pointer openssl
gcc -m64 -O -fomit-frame-pointer openssl
gcc -m64 -Os -fomit-frame-pointer openssl
gcc -m64 -march=core2 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -O3 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -O -fomit-frame-pointer openssl
gcc -m64 -march=core2 -Os -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer openssl
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer openssl
gcc -m64 -march=k8 -O2 -fomit-frame-pointer openssl
gcc -m64 -march=k8 -O3 -fomit-frame-pointer openssl
gcc -m64 -march=k8 -O -fomit-frame-pointer openssl
gcc -m64 -march=k8 -Os -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer openssl
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer openssl
gcc -m64 -march=nocona -O2 -fomit-frame-pointer openssl
gcc -m64 -march=nocona -O3 -fomit-frame-pointer openssl
gcc -m64 -march=nocona -O -fomit-frame-pointer openssl
gcc -m64 -march=nocona -Os -fomit-frame-pointer openssl
gcc -march=barcelona -O2 -fomit-frame-pointer openssl
gcc -march=barcelona -O3 -fomit-frame-pointer openssl
gcc -march=barcelona -O -fomit-frame-pointer openssl
gcc -march=barcelona -Os -fomit-frame-pointer openssl
gcc -march=k8 -O2 -fomit-frame-pointer openssl
gcc -march=k8 -O3 -fomit-frame-pointer openssl
gcc -march=k8 -O -fomit-frame-pointer openssl
gcc -march=k8 -Os -fomit-frame-pointer openssl
gcc -march=nocona -O2 -fomit-frame-pointer openssl
gcc -march=nocona -O3 -fomit-frame-pointer openssl
gcc -march=nocona -O -fomit-frame-pointer openssl
gcc -march=nocona -Os -fomit-frame-pointer openssl

Compiler output

Implementation: crypto_aead/aes128gcmv1/openssl
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_decrypt':
decrypt.c: decrypt.c:25: warning: passing argument 2 of 'EVP_DecryptInit_ex' makes pointer from integer without a cast
decrypt.c: /usr/include/openssl/evp.h:587: note: expected 'const struct EVP_CIPHER *' but argument is of type 'int'
decrypt.c: decrypt.c:26: error: 'EVP_CTRL_GCM_SET_IVLEN' undeclared (first use in this function)
decrypt.c: decrypt.c:26: error: (Each undeclared identifier is reported only once
decrypt.c: decrypt.c:26: error: for each function it appears in.)
decrypt.c: decrypt.c:27: error: 'EVP_CTRL_GCM_SET_TAG' undeclared (first use in this function)
decrypt.c: decrypt.c: In function 'crypto_aead_aes128gcmv1_openssl_decrypt':
decrypt.c: decrypt.c:25: warning: passing argument 2 of 'EVP_DecryptInit_ex' makes pointer from integer without a cast
decrypt.c: /usr/include/openssl/evp.h:587: note: expected 'const struct EVP_CIPHER *' but argument is of type 'int'
decrypt.c: decrypt.c:26: error: 'EVP_CTRL_GCM_SET_IVLEN' undeclared (first use in this function)
decrypt.c: decrypt.c:26: error: (Each undeclared identifier is reported only once
decrypt.c: decrypt.c:26: error: for each function it appears in.)
decrypt.c: decrypt.c:27: error: 'EVP_CTRL_GCM_SET_TAG' undeclared (first use in this function)

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