Implementation notes: amd64, hydra1, crypto_aead/joltikneq12864v1

Computer: hydra1
Architecture: amd64
CPU ID: AuthenticAMD-00100fa0-178bfbff
SUPERCOP version: 20161220
Operation: crypto_aead
Primitive: joltikneq12864v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
9217959refgcc -funroll-loops -O3 -fomit-frame-pointer2016101720161009
9218198refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016101720161009
9218248refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016101720161009
9219590refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016101720161009
9219629refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016101720161009
9219786refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016101720161009
9220020refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016101720161009
9273890refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016101720161009
9274371refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016101720161009
9324176refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016101720161009
9324372refgcc -march=nocona -O3 -fomit-frame-pointer2016101720161009
9357029refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016101720161009
9357538refgcc -march=k8 -O3 -fomit-frame-pointer2016101720161009
9357909refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016101720161009
9357960refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016101720161009
9358214refgcc -march=barcelona -O3 -fomit-frame-pointer2016101720161009
9360128refgcc -m64 -O3 -fomit-frame-pointer2016101720161009
9360208refgcc -O3 -fomit-frame-pointer2016101720161009
9360727refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016101720161009
9379837refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016101720161009
12391976refclang -O3 -fomit-frame-pointer -Qunused-arguments2016101720161009
12419570refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101720161009
12419848refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101720161009
12419867refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101720161009
13040741refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016101720161009
13040762refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016101720161009
15859799refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016101720161009
15859834refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016101720161009
15979513refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016101720161009
15979753refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016101720161009
16028760refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016101720161009
16028927refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016101720161009
16051976refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016101720161009
16052027refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016101720161009
16052773refgcc -funroll-loops -O2 -fomit-frame-pointer2016101720161009
16542080refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016101720161009
16547146refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016101720161009
16740072refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016101720161009
16931158refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016101720161009
16931248refgcc -funroll-loops -O -fomit-frame-pointer2016101720161009
16934119refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016101720161009
17005816refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016101720161009
17017626refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016101720161009
17097754refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016101720161009
21075766refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016101720161009
21075945refgcc -march=nocona -O2 -fomit-frame-pointer2016101720161009
21254594refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016101720161009
21254715refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016101720161009
21254983refgcc -march=k8 -O2 -fomit-frame-pointer2016101720161009
21258306refgcc -march=barcelona -O2 -fomit-frame-pointer2016101720161009
21278677refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016101720161009
21380426refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016101720161009
22420714refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016101720161009
22424643refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016101720161009
22500431refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016101720161009
22766189refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016101720161009
22849768refgcc -O -fomit-frame-pointer2016101720161009
22956920refgcc -fno-schedule-insns -O -fomit-frame-pointer2016101720161009
22961198refgcc -O2 -fomit-frame-pointer2016101720161009
22961814refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016101720161009
22998611refgcc -m64 -O -fomit-frame-pointer2016101720161009
23062006refgcc -m64 -O2 -fomit-frame-pointer2016101720161009
23542790refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016101720161009
23556998refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016101720161009
23563312refgcc -march=barcelona -O -fomit-frame-pointer2016101720161009
23609413refgcc -m64 -march=k8 -O -fomit-frame-pointer2016101720161009
23631048refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016101720161009
23666725refgcc -march=nocona -O -fomit-frame-pointer2016101720161009
23666960refgcc -m64 -march=nocona -O -fomit-frame-pointer2016101720161009
23686394refgcc -march=k8 -O -fomit-frame-pointer2016101720161009
24952915refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016101720161009
24953006refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016101720161009
24953288refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016101720161009
24953439refgcc -m64 -march=core2 -O -fomit-frame-pointer2016101720161009
25702626refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016101720161009
25705712refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016101720161009
25911931refgcc -funroll-loops -Os -fomit-frame-pointer2016101720161009
25912009refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016101720161009
25912155refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016101720161009
25919579refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016101720161009
25919783refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016101720161009
25924404refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016101720161009
25933083refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016101720161009
26635189refgcc -march=nocona -Os -fomit-frame-pointer2016101720161009
26650899refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016101720161009
27579240refgcc -march=k8 -Os -fomit-frame-pointer2016101720161009
27583272refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016101720161009
27583858refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016101720161009
27584347refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016101720161009
27585955refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016101720161009
27693544refgcc -Os -fomit-frame-pointer2016101720161009
27724938refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016101720161009
27726359refgcc -m64 -Os -fomit-frame-pointer2016101720161009
27729618refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016101720161009
27731589refgcc -march=barcelona -Os -fomit-frame-pointer2016101720161009
27732436refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016101720161009
27736310refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016101720161009
27742478refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016101720161009
71159771refcc2016101720161009
71255360refgcc2016101720161009
71430946refgcc -funroll-loops2016101720161009

Test failure

Implementation: crypto_aead/joltikneq12864v1/vperm
Compiler: gcc -m64 -march=core2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 14, namely:
CompilerImplementations
gcc -m64 -march=core2 -O2 -fomit-frame-pointer vperm
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref vperm
gcc -m64 -march=core2 -O -fomit-frame-pointer vperm
gcc -m64 -march=core2 -Os -fomit-frame-pointer vperm
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer vperm
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer vperm
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer vperm
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer vperm
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer vperm
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer vperm
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer vperm
gcc -m64 -march=corei7 -O -fomit-frame-pointer vperm
gcc -m64 -march=corei7 -Os -fomit-frame-pointer vperm

Compiler output

Implementation: crypto_aead/joltikneq12864v1/vperm
Compiler: cc
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^

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

Compiler output

Implementation: crypto_aead/joltikneq12864v1/vperm
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
joltik.c: joltik.c:29:3: error: "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^
joltik.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments vperm
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments vperm
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments vperm

Compiler output

Implementation: crypto_aead/joltikneq12864v1/vperm
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^
joltik.c: joltik.c:29:3: error: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c: ^

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