Implementation notes: amd64, h4e350, crypto_stream/ocelot1

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: ocelot1
TimeImplementationCompilerBenchmark dateSUPERCOP version
62499refg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014060620140525
63900refg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014060620140525
64944refg++ -m64 -march=k8 -O3 -fomit-frame-pointer2014060620140525
65250refg++ -m64 -O3 -fomit-frame-pointer2014060620140525
65256refg++ -m64 -march=core2 -O3 -fomit-frame-pointer2014060620140525
65292refg++ -O3 -fomit-frame-pointer2014060620140525
65526refg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014060620140525
65655refg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2014060620140525
65673refg++ -march=k8 -O3 -fomit-frame-pointer2014060620140525
65793refg++ -fno-schedule-insns -O3 -fomit-frame-pointer2014060620140525
66201refg++ -march=barcelona -O3 -fomit-frame-pointer2014060620140525
66387refg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014060620140525
66468refg++ -march=barcelona -O2 -fomit-frame-pointer2014060620140525
67329refg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2014060620140525
67695refg++ -march=nocona -O2 -fomit-frame-pointer2014060620140525
67818refg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014060620140525
68169refg++ -m64 -march=nocona -O2 -fomit-frame-pointer2014060620140525
68460refclang++ -O3 -fomit-frame-pointer2014071320140622
68688refclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer2014071320140622
68703refclang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071320140622
69606refg++ -fno-schedule-insns -O2 -fomit-frame-pointer2014060620140525
69639refg++ -O2 -fomit-frame-pointer2014060620140525
69813refg++ -m64 -march=core2 -O2 -fomit-frame-pointer2014060620140525
70146refg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014060620140525
70173refg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014060620140525
70497refg++ -m64 -march=nocona -O3 -fomit-frame-pointer2014060620140525
70629refg++ -m64 -march=k8 -O -fomit-frame-pointer2014060620140525
70647refg++ -m64 -march=nocona -O -fomit-frame-pointer2014060620140525
70884refg++ -m64 -march=k8 -O2 -fomit-frame-pointer2014060620140525
70911refg++ -march=k8 -O2 -fomit-frame-pointer2014060620140525
70929refg++ -march=nocona -O3 -fomit-frame-pointer2014060620140525
71310refg++ -march=k8 -O -fomit-frame-pointer2014060620140525
71598refg++ -m64 -march=corei7 -O2 -fomit-frame-pointer2014060620140525
71715refg++ -m64 -O2 -fomit-frame-pointer2014060620140525
71727refg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014060620140525
71730refg++ -m64 -O -fomit-frame-pointer2014060620140525
71733refg++ -fno-schedule-insns -O -fomit-frame-pointer2014060620140525
71772refg++ -O -fomit-frame-pointer2014060620140525
71808refg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014060620140525
71808refg++ -march=nocona -O -fomit-frame-pointer2014060620140525
72543refg++ -m64 -march=core2 -O -fomit-frame-pointer2014060620140525
73107refg++ -m64 -march=corei7 -O -fomit-frame-pointer2014060620140525
76371refg++ -march=barcelona -O -fomit-frame-pointer2014060620140525
76377refg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2014060620140525
76884refg++ -m64 -march=barcelona -O -fomit-frame-pointer2014060620140525
77466refg++ -march=nocona -Os -fomit-frame-pointer2014060620140525
77493refg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014060620140525
77532refg++ -m64 -march=nocona -Os -fomit-frame-pointer2014060620140525
77538refg++ -m64 -march=k8 -Os -fomit-frame-pointer2014060620140525
77562refg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014060620140525
77634refg++ -m64 -march=barcelona -Os -fomit-frame-pointer2014060620140525
77634refg++ -m64 -march=core2 -Os -fomit-frame-pointer2014060620140525
77670refg++ -march=k8 -Os -fomit-frame-pointer2014060620140525
77685refg++ -m64 -Os -fomit-frame-pointer2014060620140525
77709refg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014060620140525
77934refg++ -Os -fomit-frame-pointer2014060620140525
77934refg++ -fno-schedule-insns -Os -fomit-frame-pointer2014060620140525
78171refg++ -march=barcelona -Os -fomit-frame-pointer2014060620140525
78258refg++ -m64 -march=corei7 -Os -fomit-frame-pointer2014060620140525
79908refg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014060620140525
83343refclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101520141014
84480refclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101520141014
207291refg++2014060620140525

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: 1, namely:
CompilerImplementations
clang++ -O3 -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