Implementation notes: x86, bulldozer, crypto_stream/cryptmtv3

Computer: bulldozer
Architecture: x86
CPU ID: AuthenticAMD-00600f12-178bfbff
SUPERCOP version: 20120709
Operation: crypto_stream
Primitive: cryptmtv3
TimeImplementationCompilerBenchmark dateSUPERCOP version
12081e/v3gcc -funroll-loops -m32 -march=prescott -O -fomit-frame-pointer2012053020120525
12096e/v3gcc -m32 -march=corei7 -O3 -fomit-frame-pointer2012053020120525
12129e/v3gcc -m32 -march=native -mtune=native -O3 -fomit-frame-pointer2012053020120525
12138e/v3gcc -m32 -march=core2 -msse4 -O3 -fomit-frame-pointer2012053020120525
12138e/v3gcc -m32 -march=corei7-avx -O2 -fomit-frame-pointer2012053020120525
12140e/v3gcc -m32 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012053020120525
12143e/v3gcc -m32 -march=native -mtune=native -O2 -fomit-frame-pointer2012053020120525
12144e/v3gcc -m32 -march=core2 -O2 -fomit-frame-pointer2012053020120525
12144e/v3gcc -m32 -march=k8 -O2 -fomit-frame-pointer2012053020120525
12146e/v3gcc -m32 -march=corei7 -O2 -fomit-frame-pointer2012053020120525
12150e/v3gcc -m32 -march=core-avx-i -O2 -fomit-frame-pointer2012053020120525
12206e/v3gcc -funroll-loops -m32 -march=barcelona -O3 -fomit-frame-pointer2012053020120525
12206e/v3gcc -m32 -march=core2 -msse4 -O2 -fomit-frame-pointer2012053020120525
12214e/v3gcc -funroll-loops -m32 -march=pentium4 -O3 -fomit-frame-pointer2012053020120525
12219e/v3gcc -funroll-loops -m32 -march=barcelona -O -fomit-frame-pointer2012053020120525
12230e/v3gcc -m32 -march=k8 -O3 -fomit-frame-pointer2012053020120525
12236e/v3gcc -m32 -march=core2 -O3 -fomit-frame-pointer2012053020120525
12240e/v3gcc -m32 -march=nocona -O2 -fomit-frame-pointer2012053020120525
12242e/v3gcc -m32 -march=corei7 -O -fomit-frame-pointer2012053020120525
12247e/v3gcc -funroll-loops -m32 -march=barcelona -O2 -fomit-frame-pointer2012053020120525
12287e/v3gcc -funroll-loops -m32 -march=nocona -O2 -fomit-frame-pointer2012053020120525
12294e/v3gcc -funroll-loops -m32 -march=nocona -O -fomit-frame-pointer2012053020120525
12323e/v3gcc -m32 -march=pentium4 -O2 -fomit-frame-pointer2012053020120525
12328e/v3gcc -m32 -march=barcelona -O3 -fomit-frame-pointer2012053020120525
12336e/v3gcc -m32 -march=native -mtune=native -Os -fomit-frame-pointer2012053020120525
12338e/v3gcc -funroll-loops -m32 -march=pentium-m -O3 -fomit-frame-pointer2012053020120525
12346e/v3gcc -funroll-loops -m32 -march=nocona -O3 -fomit-frame-pointer2012053020120525
12350e/v3gcc -funroll-loops -m32 -march=pentium4 -O2 -fomit-frame-pointer2012053020120525
12352e/v3gcc -m32 -march=barcelona -O2 -fomit-frame-pointer2012053020120525
12360e/v3gcc -m32 -march=pentium-m -O3 -fomit-frame-pointer2012053020120525
12361e/v3gcc -funroll-loops -m32 -march=k8 -O3 -fomit-frame-pointer2012053020120525
12370e/v3gcc -m32 -march=nocona -O3 -fomit-frame-pointer2012053020120525
12378e/v3gcc -funroll-loops -m32 -march=k8 -O -fomit-frame-pointer2012053020120525
12379e/v3gcc -m32 -march=prescott -O2 -fomit-frame-pointer2012053020120525
12389e/v3gcc -funroll-loops -m32 -march=prescott -O2 -fomit-frame-pointer2012053020120525
12415e/v3gcc -m32 -march=core2 -msse4.1 -O -fomit-frame-pointer2012053020120525
12431e/v3gcc -m32 -march=nocona -O -fomit-frame-pointer2012053020120525
12446e/v3gcc -m32 -march=prescott -O3 -fomit-frame-pointer2012053020120525
12468e/v3gcc -funroll-loops -m32 -march=pentium-m -O2 -fomit-frame-pointer2012053020120525
12492e/v3gcc -m32 -march=native -mtune=native -O -fomit-frame-pointer2012053020120525
12500e/v3gcc -m32 -march=core2 -msse4 -O -fomit-frame-pointer2012053020120525
12502e/v3gcc -m32 -march=barcelona -O -fomit-frame-pointer2012053020120525
12503e/v3gcc -m32 -march=pentium-m -O2 -fomit-frame-pointer2012053020120525
12518e/v3gcc -m32 -march=corei7-avx -O -fomit-frame-pointer2012053020120525
12522e/v3gcc -funroll-loops -m32 -march=k8 -O2 -fomit-frame-pointer2012053020120525
12564e/v3gcc -funroll-loops -m32 -march=prescott -O3 -fomit-frame-pointer2012053020120525
12585e/v3gcc -m32 -march=core-avx-i -O -fomit-frame-pointer2012053020120525
12687e/v3gcc -funroll-loops -m32 -march=barcelona -Os -fomit-frame-pointer2012053020120525
12692e/v3gcc -m32 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012053020120525
12751e/v3gcc -funroll-loops -m32 -march=pentium4 -O -fomit-frame-pointer2012053020120525
12753e/v3gcc -m32 -march=corei7 -Os -fomit-frame-pointer2012053020120525
12767e/v3gcc -m32 -march=pentium-m -Os -fomit-frame-pointer2012053020120525
12779e/v3gcc -m32 -march=prescott -O -fomit-frame-pointer2012053020120525
12803e/v3gcc -m32 -march=barcelona -Os -fomit-frame-pointer2012053020120525
12807e/v3gcc -m32 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012053020120525
12830e/v3gcc -funroll-loops -m32 -march=k8 -Os -fomit-frame-pointer2012053020120525
12840e/v3gcc -m32 -march=pentium-m -O -fomit-frame-pointer2012053020120525
12844e/v3gcc -m32 -march=pentium4 -O3 -fomit-frame-pointer2012053020120525
12858e/v3gcc -funroll-loops -m32 -march=nocona -Os -fomit-frame-pointer2012053020120525
12878e/v3gcc -funroll-loops -m32 -march=pentium4 -Os -fomit-frame-pointer2012053020120525
12879e/v3gcc -m32 -march=corei7-avx -Os -fomit-frame-pointer2012053020120525
12889e/v3gcc -m32 -march=k8 -Os -fomit-frame-pointer2012053020120525
12897e/v3gcc -m32 -march=prescott -Os -fomit-frame-pointer2012053020120525
12914e/v3gcc -m32 -march=core2 -Os -fomit-frame-pointer2012053020120525
12919e/v3gcc -funroll-loops -m32 -march=prescott -Os -fomit-frame-pointer2012053020120525
12931e/v3gcc -m32 -march=pentium4 -Os -fomit-frame-pointer2012053020120525
12988e/v3gcc -m32 -march=nocona -Os -fomit-frame-pointer2012053020120525
12993e/v3gcc -m32 -march=core2 -O -fomit-frame-pointer2012053020120525
13138e/v3gcc -m32 -march=k8 -O -fomit-frame-pointer2012053020120525
13213e/v3gcc -funroll-loops -m32 -march=pentium-m -O -fomit-frame-pointer2012053020120525
13543e/v3gcc -m32 -march=core2 -msse4 -Os -fomit-frame-pointer2012053020120525
13582e/v3gcc -m32 -march=core-avx-i -Os -fomit-frame-pointer2012053020120525
13691e/v3gcc -m32 -march=corei7-avx -O3 -fomit-frame-pointer2012053020120525
13728e/v3gcc -m32 -march=core-avx-i -O3 -fomit-frame-pointer2012053020120525
13875e/v3gcc -funroll-loops -m32 -march=pentium-m -Os -fomit-frame-pointer2012053020120525
14629e/v3gcc -m32 -march=pentium4 -O -fomit-frame-pointer2012053020120525
18304e/v3gcc -funroll-loops -m32 -march=pentium2 -O -fomit-frame-pointer2012053020120525
18935e/v3gcc -funroll-loops -m32 -O -fomit-frame-pointer2012053020120525
19392e/v3gcc -funroll-loops -m32 -march=pentiumpro -O -fomit-frame-pointer2012053020120525
19663e/v3gcc -funroll-loops -m32 -march=athlon -O2 -fomit-frame-pointer2012053020120525
19772e/v3gcc -funroll-loops -m32 -march=k6-2 -O -fomit-frame-pointer2012053020120525
19843e/v3gcc -funroll-loops -m32 -march=athlon -O -fomit-frame-pointer2012053020120525
19868e/v3gcc -m32 -march=athlon -O3 -fomit-frame-pointer2012053020120525
20004e/v3gcc -funroll-loops -m32 -march=athlon -O3 -fomit-frame-pointer2012053020120525
20025e/v3gcc -funroll-loops -m32 -march=pentium-mmx -O -fomit-frame-pointer2012053020120525
20073e/v3gcc -funroll-loops -m32 -march=k6-3 -O -fomit-frame-pointer2012053020120525
20102e/v3gcc -m32 -O3 -fomit-frame-pointer2012053020120525
20128e/v3gcc -funroll-loops -m32 -O2 -fomit-frame-pointer2012053020120525
20149e/v3gcc -funroll-loops -m32 -O3 -fomit-frame-pointer2012053020120525
20217e/v3gcc -funroll-loops -m32 -march=k6 -O -fomit-frame-pointer2012053020120525
20225e/v3gcc -funroll-loops -m32 -march=pentium2 -O3 -fomit-frame-pointer2012053020120525
20241e/v3gcc -m32 -march=k6-3 -O3 -fomit-frame-pointer2012053020120525
20262e/v3gcc -m32 -march=pentium2 -O3 -fomit-frame-pointer2012053020120525
20350e/v3gcc -funroll-loops -m32 -march=pentium -O -fomit-frame-pointer2012053020120525
20498e/v3gcc -m32 -march=pentiumpro -O3 -fomit-frame-pointer2012053020120525
20573e/v3gcc -m32 -march=k6 -O3 -fomit-frame-pointer2012053020120525
20601e/v3gcc -funroll-loops -m32 -march=i386 -O -fomit-frame-pointer2012053020120525
20664e/v3gcc -funroll-loops -m32 -march=k6-3 -O3 -fomit-frame-pointer2012053020120525
20718e/v3gcc -funroll-loops -m32 -march=k6-2 -O3 -fomit-frame-pointer2012053020120525
20768e/v3gcc -funroll-loops -m32 -march=k6 -O3 -fomit-frame-pointer2012053020120525
20777e/v3gcc -m32 -march=k6-2 -O3 -fomit-frame-pointer2012053020120525
20836e/v3gcc -funroll-loops -m32 -march=i486 -O -fomit-frame-pointer2012053020120525
20932e/v3gcc -m32 -march=pentium2 -O -fomit-frame-pointer2012053020120525
20963e/v3gcc -funroll-loops -m32 -Os -fomit-frame-pointer2012053020120525
21010e/v3gcc -funroll-loops -m32 -march=pentiumpro -O3 -fomit-frame-pointer2012053020120525
21068e/v3gcc -funroll-loops -m32 -march=pentiumpro -O2 -fomit-frame-pointer2012053020120525
21100e/v3gcc -funroll-loops -m32 -march=i386 -Os -fomit-frame-pointer2012053020120525
21128e/v3gcc -funroll-loops -m32 -march=athlon -Os -fomit-frame-pointer2012053020120525
21174e/v3gcc -funroll-loops -m32 -march=pentium-mmx -Os -fomit-frame-pointer2012053020120525
21360e/v3gcc -funroll-loops -m32 -march=pentium -Os -fomit-frame-pointer2012053020120525
21384e/v3gcc -m32 -march=k6-2 -Os -fomit-frame-pointer2012053020120525
21413e/v3gcc -funroll-loops -m32 -march=i386 -O3 -fomit-frame-pointer2012053020120525
21424e/v3gcc -funroll-loops -m32 -march=k6 -O2 -fomit-frame-pointer2012053020120525
21455e/v3gcc -funroll-loops -m32 -march=i486 -O3 -fomit-frame-pointer2012053020120525
21507e/v3gcc -funroll-loops -m32 -march=k6-3 -O2 -fomit-frame-pointer2012053020120525
21548e/v3gcc -funroll-loops -m32 -march=pentium -O3 -fomit-frame-pointer2012053020120525
21556e/v3gcc -m32 -march=pentiumpro -O -fomit-frame-pointer2012053020120525
21566e/v3gcc -funroll-loops -m32 -march=k6-2 -O2 -fomit-frame-pointer2012053020120525
21594e/v3gcc -m32 -march=athlon -O -fomit-frame-pointer2012053020120525
21604e/v3gcc -m32 -O2 -fomit-frame-pointer2012053020120525
21620e/v3gcc -funroll-loops -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2012053020120525
21624e/v3gcc -m32 -Os -fomit-frame-pointer2012053020120525
21639e/v3gcc -m32 -march=i486 -O3 -fomit-frame-pointer2012053020120525
21643e/v3gcc -funroll-loops -m32 -march=pentium2 -O2 -fomit-frame-pointer2012053020120525
21665e/v3gcc -m32 -march=pentium-mmx -O3 -fomit-frame-pointer2012053020120525
21715e/v3gcc -m32 -march=athlon -O2 -fomit-frame-pointer2012053020120525
21777e/v3gcc -funroll-loops -m32 -march=i486 -Os -fomit-frame-pointer2012053020120525
21792e/v3gcc -funroll-loops -m32 -march=pentiumpro -Os -fomit-frame-pointer2012053020120525
21817e/v3gcc -funroll-loops -m32 -march=k6-2 -Os -fomit-frame-pointer2012053020120525
21829e/v3gcc -m32 -march=k6 -Os -fomit-frame-pointer2012053020120525
21834e/v3gcc -m32 -march=i386 -O3 -fomit-frame-pointer2012053020120525
21849e/v3gcc -m32 -march=i486 -Os -fomit-frame-pointer2012053020120525
21861e/v3gcc -m32 -O -fomit-frame-pointer2012053020120525
21916e/v3gcc -funroll-loops -m32 -march=k6 -Os -fomit-frame-pointer2012053020120525
21948e/v3gcc -m32 -march=pentiumpro -Os -fomit-frame-pointer2012053020120525
21965e/v3gcc -m32 -march=pentium2 -Os -fomit-frame-pointer2012053020120525
22014e/v3gcc -funroll-loops -m32 -march=pentium2 -Os -fomit-frame-pointer2012053020120525
22022e/v3gcc -funroll-loops -m32 -march=k6-3 -Os -fomit-frame-pointer2012053020120525
22099e/v3gcc -m32 -march=i386 -Os -fomit-frame-pointer2012053020120525
22129e/v3gcc -m32 -march=athlon -Os -fomit-frame-pointer2012053020120525
22180e/v3gcc -m32 -march=k6-2 -O2 -fomit-frame-pointer2012053020120525
22182e/v3gcc -m32 -march=k6-3 -Os -fomit-frame-pointer2012053020120525
22209e/v3gcc -m32 -march=k6-3 -O2 -fomit-frame-pointer2012053020120525
22234e/v3gcc -m32 -march=k6 -O2 -fomit-frame-pointer2012053020120525
22234e/v3gcc -m32 -march=pentium2 -O2 -fomit-frame-pointer2012053020120525
22281e/v3gcc -m32 -march=pentiumpro -O2 -fomit-frame-pointer2012053020120525
22320e/v3gcc -funroll-loops -m32 -march=i386 -O2 -fomit-frame-pointer2012053020120525
22323e/v3gcc -m32 -march=pentium-mmx -Os -fomit-frame-pointer2012053020120525
22325e/v3gcc -m32 -march=pentium -Os -fomit-frame-pointer2012053020120525
22390e/v3gcc -funroll-loops -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2012053020120525
22412e/v3gcc -funroll-loops -m32 -march=i486 -O2 -fomit-frame-pointer2012053020120525
22462e/v3gcc -funroll-loops -m32 -march=pentium -O2 -fomit-frame-pointer2012053020120525
22553e/v3gcc -m32 -march=pentium -O3 -fomit-frame-pointer2012053020120525
22555e/v3gcc -m32 -march=i386 -O2 -fomit-frame-pointer2012053020120525
22574e/v3gcc -m32 -march=i486 -O2 -fomit-frame-pointer2012053020120525
22578e/v3gcc -m32 -march=k6-2 -O -fomit-frame-pointer2012053020120525
22827e/v3gcc -m32 -march=k6 -O -fomit-frame-pointer2012053020120525
22863e/v3gcc -m32 -march=pentium -O2 -fomit-frame-pointer2012053020120525
22900e/v3gcc -m32 -march=pentium-mmx -O2 -fomit-frame-pointer2012053020120525
22992e/v3gcc -m32 -march=k6-3 -O -fomit-frame-pointer2012053020120525
24340e/v3gcc -m32 -march=pentium-mmx -O -fomit-frame-pointer2012053020120525
24671e/v3gcc -m32 -march=pentium -O -fomit-frame-pointer2012053020120525
25135e/v3gcc -m32 -march=i386 -O -fomit-frame-pointer2012053020120525
25288e/v3gcc -m32 -march=i486 -O -fomit-frame-pointer2012053020120525

