Implementation notes: amd64, mangetsu, crypto_stream/ocelot1

Computer: mangetsu
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: ocelot1
TimeImplementationCompilerBenchmark dateSUPERCOP version
37328refg++ -march=barcelona -O3 -fomit-frame-pointer2014091420140907
37388refg++ -m64 -march=corei7 -O3 -fomit-frame-pointer2014091420140907
37408refg++ -m64 -O3 -fomit-frame-pointer2014091420140907
37456refg++ -O3 -fomit-frame-pointer2014091420140907
37500refg++ -m64 -march=core2 -O3 -fomit-frame-pointer2014091420140907
37516refg++ -m64 -march=core-avx-i -O3 -fomit-frame-pointer2014091420140907
37588refg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014091420140907
38284refg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014091420140907
38684refg++ -m64 -march=nocona -O3 -fomit-frame-pointer2014091420140907
38912refg++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014091420140907
38924refg++ -m64 -march=corei7-avx -O3 -fomit-frame-pointer2014091420140907
39032refg++ -fno-schedule-insns -O3 -fomit-frame-pointer2014091420140907
39076refg++ -march=nocona -O3 -fomit-frame-pointer2014091420140907
39084refg++ -m64 -march=corei7 -O2 -fomit-frame-pointer2014091420140907
39084refg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014091420140907
39092refg++ -m64 -march=core2 -O2 -fomit-frame-pointer2014091420140907
39104refg++ -O2 -fomit-frame-pointer2014091420140907
39172refg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2014091420140907
39236refg++ -fno-schedule-insns -O2 -fomit-frame-pointer2014091420140907
39376refg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014091420140907
39432refg++ -m64 -O2 -fomit-frame-pointer2014091420140907
39480refg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2014091420140907
39572refg++ -m64 -march=k8 -O3 -fomit-frame-pointer2014091420140907
39692refg++ -march=k8 -O3 -fomit-frame-pointer2014091420140907
39952refg++ -march=nocona -O2 -fomit-frame-pointer2014091420140907
40040refg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014091420140907
40248refg++ -m64 -march=nocona -O2 -fomit-frame-pointer2014091420140907
40896refg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014091420140907
40932refg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014091420140907
40952refg++ -m64 -march=core-avx-i -O2 -fomit-frame-pointer2014091420140907
41020refg++ -march=barcelona -O2 -fomit-frame-pointer2014091420140907
41136refg++ -march=k8 -O2 -fomit-frame-pointer2014091420140907
41480refg++ -m64 -march=k8 -O2 -fomit-frame-pointer2014091420140907
41572refg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014091420140907
41584refg++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014091420140907
41680refg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2014091420140907
41708refg++ -m64 -march=corei7 -O -fomit-frame-pointer2014091420140907
41784refg++ -march=nocona -O -fomit-frame-pointer2014091420140907
42200refclang++ -O3 -fwrapv -mavx -fomit-frame-pointer2014091420140907
42204refclang++ -O3 -fwrapv -march=native -fomit-frame-pointer2014091420140907
42556refclang++ -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer2014101820141014
42692refclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101820141014
42696refg++ -m64 -march=barcelona -O -fomit-frame-pointer2014091420140907
42708refg++ -march=barcelona -O -fomit-frame-pointer2014091420140907
42948refclang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014091420140907
43356refg++ -m64 -march=core2 -O -fomit-frame-pointer2014091420140907
43376refg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014091420140907
43388refg++ -m64 -march=core-avx-i -O -fomit-frame-pointer2014091420140907
43484refg++ -m64 -march=corei7-avx -O -fomit-frame-pointer2014091420140907
43904refg++ -m64 -march=corei7-avx -O2 -fomit-frame-pointer2014091420140907
44364refg++ -m64 -march=k8 -O -fomit-frame-pointer2014091420140907
44400refclang++ -O3 -fomit-frame-pointer2014091420140907
44416refg++ -march=k8 -O -fomit-frame-pointer2014091420140907
44444refg++ -fno-schedule-insns -O -fomit-frame-pointer2014091420140907
44652refclang++ -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101820141014
44844refclang++ -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014091420140907
45004refg++ -m64 -march=core2 -Os -fomit-frame-pointer2014091420140907
45096refg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014091420140907
45124refg++ -m64 -march=corei7-avx -Os -fomit-frame-pointer2014091420140907
45140refg++ -m64 -march=core-avx-i -Os -fomit-frame-pointer2014091420140907
45236refg++ -m64 -march=corei7 -Os -fomit-frame-pointer2014091420140907
45264refg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014091420140907
45340refg++ -fno-schedule-insns -Os -fomit-frame-pointer2014091420140907
45344refg++ -march=k8 -Os -fomit-frame-pointer2014091420140907
45452refg++ -m64 -march=k8 -Os -fomit-frame-pointer2014091420140907
45464refg++ -m64 -Os -fomit-frame-pointer2014091420140907
45632refg++ -m64 -O -fomit-frame-pointer2014091420140907
46012refg++ -O -fomit-frame-pointer2014091420140907
46192refg++ -m64 -march=nocona -Os -fomit-frame-pointer2014091420140907
46196refg++ -march=barcelona -Os -fomit-frame-pointer2014091420140907
46572refg++ -m64 -march=nocona -O -fomit-frame-pointer2014091420140907
47468refclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer2014091420140907
47700refg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014091420140907
47836refg++ -Os -fomit-frame-pointer2014091420140907
47952refg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014091420140907
48260refg++ -march=nocona -Os -fomit-frame-pointer2014091420140907
48540refg++ -m64 -march=barcelona -Os -fomit-frame-pointer2014091420140907
118304refg++2014091420140907

Test failure

Implementation: crypto_stream/ocelot1/ref
Compiler: g++ -m64 -march=core-avx2 -O2 -fomit-frame-pointer
error 111

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

Compiler output

Implementation: crypto_stream/ocelot1/ref
Compiler: clang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
Counter.cpp: clang-3.3: warning: argument unused during compilation: '-fpolly'
Ocelot1.cpp: clang-3.3: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang-3.3: warning: argument unused during compilation: '-fpolly'

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang++ -O3 -fwrapv -mavx -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref
clang++ -O3 -fwrapv -mavx -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref

Compiler output

Implementation: crypto_stream/ocelot1/ref
Compiler: clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
Counter.cpp: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
Ocelot1.cpp: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.cpp: clang-3.3: warning: argument unused during compilation: '-mcpu=core-avx2'

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer ref