Implementation notes: amd64, katana, crypto_hash/whirlpool

Computer: katana
Architecture: amd64
CPU ID: GenuineIntel-000006f6-bfebfbff
SUPERCOP version: 20120310
Operation: crypto_hash
Primitive: whirlpool
TimeImplementationCompilerBenchmark dateSUPERCOP version
46640cryptoppg++ -O2 -fomit-frame-pointer2011090420110831
46720cryptoppg++ -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2011090420110831
46736cryptoppg++ -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2011090420110831
46776cryptoppicpc -O2 -xP -static2011061820110617
46784cryptoppicpc -O3 -xP -static2011061820110617
46800cryptoppg++ -m64 -march=core2 -O2 -fomit-frame-pointer2011090420110831
46816cryptoppicpc -m64 -xHost -vec-report0 -static2011061820110617
46896cryptoppg++ -m64 -O2 -fomit-frame-pointer2011090420110831
46896cryptoppicpc -static2011061820110617
46952cryptoppicpc -O1 -static2011061820110617
46960cryptoppicpc -O1 -xW -static2011061820110617
46960cryptoppicpc -Os -static2011061820110617
46968cryptoppg++ -m64 -march=core2 -msse4 -O -fomit-frame-pointer2011090420110831
46984cryptoppg++ -m64 -march=barcelona -O -fomit-frame-pointer2011090420110831
46992cryptoppg++ -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2011090420110831
46992cryptoppg++ -m64 -march=native -mtune=native -O -fomit-frame-pointer2011090420110831
46992cryptoppg++ -march=k8 -O -fomit-frame-pointer2011090420110831
47000cryptoppg++ -fno-schedule-insns -O -fomit-frame-pointer2011090420110831
47000cryptoppg++ -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2011090420110831
47000cryptoppg++ -march=barcelona -O -fomit-frame-pointer2011090420110831
47000cryptoppicpc -O3 -static2011061820110617
47008cryptoppg++ -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2011090420110831
47016cryptoppg++ -m64 -march=core2 -O -fomit-frame-pointer2011090420110831
47016cryptoppg++ -m64 -march=nocona -O2 -fomit-frame-pointer2011090420110831
47032cryptoppg++ -fno-schedule-insns -O2 -fomit-frame-pointer2011090420110831
47032cryptoppg++ -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2011090420110831
47032cryptoppg++ -march=nocona -O3 -fomit-frame-pointer2011090420110831
47032cryptoppicpc -O2 -xW -static2011061820110617
47032cryptoppicpc -Os -xP -static2011061820110617
47040cryptoppg++ -O -fomit-frame-pointer2011090420110831
47048cryptoppg++ -m64 -march=k8 -O3 -fomit-frame-pointer2011090420110831
47056cryptoppg++ -fno-schedule-insns -O3 -fomit-frame-pointer2011090420110831
47056cryptoppg++ -m64 -march=k8 -O2 -fomit-frame-pointer2011090420110831
47056cryptoppg++ -m64 -march=k8 -O -fomit-frame-pointer2011090420110831
47056cryptoppg++ -march=k8 -O2 -fomit-frame-pointer2011090420110831
47056cryptoppg++ -march=k8 -O3 -fomit-frame-pointer2011090420110831
47064cryptoppg++ -march=nocona -O -fomit-frame-pointer2011090420110831
47064cryptoppicpc -O1 -xP -static2011061820110617
47072cryptoppg++ -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2011090420110831
47072cryptoppg++ -march=nocona -O2 -fomit-frame-pointer2011090420110831
47080cryptoppg++ -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2011090420110831
47080cryptoppg++ -m64 -O3 -fomit-frame-pointer2011090420110831
47080cryptoppg++ -m64 -march=barcelona -O2 -fomit-frame-pointer2011090420110831
47080cryptoppg++ -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2011090420110831
47080cryptoppg++ -m64 -march=nocona -O -fomit-frame-pointer2011090420110831
47080cryptoppg++ -march=barcelona -O2 -fomit-frame-pointer2011090420110831
47080cryptoppg++ -march=barcelona -O3 -fomit-frame-pointer2011090420110831
47096cryptoppg++ -O3 -fomit-frame-pointer2011090420110831
47112cryptoppg++ -m64 -O -fomit-frame-pointer2011090420110831
47120cryptoppg++ -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2011090420110831
47128cryptoppg++ -Os -fomit-frame-pointer2011090420110831
47128cryptoppg++ -m64 -march=nocona -Os -fomit-frame-pointer2011090420110831
47128cryptoppicpc -Os -xW -static2011061820110617
47144cryptoppg++ -m64 -march=core2 -O3 -fomit-frame-pointer2011090420110831
47144cryptoppg++ -m64 -march=k8 -Os -fomit-frame-pointer2011090420110831
47144cryptoppg++ -march=nocona -Os -fomit-frame-pointer2011090420110831
47152cryptoppg++ -m64 -march=core2 -Os -fomit-frame-pointer2011090420110831
47160cryptoppg++ -fno-schedule-insns -Os -fomit-frame-pointer2011090420110831
47160cryptoppg++ -m64 -Os -fomit-frame-pointer2011090420110831
47168cryptoppg++ -m64 -march=barcelona -Os -fomit-frame-pointer2011090420110831
47168cryptoppg++ -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2011090420110831
47176cryptoppicpc -O2 -static2011061820110617
47208cryptoppg++ -m64 -march=barcelona -O3 -fomit-frame-pointer2011090420110831
47216cryptoppg++ -march=k8 -Os -fomit-frame-pointer2011090420110831
47224cryptoppg++ -march=barcelona -Os -fomit-frame-pointer2011090420110831
47248cryptoppg++ -m64 -march=native -mtune=native -Os -fomit-frame-pointer2011090420110831
47376cryptoppg++ -m64 -march=nocona -O3 -fomit-frame-pointer2011090420110831
47376cryptoppicpc -O3 -xW -static2011061820110617
48144cryptoppg++2011090420110831
58320reficc -O3 -xW -static -no-vec2011061820110617
58328reficc -O3 -static -no-vec2011061820110617
58328reficc -O3 -xP -static -no-vec2011061820110617
58392reficc -m64 -O3 -static -no-vec2011061820110617
58512reficc -O2 -xW -static -no-vec2011061820110617
58536reficc -O2 -static -no-vec2011061820110617
58536reficc -m64 -O2 -static -no-vec2011061820110617
59256reficc -no-vec2011061820110617
59360reficc -O2 -xP -static -no-vec2011061820110617
63584refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2011090420110831
63600refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2011090420110831
63728refgcc -O -fomit-frame-pointer2011090420110831
63768refgcc -fno-schedule-insns -O -fomit-frame-pointer2011090420110831
63816refgcc -m64 -O -fomit-frame-pointer2011090420110831
63880refgcc -march=barcelona -O -fomit-frame-pointer2011090420110831
63888refgcc -m64 -march=barcelona -O -fomit-frame-pointer2011090420110831
63904refgcc -march=nocona -O -fomit-frame-pointer2011090420110831
63928refgcc -march=k8 -O -fomit-frame-pointer2011090420110831
63992refgcc -m64 -march=nocona -O -fomit-frame-pointer2011090420110831
64000refgcc -m64 -march=core2 -O -fomit-frame-pointer2011090420110831
64000refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2011090420110831
64008refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2011090420110831
64032refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2011090420110831
64352reficc -O1 -xP -static2011061820110617
64368reficc -O1 -xW -static2011061820110617
64384reficc -m64 -O1 -static2011061820110617
64424reficc -O1 -xW -static -no-vec2011061820110617
64496reficc -O1 -static -no-vec2011061820110617
64520reficc -O1 -static2011061820110617
64560refgcc -m64 -march=k8 -O -fomit-frame-pointer2011090420110831
64624reficc -O1 -xP -static -no-vec2011061820110617
64672reficc -m64 -O1 -static -no-vec2011061820110617
64952refgcc -funroll-loops -O -fomit-frame-pointer2011090420110831
65000refgcc -funroll-loops -m64 -O -fomit-frame-pointer2011090420110831
65064refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2011090420110831
65728reficc -m64 -xHost -vec-report0 -static2011061820110617
68432reficc -O3 -xP -static2011061820110617
68896reficc -m64 -Os -static -no-vec2011061820110617
68936refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2011090420110831
68944refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2011090420110831
69008refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2011090420110831
69016refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2011090420110831
69024reficc -Os -xP -static -no-vec2011061820110617
69072reficc -m64 -O3 -static2011061820110617
69096reficc -O3 -xW -static2011061820110617
69160reficc -O3 -static2011061820110617
69328reficc -Os -static -no-vec2011061820110617
69392reficc2011061820110617
69392reficc -O2 -xW -static2011061820110617
69408reficc -O2 -static2011061820110617
69432reficc -m64 -O2 -static2011061820110617
69456reficc -O2 -xP -static2011061820110617
71248reficc -Os -static2011061820110617
71264reficc -Os -xP -static2011061820110617
72088reficc -Os -xW -static2011061820110617
72112reficc -m64 -Os -static2011061820110617
72624reficc -Os -xW -static -no-vec2011061820110617
72856refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2011090420110831
72920refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2011090420110831
72920refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2011090420110831
72944refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2011090420110831
73296refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2011090420110831
73312refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2011090420110831
73320refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2011090420110831
73328refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2011090420110831
73360refgcc -march=k8 -O2 -fomit-frame-pointer2011090420110831
73400refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2011090420110831
73424refgcc -m64 -O2 -fomit-frame-pointer2011090420110831
73480refgcc -O2 -fomit-frame-pointer2011090420110831
73488refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2011090420110831
73488refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2011090420110831
73504refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2011090420110831
73512refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2011090420110831
73552refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2011090420110831
73576refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2011090420110831
73576refgcc -march=barcelona -O2 -fomit-frame-pointer2011090420110831
73632refgcc -march=k8 -O3 -fomit-frame-pointer2011090420110831
73648refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2011090420110831
73656refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2011090420110831
73688refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2011090420110831
73696refgcc -funroll-loops -O3 -fomit-frame-pointer2011090420110831
73744refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2011090420110831
73752refgcc -march=barcelona -O3 -fomit-frame-pointer2011090420110831
73784refgcc -funroll-loops -O2 -fomit-frame-pointer2011090420110831
73800refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2011090420110831
73936refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2011090420110831
73960refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2011090420110831
74032refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2011090420110831
74040refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2011090420110831
74048refgcc -march=nocona -O2 -fomit-frame-pointer2011090420110831
74136refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2011090420110831
74168refgcc -m64 -O3 -fomit-frame-pointer2011090420110831
74232refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2011090420110831
74288refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2011090420110831
74416refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2011090420110831
74472refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2011090420110831
74632refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2011090420110831
74840refgcc -O3 -fomit-frame-pointer2011090420110831
75408refgcc -march=nocona -O3 -fomit-frame-pointer2011090420110831
79840refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2011090420110831
79888refgcc -funroll-loops -Os -fomit-frame-pointer2011090420110831
79912refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2011090420110831
79960refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2011090420110831
79960refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2011090420110831
79968refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2011090420110831
80680refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2011090420110831
81064refgcc -m64 -march=k8 -Os -fomit-frame-pointer2011090420110831
81088refgcc -Os -fomit-frame-pointer2011090420110831
81136refgcc -fno-schedule-insns -Os -fomit-frame-pointer2011090420110831
81136refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2011090420110831
81152refgcc -march=barcelona -Os -fomit-frame-pointer2011090420110831
81184refgcc -m64 -Os -fomit-frame-pointer2011090420110831
81608refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2011090420110831
81616refgcc -m64 -march=core2 -Os -fomit-frame-pointer2011090420110831
81672refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2011090420110831
81704refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2011090420110831
81784refgcc -march=k8 -Os -fomit-frame-pointer2011090420110831
83744refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2011090420110831
83760refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2011090420110831
83768refgcc -m64 -march=nocona -Os -fomit-frame-pointer2011090420110831
83776refgcc -march=nocona -Os -fomit-frame-pointer2011090420110831
130352refcc2011090420110831
130376refgcc -funroll-loops2011090420110831
130424refgcc2011090420110831

