Implementation notes: amd64, bigmem, crypto_aead/scream10v2

Computer: bigmem
Architecture: amd64
CPU ID: GenuineIntel-000206e6-bfebfbff
SUPERCOP version: 20141124
Operation: crypto_aead
Primitive: scream10v2
TimeImplementationCompilerBenchmark dateSUPERCOP version
446270refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2015021620141124
446298refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2015021620141124
446321refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2015021620141124
446398refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2015021620141124
446482refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2015021620141124
446661refgcc -funroll-loops -O3 -fomit-frame-pointer2015021620141124
446717refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
450398refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
451138refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2015021620141124
452659refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
452806refgcc -march=nocona -O3 -fomit-frame-pointer2015021620141124
452888refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2015021620141124
452939refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
453053refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2015021620141124
453104refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2015021620141124
454184refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2015021620141124
454232refgcc -march=barcelona -O3 -fomit-frame-pointer2015021620141124
454339refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2015021620141124
454498refgcc -O3 -fomit-frame-pointer2015021620141124
454509refgcc -m64 -O3 -fomit-frame-pointer2015021620141124
454575refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2015021620141124
454691refgcc -march=k8 -O3 -fomit-frame-pointer2015021620141124
516553refgcc -funroll-loops -m64 -O -fomit-frame-pointer2015021620141124
516556refgcc -funroll-loops -O -fomit-frame-pointer2015021620141124
518616refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
521648refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2015021620141124
521775refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
521840refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2015021620141124
522758refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
522988refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
523339refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2015021620141124
523388refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2015021620141124
523748refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
523824refgcc -funroll-loops -O2 -fomit-frame-pointer2015021620141124
525609refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
525640refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2015021620141124
526011refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
526266refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2015021620141124
581638refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2015021620141124
581967refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
635081refgcc -march=k8 -O2 -fomit-frame-pointer2015021620141124
636998refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2015021620141124
637769refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2015021620141124
640305refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2015021620141124
640684refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2015021620141124
640705refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2015021620141124
645827refgcc -march=nocona -O2 -fomit-frame-pointer2015021620141124
646255refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2015021620141124
647938refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2015021620141124
648159refgcc -march=barcelona -O2 -fomit-frame-pointer2015021620141124
648168refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2015021620141124
651703refgcc -m64 -O2 -fomit-frame-pointer2015021620141124
651962refgcc -O2 -fomit-frame-pointer2015021620141124
656605refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2015021620141124
656608refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2015021620141124
658280refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2015021620141124
660300refgcc -march=barcelona -Os -fomit-frame-pointer2015021620141124
661108refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
664419refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
666119refgcc -m64 -march=k8 -Os -fomit-frame-pointer2015021620141124
666808refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
666995refgcc -funroll-loops -Os -fomit-frame-pointer2015021620141124
668879refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2015021620141124
670962refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2015021620141124
671605refgcc -m64 -Os -fomit-frame-pointer2015021620141124
671993refgcc -Os -fomit-frame-pointer2015021620141124
673940refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2015021620141124
674447refgcc -march=k8 -Os -fomit-frame-pointer2015021620141124
674693refgcc -fno-schedule-insns -Os -fomit-frame-pointer2015021620141124
675189refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
675223refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2015021620141124
677943refgcc -march=k8 -O -fomit-frame-pointer2015021620141124
679158refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2015021620141124
679479refgcc -m64 -march=nocona -O -fomit-frame-pointer2015021620141124
679864refgcc -m64 -march=core2 -Os -fomit-frame-pointer2015021620141124
680170refgcc -march=nocona -Os -fomit-frame-pointer2015021620141124
680751refgcc -m64 -march=nocona -Os -fomit-frame-pointer2015021620141124
683987refgcc -m64 -march=k8 -O -fomit-frame-pointer2015021620141124
685228refgcc -march=nocona -O -fomit-frame-pointer2015021620141124
687616refgcc -march=barcelona -O -fomit-frame-pointer2015021620141124
687951refgcc -m64 -march=barcelona -O -fomit-frame-pointer2015021620141124
688852refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2015021620141124
691820refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2015021620141124
692898refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2015021620141124
695346refgcc -m64 -march=core2 -O -fomit-frame-pointer2015021620141124
699182refgcc -O -fomit-frame-pointer2015021620141124
699332refgcc -m64 -O -fomit-frame-pointer2015021620141124
699372refgcc -fno-schedule-insns -O -fomit-frame-pointer2015021620141124
1901943refcc2015021620141124
1903858refgcc2015021620141124
1907179refgcc -funroll-loops2015021620141124

Compiler output

Implementation: crypto_aead/scream10v2/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/scream10v2/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/scream10v2/sse
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
scream.c: scream.c: In function 'tweakey_set':
scream.c: scream.c:412: 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