Implementation notes: amd64, glyme, crypto_aead/joltikneq8048v1

Computer: glyme
Architecture: amd64
CPU ID: GenuineIntel-00020652-bfebfbff
SUPERCOP version: 201720170105
Operation: crypto_aead
Primitive: joltikneq8048v1
TimeImplementationCompilerBenchmark dateSUPERCOP version
272948vpermgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020420170105
272956vpermgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020420170105
273144vpermgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020420170105
273304vpermgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020420170105
274380vpermgcc -m64 -march=core2 -O -fomit-frame-pointer2017020420170105
274676vpermclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
274708vpermclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020420170105
274772vpermgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020420170105
274788vpermgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020420170105
274812vpermgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020420170105
274840vpermgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020420170105
274848vpermgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020420170105
274904vpermgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020420170105
274932vpermgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020420170105
274956vpermgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020420170105
275060vpermgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020420170105
275324vpermgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020420170105
275384vpermgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020420170105
275400vpermgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020420170105
275460vpermgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020420170105
279256vpermgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020420170105
279264vpermgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020420170105
279384vpermgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020420170105
279388vpermgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020420170105
279452vpermgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020420170105
281112vpermgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020420170105
3882292refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2017020420170105
3884380refgcc -O3 -fomit-frame-pointer2017020420170105
3884644refgcc -m64 -O3 -fomit-frame-pointer2017020420170105
3885328refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2017020420170105
3885356refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2017020420170105
3885376refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2017020420170105
3885836refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2017020420170105
3886324refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2017020420170105
3888216refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2017020420170105
3888456refgcc -march=k8 -O3 -fomit-frame-pointer2017020420170105
3893028refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2017020420170105
3894664refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2017020420170105
3894940refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2017020420170105
3895160refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2017020420170105
3895660refgcc -funroll-loops -O3 -fomit-frame-pointer2017020420170105
3898028refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2017020420170105
3898096refgcc -march=barcelona -O3 -fomit-frame-pointer2017020420170105
3898292refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2017020420170105
3899116refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2017020420170105
3899756refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2017020420170105
3962776refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2017020420170105
3965628refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2017020420170105
3967736refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2017020420170105
3969208refgcc -march=nocona -O3 -fomit-frame-pointer2017020420170105
4478008refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
4478224refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2017020420170105
4713360refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
4713440refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
4713476refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2017020420170105
4728300refclang -O3 -fomit-frame-pointer -Qunused-arguments2017020420170105
6687544refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2017020420170105
6718160refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2017020420170105
6741416refgcc -funroll-loops -O2 -fomit-frame-pointer2017020420170105
6751972refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2017020420170105
6760104refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2017020420170105
6770820refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2017020420170105
6772344refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2017020420170105
6772996refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2017020420170105
6788824refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2017020420170105
7872372refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2017020420170105
7900132refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2017020420170105
8090152refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2017020420170105
8091080refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2017020420170105
8295092refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2017020420170105
8295748refgcc -funroll-loops -m64 -O -fomit-frame-pointer2017020420170105
8298880refgcc -funroll-loops -O -fomit-frame-pointer2017020420170105
8313752refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2017020420170105
8341068refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2017020420170105
8582276refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2017020420170105
8586268refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2017020420170105
8598608refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2017020420170105
8634272refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2017020420170105
8637132refgcc -march=barcelona -O2 -fomit-frame-pointer2017020420170105
8637448refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2017020420170105
8638284refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017020420170105
8638536refgcc -march=k8 -O2 -fomit-frame-pointer2017020420170105
8638932refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2017020420170105
8639092refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2017020420170105
8640220refgcc -m64 -O2 -fomit-frame-pointer2017020420170105
8646556refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2017020420170105
8669616refgcc -O2 -fomit-frame-pointer2017020420170105
9231196refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2017020420170105
9299168refgcc -march=nocona -O2 -fomit-frame-pointer2017020420170105
9624388refgcc -fno-schedule-insns -Os -fomit-frame-pointer2017020420170105
9631080refgcc -m64 -Os -fomit-frame-pointer2017020420170105
9632464refgcc -Os -fomit-frame-pointer2017020420170105
9632488refgcc -march=barcelona -Os -fomit-frame-pointer2017020420170105
9635092refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2017020420170105
9635772refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2017020420170105
9640172refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2017020420170105
9640372refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2017020420170105
9658760refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2017020420170105
9677820refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2017020420170105
9694304refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2017020420170105
9700212refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017020420170105
9702196refgcc -m64 -march=core2 -Os -fomit-frame-pointer2017020420170105
9702968refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2017020420170105
9703448refgcc -march=k8 -Os -fomit-frame-pointer2017020420170105
9706208refgcc -m64 -march=k8 -Os -fomit-frame-pointer2017020420170105
9744580refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2017020420170105
9754840refgcc -funroll-loops -Os -fomit-frame-pointer2017020420170105
9842332refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2017020420170105
9847968refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2017020420170105
9855908refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2017020420170105
9903652refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2017020420170105
9918640refgcc -march=nocona -Os -fomit-frame-pointer2017020420170105
9919120refgcc -m64 -march=nocona -Os -fomit-frame-pointer2017020420170105
10649752refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2017020420170105
10649952refgcc -m64 -march=corei7 -O -fomit-frame-pointer2017020420170105
10650340refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2017020420170105
10652436refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2017020420170105
10658676refgcc -m64 -march=core2 -O -fomit-frame-pointer2017020420170105
10695608refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2017020420170105
10862352refgcc -march=k8 -O -fomit-frame-pointer2017020420170105
10864360refgcc -m64 -march=k8 -O -fomit-frame-pointer2017020420170105
10927824refgcc -march=nocona -O -fomit-frame-pointer2017020420170105
10933440refgcc -m64 -march=nocona -O -fomit-frame-pointer2017020420170105
11844808refgcc -m64 -march=barcelona -O -fomit-frame-pointer2017020420170105
11845784refgcc -fno-schedule-insns -O -fomit-frame-pointer2017020420170105
11846776refgcc -march=barcelona -O -fomit-frame-pointer2017020420170105
11849100refgcc -O -fomit-frame-pointer2017020420170105
11874080refgcc -m64 -O -fomit-frame-pointer2017020420170105
29758772refgcc2017020420170105
29783440refgcc -funroll-loops2017020420170105
33320728refcc2017020420170105

Compiler output

Implementation: crypto_aead/joltikneq8048v1/vperm
Compiler: cc
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: 5, namely:
CompilerImplementations
cc vperm
clang -O3 -fomit-frame-pointer -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/joltikneq8048v1/vperm
Compiler: gcc
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: 70, namely:
CompilerImplementations
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=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=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/joltikneq8048v1/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