Compiler output

Implementation: crypto_stream/cryptmtv3/e/v3
Compiler: gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer
cryptmt-v3.c: In file included from e/sse2.c:5:0,
cryptmt-v3.c: from e/cryptmt-v3.c:66,
cryptmt-v3.c: from cryptmt-v3.c:1:
cryptmt-v3.c: /usr/lib/gcc/x86_64-linux-gnu/4.6/include/emmintrin.h:32:3: error: #error "SSE2 instruction set not enabled"
cryptmt-v3.c: In file included from e/cryptmt-v3.c:66:0,
cryptmt-v3.c: from cryptmt-v3.c:1:
cryptmt-v3.c: e/sse2.c:15:1: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:15:1: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:15:1: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:16:9: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:16:9: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:18:39: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:18:54: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:21:34: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:21:48: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:21:63: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:27:1: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:27:1: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:27:1: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:28:9: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:28:9: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:46:34: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:46:50: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c:46:65: error: unknown type name '__m128i'
cryptmt-v3.c: e/sse2.c: In function 'fast_boot_up':
cryptmt-v3.c: ...

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -funroll-loops -m32 -march=pentium3 -O2 -fomit-frame-pointer e/v3
gcc -funroll-loops -m32 -march=pentium3 -O3 -fomit-frame-pointer e/v3
gcc -funroll-loops -m32 -march=pentium3 -O -fomit-frame-pointer e/v3
gcc -funroll-loops -m32 -march=pentium3 -Os -fomit-frame-pointer e/v3
gcc -m32 -march=pentium3 -O2 -fomit-frame-pointer e/v3
gcc -m32 -march=pentium3 -O3 -fomit-frame-pointer e/v3
gcc -m32 -march=pentium3 -O -fomit-frame-pointer e/v3
gcc -m32 -march=pentium3 -Os -fomit-frame-pointer e/v3