Implementation notes: amd64, h4e350, crypto_stream/aes192ctr

Computer: h4e350
Architecture: amd64
CPU ID: AuthenticAMD-00500f10-178bfbff
SUPERCOP version: 20141014
Operation: crypto_stream
Primitive: aes192ctr
TimeImplementationCompilerBenchmark dateSUPERCOP version
28635cryptoppg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2014060420140525
28677cryptoppg++ -m64 -march=core2 -O -fomit-frame-pointer2014060420140525
28683cryptoppg++ -fno-schedule-insns -O -fomit-frame-pointer2014060420140525
28713cryptoppg++ -march=barcelona -O3 -fomit-frame-pointer2014060420140525
28719cryptoppg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2014060420140525
28722cryptoppg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2014060420140525
28722cryptoppg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2014060420140525
28743cryptoppg++ -O2 -fomit-frame-pointer2014060420140525
28767cryptoppg++ -m64 -O2 -fomit-frame-pointer2014060420140525
28773cryptoppg++ -m64 -march=corei7 -O2 -fomit-frame-pointer2014060420140525
28800cryptoppg++ -m64 -march=k8 -O3 -fomit-frame-pointer2014060420140525
28833cryptoppg++ -m64 -march=core2 -O3 -fomit-frame-pointer2014060420140525
28848cryptoppclang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014071320140622
28896cryptoppg++ -march=nocona -Os -fomit-frame-pointer2014060420140525
28902cryptoppg++ -O -fomit-frame-pointer2014060420140525
28908cryptoppg++ -m64 -march=k8 -O2 -fomit-frame-pointer2014060420140525
28911cryptoppg++ -O3 -fomit-frame-pointer2014060420140525
28914cryptoppg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014060420140525
28935cryptoppg++ -m64 -march=nocona -O -fomit-frame-pointer2014060420140525
28944cryptoppg++ -m64 -march=nocona -O3 -fomit-frame-pointer2014060420140525
28962cryptoppg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2014060420140525
28965cryptoppg++ -m64 -march=k8 -Os -fomit-frame-pointer2014060420140525
28995cryptoppg++ -m64 -O3 -fomit-frame-pointer2014060420140525
28995cryptoppg++ -m64 -march=corei7 -O -fomit-frame-pointer2014060420140525
29004cryptoppg++ -fno-schedule-insns -O3 -fomit-frame-pointer2014060420140525
29034cryptoppg++ -m64 -Os -fomit-frame-pointer2014060420140525
29046cryptoppg++ -fno-schedule-insns -Os -fomit-frame-pointer2014060420140525
29049cryptoppclang++ -O3 -fomit-frame-pointer2014071320140622
29049cryptoppg++ -m64 -march=nocona -O2 -fomit-frame-pointer2014060420140525
29061cryptoppclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer2014101520141014
29061cryptoppg++ -march=barcelona -O2 -fomit-frame-pointer2014060420140525
29070cryptoppg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014060420140525
29076cryptoppg++ -m64 -O -fomit-frame-pointer2014060420140525
29079cryptoppg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2014060420140525
29085cryptoppg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2014060420140525
29100cryptoppg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2014060420140525
29115cryptoppg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2014060420140525
29133cryptoppg++ -march=k8 -Os -fomit-frame-pointer2014060420140525
29133cryptoppg++ -march=nocona -O3 -fomit-frame-pointer2014060420140525
29157cryptoppg++ -fno-schedule-insns -O2 -fomit-frame-pointer2014060420140525
29178cryptoppclang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer2014071320140622
29178cryptoppg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2014060420140525
29184cryptoppg++ -m64 -march=core2 -O2 -fomit-frame-pointer2014060420140525
29184cryptoppg++ -m64 -march=k8 -O -fomit-frame-pointer2014060420140525
29211cryptoppg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2014060420140525
29238cryptoppg++ -march=k8 -O3 -fomit-frame-pointer2014060420140525
29256cryptoppg++ -Os -fomit-frame-pointer2014060420140525
29289cryptoppg++ -m64 -march=barcelona -O -fomit-frame-pointer2014060420140525
29292cryptoppg++ -march=nocona -O -fomit-frame-pointer2014060420140525
29298cryptoppg++ -march=nocona -O2 -fomit-frame-pointer2014060420140525
29328cryptoppg++ -march=k8 -O2 -fomit-frame-pointer2014060420140525
29334cryptoppclang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer2014101520141014
29400cryptoppg++ -m64 -march=barcelona -Os -fomit-frame-pointer2014060420140525
29403cryptoppg++ -march=k8 -O -fomit-frame-pointer2014060420140525
29418cryptoppg++ -m64 -march=nocona -Os -fomit-frame-pointer2014060420140525
29430cryptoppg++ -m64 -march=corei7 -Os -fomit-frame-pointer2014060420140525
29430cryptoppg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2014060420140525
29442cryptoppg++ -march=barcelona -Os -fomit-frame-pointer2014060420140525
29460cryptoppg++ -march=barcelona -O -fomit-frame-pointer2014060420140525
29463cryptoppg++ -m64 -march=core2 -Os -fomit-frame-pointer2014060420140525
29547cryptoppg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2014060420140525
29619cryptoppg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2014060420140525
33354cryptoppg++2014060420140525

Compiler output

Implementation: crypto_stream/aes192ctr/cryptopp
Compiler: clang++ -O3 -fomit-frame-pointer
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings 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.
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 cryptopp

Compiler output

Implementation: crypto_stream/aes192ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer
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: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings 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.
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 cryptopp

Compiler output

Implementation: crypto_stream/aes192ctr/cryptopp
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
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'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/benchmarking/supercop-20141014/supercop-data/h4e350/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: ...
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 cryptopp

Compiler output

Implementation: crypto_stream/aes192ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -mavx2 -fomit-frame-pointer
stream.cpp: clang: warning: argument unused during compilation: '-mavx2'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: 2 warnings 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.
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 cryptopp

Compiler output

Implementation: crypto_stream/aes192ctr/cryptopp
Compiler: clang++ -O3 -fwrapv -mavx2 -fpolly -funroll-loops -fvectorize -fslp-vectorize -fslp-vectorize-aggressive -fomit-frame-pointer
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'
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/simple.h:35:110: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidKeyLength(const std::string &algorithm, size_t length) : InvalidArgument(algorithm + ": " + IntToString(length) + " is not a valid key length") {}
stream.cpp: ^
stream.cpp: In file included from stream.cpp:1:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/aes.h:4:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/rijndael.h:7:
stream.cpp: In file included from /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/seckey.h:9:
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/misc.h:414:8: warning: comparison of unsigned expression stream.cpp: if (a stream.cpp: ~ ^ ~
stream.cpp: /home/djb/supercop-20140622/supercop-data/h4e350/amd64/include/cryptopp/simple.h:42:113: note: in instantiation of function template specialization 'CryptoPP::IntToStringgt;' requested here
stream.cpp: explicit InvalidRounds(const std::string &algorithm, unsigned int rounds) : InvalidArgument(algorithm + ": " + IntToString(rounds) + " is not a valid number of rounds") {}
stream.cpp: ^
stream.cpp: ...
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 cryptopp