Compiler output

Implementation: crypto_hash/whirlpool/ref
Compiler: icc -O1 -xP -static
Whirlpool.c: icc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'
hash.c: icc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'
try.c: icc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'
measure.c: icc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xP -static ref
icc -O1 -xP -static -no-vec ref
icc -O2 -xP -static ref
icc -O2 -xP -static -no-vec ref
icc -O3 -xP -static ref
icc -O3 -xP -static -no-vec ref
icc -Os -xP -static ref
icc -Os -xP -static -no-vec ref

Compiler output

Implementation: crypto_hash/whirlpool/ref
Compiler: icc -O1 -xW -static
Whirlpool.c: icc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'
hash.c: icc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'
try.c: icc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'
measure.c: icc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
icc -O1 -xW -static ref
icc -O1 -xW -static -no-vec ref
icc -O2 -xW -static ref
icc -O2 -xW -static -no-vec ref
icc -O3 -xW -static ref
icc -O3 -xW -static -no-vec ref
icc -Os -xW -static ref
icc -Os -xW -static -no-vec ref

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: icpc -O1 -static
hash.cpp: /home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/misc.h(414): warning #186: pointless comparison of unsigned integer with zero
hash.cpp: if (a hash.cpp: ^
hash.cpp: detected during instantiation of "std::string CryptoPP::IntToString(T, unsigned int) [with T=unsigned long]" at line 35 of "/home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/simple.h"
hash.cpp:
hash.cpp: /home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/misc.h(414): warning #186: pointless comparison of unsigned integer with zero
hash.cpp: if (a hash.cpp: ^
hash.cpp: detected during instantiation of "std::string CryptoPP::IntToString(T, unsigned int) [with T=unsigned int]" at line 42 of "/home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/simple.h"
hash.cpp:

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
icpc -O1 -static cryptopp
icpc -O2 -static cryptopp
icpc -O3 -static cryptopp
icpc -Os -static cryptopp
icpc -m64 -xHost -vec-report0 -static cryptopp
icpc -static cryptopp

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: icpc -O1 -xP -static
hash.cpp: icpc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'
hash.cpp: /home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/misc.h(414): warning #186: pointless comparison of unsigned integer with zero
hash.cpp: if (a hash.cpp: ^
hash.cpp: detected during instantiation of "std::string CryptoPP::IntToString(T, unsigned int) [with T=unsigned long]" at line 35 of "/home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/simple.h"
hash.cpp:
hash.cpp: /home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/misc.h(414): warning #186: pointless comparison of unsigned integer with zero
hash.cpp: if (a hash.cpp: ^
hash.cpp: detected during instantiation of "std::string CryptoPP::IntToString(T, unsigned int) [with T=unsigned int]" at line 42 of "/home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/simple.h"
hash.cpp:
try.cpp: icpc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'
measure.cpp: icpc: command line remark #10279: option '-xP' is deprecated and will be removed in a future release. See '-help deprecated'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
icpc -O1 -xP -static cryptopp
icpc -O2 -xP -static cryptopp
icpc -O3 -xP -static cryptopp
icpc -Os -xP -static cryptopp

Compiler output

Implementation: crypto_hash/whirlpool/cryptopp
Compiler: icpc -O1 -xW -static
hash.cpp: icpc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'
hash.cpp: /home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/misc.h(414): warning #186: pointless comparison of unsigned integer with zero
hash.cpp: if (a hash.cpp: ^
hash.cpp: detected during instantiation of "std::string CryptoPP::IntToString(T, unsigned int) [with T=unsigned long]" at line 35 of "/home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/simple.h"
hash.cpp:
hash.cpp: /home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/misc.h(414): warning #186: pointless comparison of unsigned integer with zero
hash.cpp: if (a hash.cpp: ^
hash.cpp: detected during instantiation of "std::string CryptoPP::IntToString(T, unsigned int) [with T=unsigned int]" at line 42 of "/home/djb/supercop-20110617/supercop-data/katana/amd64/include/cryptopp/simple.h"
hash.cpp:
try.cpp: icpc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'
measure.cpp: icpc: command line remark #10279: option '-xW' is deprecated and will be removed in a future release. See '-help deprecated'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
icpc -O1 -xW -static cryptopp
icpc -O2 -xW -static cryptopp
icpc -O3 -xW -static cryptopp
icpc -Os -xW -static cryptopp