Implementation notes: amd64, bigmem, crypto_aead/scream10v1

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_aead
Primitive: scream10v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
444349refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
444351refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2015021620141124
444731refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021620141124
444799refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021620141124
444810refgcc -funroll-loops -O3 -fomit-frame-pointer2015021620141124
444845refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2015021620141124
447653refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
448621refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021620141124
448953refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2015021620141124
450593refgcc -march=nocona -O3 -fomit-frame-pointer2015021620141124
450747refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
451699refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2015021620141124
452084refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2015021620141124
452285refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
452458refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
453101refgcc -march=k8 -O3 -fomit-frame-pointer2015021620141124
453152refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
453223refgcc -march=barcelona -O3 -fomit-frame-pointer2015021620141124
453288refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
453538refgcc -m64 -O3 -fomit-frame-pointer2015021620141124
453611refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
453640refgcc -O3 -fomit-frame-pointer2015021620141124
517514refgcc -funroll-loops -O -fomit-frame-pointer2015021620141124
517528refgcc -funroll-loops -m64 -O -fomit-frame-pointer2015021620141124
517945refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
520769refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021620141124
521291refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
521390refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021620141124
521656refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
522801refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
522844refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2015021620141124
523322refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2015021620141124
523478refgcc -funroll-loops -O2 -fomit-frame-pointer2015021620141124
523583refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
524753refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2015021620141124
524912refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
524965refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2015021620141124
525099refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
582907refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021620141124
582967refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
630853refgcc -march=nocona -O2 -fomit-frame-pointer2015021620141124
631320refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
633967refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
636721refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021620141124
637140refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021620141124
637262refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021620141124
641087refgcc -march=k8 -O2 -fomit-frame-pointer2015021620141124
642999refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
645544refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2015021620141124
648207refgcc -m64 -O2 -fomit-frame-pointer2015021620141124
648244refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
648298refgcc -O2 -fomit-frame-pointer2015021620141124
648598refgcc -march=barcelona -O2 -fomit-frame-pointer2015021620141124
657883refgcc -Os -fomit-frame-pointer2015021620141124
658557refgcc -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
661824refgcc -m64 -Os -fomit-frame-pointer2015021620141124
662459refgcc -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
662507refgcc -march=nocona -Os -fomit-frame-pointer2015021620141124
662677refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021620141124
664178refgcc -march=barcelona -Os -fomit-frame-pointer2015021620141124
664558refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
665221refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2015021620141124
665448refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
665717refgcc -march=k8 -Os -fomit-frame-pointer2015021620141124
666179refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
666210refgcc -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
667885refgcc -m64 -march=core2 -Os -fomit-frame-pointer2015021620141124
667896refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021620141124
668310refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021620141124
668443refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
673367refgcc -funroll-loops -Os -fomit-frame-pointer2015021620141124
674812refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2015021620141124
675274refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2015021620141124
675291refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
678048refgcc -march=barcelona -O -fomit-frame-pointer2015021620141124
679362refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2015021620141124
681088refgcc -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
683828refgcc -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
683930refgcc -march=nocona -O -fomit-frame-pointer2015021620141124
688784refgcc -m64 -march=core2 -O -fomit-frame-pointer2015021620141124
690265refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021620141124
693852refgcc -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
694178refgcc -m64 -O -fomit-frame-pointer2015021620141124
694181refgcc -O -fomit-frame-pointer2015021620141124
695572refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021620141124
695632refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021620141124
701253refgcc -march=k8 -O -fomit-frame-pointer2015021620141124
702225refgcc -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
1908576refcc2015021620141124
1908757refgcc -funroll-loops2015021620141124
1912534refgcc2015021620141124

Compiler output

Implementation: crypto_aead/scream10v1/sse
Compiler: cc
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:212: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...

Number of similar (compiler,implementation) pairs: 71, namely:
CompilerImplementations
cc sse
gcc sse
gcc -O2 -fomit-frame-pointer sse
gcc -O3 -fomit-frame-pointer sse
gcc -O -fomit-frame-pointer sse
gcc -Os -fomit-frame-pointer sse
gcc -fno-schedule-insns -O2 -fomit-frame-pointer sse
gcc -fno-schedule-insns -O3 -fomit-frame-pointer sse
gcc -fno-schedule-insns -O -fomit-frame-pointer sse
gcc -fno-schedule-insns -Os -fomit-frame-pointer sse
gcc -funroll-loops sse
gcc -funroll-loops -O2 -fomit-frame-pointer sse
gcc -funroll-loops -O3 -fomit-frame-pointer sse
gcc -funroll-loops -O -fomit-frame-pointer sse
gcc -funroll-loops -Os -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer sse
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer sse
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer sse
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer sse
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer sse
gcc -m64 -O2 -fomit-frame-pointer sse
gcc -m64 -O3 -fomit-frame-pointer sse
gcc -m64 -O -fomit-frame-pointer sse
gcc -m64 -Os -fomit-frame-pointer sse
gcc -m64 -march=k8 -O2 -fomit-frame-pointer sse
gcc -m64 -march=k8 -O3 -fomit-frame-pointer sse
gcc -m64 -march=k8 -O -fomit-frame-pointer sse
gcc -m64 -march=k8 -Os -fomit-frame-pointer sse
gcc -m64 -march=nocona -O2 -fomit-frame-pointer sse
gcc -m64 -march=nocona -O3 -fomit-frame-pointer sse
gcc -m64 -march=nocona -O -fomit-frame-pointer sse
gcc -m64 -march=nocona -Os -fomit-frame-pointer sse
gcc -march=barcelona -O2 -fomit-frame-pointer sse
gcc -march=barcelona -O3 -fomit-frame-pointer sse
gcc -march=barcelona -O -fomit-frame-pointer sse
gcc -march=barcelona -Os -fomit-frame-pointer sse
gcc -march=k8 -O2 -fomit-frame-pointer sse
gcc -march=k8 -O3 -fomit-frame-pointer sse
gcc -march=k8 -O -fomit-frame-pointer sse
gcc -march=k8 -Os -fomit-frame-pointer sse
gcc -march=nocona -O2 -fomit-frame-pointer sse
gcc -march=nocona -O3 -fomit-frame-pointer sse
gcc -march=nocona -O -fomit-frame-pointer sse
gcc -march=nocona -Os -fomit-frame-pointer sse

Compiler output

Implementation: crypto_aead/scream10v1/sse
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:212: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...
scream.c: scream.c: In function 'LBox16P':
scream.c: scream.c:185: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:186: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:190: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:191: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:198: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:199: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:203: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:204: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:211: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:212: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:216: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:217: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:224: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:225: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:229: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:230: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c: In function 'LBoxInv16P':
scream.c: scream.c:280: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:281: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:285: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:286: error: incompatible types when assigning to type 'v16qi' from type 'int'
scream.c: scream.c:293: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:294: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: scream.c:298: error: invalid operands to binary ^ (have 'v16qi' and 'int')
scream.c: ...

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

Compiler output

Implementation: crypto_aead/scream10v1/sse
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:411: error: subscripted value is neither array nor pointer

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core2 -O3 -fomit-frame-pointer sse
gcc -m64 -march=core2 -O -fomit-frame-pointer sse
gcc -m64 -march=core2 -Os -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer sse
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer sse
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer sse