Implementation notes: amd64, hydra2, crypto_stream/ocelot1

Computer: hydra2
Architecture: amd64
CPU ID: GenuineIntel-000206c2-bfebfbff
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: ocelot1
TimeImplementationCompilerBenchmark dateSUPERCOP version
38648refg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014052920140525
39832refg++ -m64 -march=core2 -O3 -fomit-frame-pointer2014052920140525
39844refg++ -fno-schedule-insns -O3 -fomit-frame-pointer2014052920140525
39892refg++ -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2014052920140525
39904refg++ -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2014052920140525
39948refg++ -m64 -O3 -fomit-frame-pointer2014052920140525
39952refg++ -O3 -fomit-frame-pointer2014052920140525
40008refg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014052920140525
40068refg++ -m64 -march=corei7 -O3 -fomit-frame-pointer2014052920140525
40460refg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2014052920140525
40468refg++ -m64 -march=k8 -O3 -fomit-frame-pointer2014052920140525
40472refg++ -march=barcelona -O3 -fomit-frame-pointer2014052920140525
40536refg++ -march=k8 -O3 -fomit-frame-pointer2014052920140525
40812refg++ -m64 -march=nocona -O2 -fomit-frame-pointer2014052920140525
40856refg++ -march=nocona -O2 -fomit-frame-pointer2014052920140525
40888refg++ -march=barcelona -O2 -fomit-frame-pointer2014052920140525
40896refg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2014052920140525
41260refg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014052920140525
41268refg++ -m64 -march=core2 -O2 -fomit-frame-pointer2014052920140525
41268refg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014052920140525
41280refg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014052920140525
41300refg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014052920140525
41300refg++ -m64 -march=corei7 -O2 -fomit-frame-pointer2014052920140525
41360refg++ -O2 -fomit-frame-pointer2014052920140525
41364refg++ -fno-schedule-insns -O2 -fomit-frame-pointer2014052920140525
41376refg++ -m64 -O2 -fomit-frame-pointer2014052920140525
42324refg++ -m64 -march=k8 -O2 -fomit-frame-pointer2014052920140525
42376refg++ -march=k8 -O2 -fomit-frame-pointer2014052920140525
42520refg++ -m64 -march=nocona -O3 -fomit-frame-pointer2014052920140525
42656refg++ -march=nocona -O3 -fomit-frame-pointer2014052920140525
42992refg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014052920140525
43600refg++ -m64 -march=k8 -O -fomit-frame-pointer2014052920140525
43804refg++ -m64 -march=barcelona -O -fomit-frame-pointer2014052920140525
43872refg++ -march=barcelona -O -fomit-frame-pointer2014052920140525
43952refg++ -march=k8 -O -fomit-frame-pointer2014052920140525
44416refg++ -march=nocona -O -fomit-frame-pointer2014052920140525
44460refg++ -m64 -march=core2 -O -fomit-frame-pointer2014052920140525
44516refg++ -O -fomit-frame-pointer2014052920140525
44532refg++ -m64 -march=corei7 -O -fomit-frame-pointer2014052920140525
44540refg++ -m64 -march=nocona -O -fomit-frame-pointer2014052920140525
44580refg++ -fno-schedule-insns -O -fomit-frame-pointer2014052920140525
44720refclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101420141014
44764refclang++ -O3 -fwrapv -march=native -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071220140622
44776refg++ -m64 -O -fomit-frame-pointer2014052920140525
44776refg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2014052920140525
44816refg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014052920140525
44876refclang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071220140622
44880refclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer2014071220140622
44956refclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101420141014
44968refg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014052920140525
44976refclang++ -O3 -fwrapv -march=native -fomit-frame-pointer2014071220140622
46076refclang++ -O3 -fomit-frame-pointer2014071220140622
49112refg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014052920140525
49532refg++ -march=nocona -Os -fomit-frame-pointer2014052920140525
49672refg++ -m64 -march=nocona -Os -fomit-frame-pointer2014052920140525
49940refg++ -m64 -march=barcelona -Os -fomit-frame-pointer2014052920140525
49972refg++ -m64 -Os -fomit-frame-pointer2014052920140525
50000refg++ -march=barcelona -Os -fomit-frame-pointer2014052920140525
50044refg++ -Os -fomit-frame-pointer2014052920140525
50108refg++ -fno-schedule-insns -Os -fomit-frame-pointer2014052920140525
50192refg++ -m64 -march=k8 -Os -fomit-frame-pointer2014052920140525
50200refg++ -march=k8 -Os -fomit-frame-pointer2014052920140525
50640refg++ -m64 -march=corei7 -Os -fomit-frame-pointer2014052920140525
50760refg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014052920140525
50792refg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014052920140525
51616refg++ -m64 -march=core2 -Os -fomit-frame-pointer2014052920140525
51988refg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014052920140525
125400refg++2014052920140525

Compiler output

Implementation: crypto_stream/ocelot1/ref
Compiler: clang++ -O3 -fomit-frame-pointer
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang++ -O3 -fomit-frame-pointer ref
clang++ -O3 -fwrapv -march=native -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: warning: argument unused during compilation: '-fpolly'
Counter.cpp: clang: warning: argument unused during compilation: '-fvectorize'
Counter.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
Counter.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fpolly'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fvectorize'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.cpp: clang: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang: warning: argument unused during compilation: '-fvectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=native -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: warning: argument unused during compilation: '-mcpu=core-avx2'
Counter.cpp: clang: warning: argument unused during compilation: '-mavx2'
Counter.cpp: clang: warning: argument unused during compilation: '-mpclmul'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mavx2'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mpclmul'
stream.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-mpclmul'
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

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

Compiler output

Implementation: crypto_stream/ocelot1/ref
Compiler: clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
Counter.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
Counter.cpp: clang: warning: argument unused during compilation: '-mavx2'
Counter.cpp: clang: warning: argument unused during compilation: '-mpclmul'
Counter.cpp: clang: warning: argument unused during compilation: '-fpolly'
Counter.cpp: clang: warning: argument unused during compilation: '-fvectorize'
Counter.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
Counter.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mavx2'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mpclmul'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fpolly'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fvectorize'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.cpp: clang: warning: argument unused during compilation: '-mcpu=core-avx2'
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-mpclmul'
stream.cpp: clang: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang: warning: argument unused during compilation: '-fvectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -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 -mavx2 -fomit-frame-pointer
Counter.cpp: clang: warning: argument unused during compilation: '-mavx2'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_stream/ocelot1/ref
Compiler: clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
Counter.cpp: clang: warning: argument unused during compilation: '-mavx2'
Counter.cpp: clang: warning: argument unused during compilation: '-fpolly'
Counter.cpp: clang: warning: argument unused during compilation: '-fvectorize'
Counter.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
Counter.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-mavx2'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fpolly'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fvectorize'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
Ocelot1.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: clang: warning: argument unused during compilation: '-fpolly'
stream.cpp: clang: warning: argument unused during compilation: '-fvectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize'
stream.cpp: clang: warning: argument unused during compilation: '-fslp-vectorize-aggressive'
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.
try.cpp: try-anything.cpp:110:19: warning: if statement has empty body [-Wempty-body]
try.cpp: ;
try.cpp: ^
try.cpp: 1 warning generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer ref