Implementation notes: x86, margaux, crypto_core/salsa208

Computer: margaux
Architecture: x86
CPU ID: GenuineIntel-000006fb-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_core
Primitive: salsa208
TimeImplementationCompilerBenchmark dateSUPERCOP version
558refgcc -m32 -march=i386 -O -fomit-frame-pointer2017072720170725
558refgcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2017072720170725
567refgcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2017072720170725
567refgcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2017072720170725
576refgcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2017072720170725
576refgcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2017072720170725
576refgcc -m32 -march=athlon -O -fomit-frame-pointer2017072720170725
576refgcc -m32 -march=core2 -O -fomit-frame-pointer2017072720170725
576refgcc -m32 -march=k8 -O -fomit-frame-pointer2017072720170725
585refgcc -funroll-loops -m32 -O -fomit-frame-pointer2017072720170725
585refgcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2017072720170725
585refgcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2017072720170725
585refgcc -m32 -march=core-avx-i -O -fomit-frame-pointer2017072720170725
585refgcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2017072720170725
585refgcc -m32 -march=corei7-avx -O -fomit-frame-pointer2017072720170725
585refgcc -m32 -march=k6 -O -fomit-frame-pointer2017072720170725
585refgcc -m32 -march=nocona -O -fomit-frame-pointer2017072720170725
594refgcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2017072720170725
594refgcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2017072720170725
594refgcc -m32 -march=i486 -O -fomit-frame-pointer2017072720170725
594refgcc -m32 -march=pentium4 -O -fomit-frame-pointer2017072720170725
603refgcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2017072720170725
603refgcc -m32 -march=barcelona -O -fomit-frame-pointer2017072720170725
603refgcc -m32 -march=corei7 -O -fomit-frame-pointer2017072720170725
603refgcc -m32 -march=pentium-m -O -fomit-frame-pointer2017072720170725
612refgcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2017072720170725
612refgcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2017072720170725
612refgcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2017072720170725
612refgcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2017072720170725
612refgcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2017072720170725
612refgcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer2017072720170725
612refgcc -m32 -march=prescott -O -fomit-frame-pointer2017072720170725
621refgcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2017072720170725
621refgcc -m32 -O -fomit-frame-pointer2017072720170725
621refgcc -m32 -march=k6-2 -O -fomit-frame-pointer2017072720170725
621refgcc -m32 -march=k6-3 -O -fomit-frame-pointer2017072720170725
621refgcc -m32 -march=pentium3 -O -fomit-frame-pointer2017072720170725
621refgcc -m32 -march=pentiumpro -O -fomit-frame-pointer2017072720170725
630refgcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2017072720170725
630refgcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2017072720170725
630refgcc -m32 -march=pentium2 -O -fomit-frame-pointer2017072720170725
648refgcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2017072720170725
648refgcc -m32 -march=pentium -O -fomit-frame-pointer2017072720170725
1017refgcc -m32 -march=pentium-m -Os -fomit-frame-pointer2017072720170725
1017refgcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2017072720170725
1026refgcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2017072720170725
1026refgcc -m32 -march=pentium3 -Os -fomit-frame-pointer2017072720170725
1026refgcc -m32 -march=pentium -Os -fomit-frame-pointer2017072720170725
1035refgcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017072720170725
1035refgcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2017072720170725
1035refgcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2017072720170725
1035refgcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2017072720170725
1035refgcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2017072720170725
1044refgcc -funroll-loops -m32 -Os -fomit-frame-pointer2017072720170725
1044refgcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2017072720170725
1044refgcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2017072720170725
1044refgcc -m32 -Os -fomit-frame-pointer2017072720170725
1044refgcc -m32 -march=corei7 -Os -fomit-frame-pointer2017072720170725
1044refgcc -m32 -march=i386 -Os -fomit-frame-pointer2017072720170725
1044refgcc -m32 -march=i486 -Os -fomit-frame-pointer2017072720170725
1044refgcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2017072720170725
1053refgcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2017072720170725
1053refgcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2017072720170725
1053refgcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2017072720170725
1053refgcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2017072720170725
1053refgcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer2017072720170725
1053refgcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=athlon -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=barcelona -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=core2 -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=k6 -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=nocona -Os -fomit-frame-pointer2017072720170725
1053refgcc -m32 -march=pentium2 -Os -fomit-frame-pointer2017072720170725
1062refgcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2017072720170725
1062refgcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2017072720170725
1062refgcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2017072720170725
1062refgcc -m32 -march=k6-2 -Os -fomit-frame-pointer2017072720170725
1062refgcc -m32 -march=k6-3 -Os -fomit-frame-pointer2017072720170725
1062refgcc -m32 -march=k8 -Os -fomit-frame-pointer2017072720170725
1062refgcc -m32 -march=pentium4 -Os -fomit-frame-pointer2017072720170725
1062refgcc -m32 -march=prescott -Os -fomit-frame-pointer2017072720170725
1071refgcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2017072720170725
1071refgcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2017072720170725
1071refgcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2017072720170725
1071refgcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2017072720170725
1080refgcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2017072720170725
1080refgcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2017072720170725
1080refgcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2017072720170725
1080refgcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2017072720170725
1080refgcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2017072720170725
1080refgcc -m32 -march=k6 -O2 -fomit-frame-pointer2017072720170725
1080refgcc -m32 -march=k6 -O3 -fomit-frame-pointer2017072720170725
1089refgcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer2017072720170725
1089refgcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2017072720170725
1089refgcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2017072720170725
1098refgcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2017072720170725
1098refgcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2017072720170725
1098refgcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2017072720170725
1098refgcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2017072720170725
1098refgcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer2017072720170725
1098refgcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2017072720170725
1098refgcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017072720170725
1107refgcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2017072720170725
1107refgcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2017072720170725
1107refgcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017072720170725
1107refgcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2017072720170725
1107refgcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2017072720170725
1107refgcc -m32 -march=pentium3 -O3 -fomit-frame-pointer2017072720170725
1116refgcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2017072720170725
1116refgcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2017072720170725
1116refgcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2017072720170725
1125refgcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -O3 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=barcelona -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=k8 -O3 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2017072720170725
1125refgcc -m32 -march=pentium3 -O2 -fomit-frame-pointer2017072720170725
1134refgcc -funroll-loops -m32 -O2 -fomit-frame-pointer2017072720170725
1134refgcc -funroll-loops -m32 -O3 -fomit-frame-pointer2017072720170725
1134refgcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2017072720170725
1134refgcc -m32 -march=athlon -O2 -fomit-frame-pointer2017072720170725
1134refgcc -m32 -march=athlon -O3 -fomit-frame-pointer2017072720170725
1134refgcc -m32 -march=barcelona -O3 -fomit-frame-pointer2017072720170725
1134refgcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2017072720170725
1134refgcc -m32 -march=core2 -O2 -fomit-frame-pointer2017072720170725
1143refgcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2017072720170725
1143refgcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2017072720170725
1143refgcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2017072720170725
1143refgcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2017072720170725
1143refgcc -m32 -O2 -fomit-frame-pointer2017072720170725
1143refgcc -m32 -march=core2 -O3 -fomit-frame-pointer2017072720170725
1152refgcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2017072720170725
1152refgcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2017072720170725
1152refgcc -m32 -march=corei7 -O2 -fomit-frame-pointer2017072720170725
1152refgcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2017072720170725
1152refgcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2017072720170725
1161refgcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2017072720170725
1161refgcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017072720170725
1161refgcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2017072720170725
1161refgcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017072720170725
1161refgcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2017072720170725
1161refgcc -m32 -march=pentium -O2 -fomit-frame-pointer2017072720170725
1170refgcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2017072720170725
1170refgcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2017072720170725
1170refgcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2017072720170725
1170refgcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2017072720170725
1170refgcc -m32 -march=nocona -O3 -fomit-frame-pointer2017072720170725
1170refgcc -m32 -march=pentium -O3 -fomit-frame-pointer2017072720170725
1170refgcc -m32 -march=prescott -O2 -fomit-frame-pointer2017072720170725
1170refgcc -m32 -march=prescott -O3 -fomit-frame-pointer2017072720170725
1179refgcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2017072720170725
1179refgcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2017072720170725
1179refgcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2017072720170725
1179refgcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2017072720170725
1179refgcc -m32 -march=i386 -O3 -fomit-frame-pointer2017072720170725
1179refgcc -m32 -march=i486 -O2 -fomit-frame-pointer2017072720170725
1179refgcc -m32 -march=i486 -O3 -fomit-frame-pointer2017072720170725
1179refgcc -m32 -march=k8 -O2 -fomit-frame-pointer2017072720170725
1179refgcc -m32 -march=nocona -O2 -fomit-frame-pointer2017072720170725
1188refgcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2017072720170725
1188refgcc -m32 -march=i386 -O2 -fomit-frame-pointer2017072720170725

Test failure

Implementation: crypto_core/salsa208/ref
Compiler: gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
gcc -m32 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m32 -march=core-avx2 -Os -fomit-frame-pointer ref