Implementation notes: amd64, haswell, crypto_stream/hc256

Computer: haswell
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_stream
Primitive: hc256
TimeImplementationCompilerBenchmark dateSUPERCOP version
41548e/hc-256/200701gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2013060920130419
41904e/hc-256/200511gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2013060920130419
42068e/hc-256/200511gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2013060920130419
42164e/hc-256/200511gcc -m64 -Os -fomit-frame-pointer2013060920130419
42304e/hc-256/200701gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2013060920130419
42680e/hc-256/200511gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2013060920130419
42832e/hc-256/200511gcc -funroll-loops -O2 -fomit-frame-pointer2013060920130419
42953e/hc-256/200701gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2013060920130419
43053e/hc-256/200511gcc -funroll-loops -march=nocona -O -fomit-frame-pointer2013060920130419
43214e/hc-256/200701gcc -m64 -march=k8 -O2 -fomit-frame-pointer2013060920130419
43338e/hc-256/200701gcc -m64 -march=core2 -O2 -fomit-frame-pointer2013060920130419
43658e/hc-256/200511gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2013060920130419
43674e/hc-256/200511gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2013060920130419
43786e/hc-256/200701gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2013060920130419
43848e/hc-256/200511gcc -funroll-loops -Os -fomit-frame-pointer2013060920130419
44084e/hc-256/200701gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2013060920130419
44180e/hc-256/200511gcc -m64 -march=nocona -O3 -fomit-frame-pointer2013060920130419
44196e/hc-256/200701gcc -m64 -march=nocona -Os -fomit-frame-pointer2013060920130419
44242e/hc-256/200701gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2013060920130419
44278e/hc-256/200511gcc -funroll-loops -m64 -O2 -fomit-frame-pointer2013060920130419
44288e/hc-256/200701gcc -m64 -march=corei7 -Os -fomit-frame-pointer2013060920130419
44320e/hc-256/200511gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2013060920130419
44328e/hc-256/200511gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2013060920130419
44400e/hc-256/200701gcc -funroll-loops -O2 -fomit-frame-pointer2013060920130419
44420e/hc-256/200511gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2013060920130419
44724e/hc-256/200701gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2013060920130419
44739e/hc-256/200701gcc -O3 -fomit-frame-pointer2013060920130419
44788e/hc-256/200701gcc -march=barcelona -O2 -fomit-frame-pointer2013060920130419
44879e/hc-256/200511gcc -march=barcelona -O3 -fomit-frame-pointer2013060920130419
44904e/hc-256/200701gcc -O2 -fomit-frame-pointer2013060920130419
45056e/hc-256/200701gcc -m64 -march=k8 -Os -fomit-frame-pointer2013060920130419
45152e/hc-256/200701gcc -m64 -march=nocona -O2 -fomit-frame-pointer2013060920130419
45212e/hc-256/200511gcc -O2 -fomit-frame-pointer2013060920130419
45212e/hc-256/200511gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2013060920130419
45236e/hc-256/200511gcc -m64 -march=k8 -Os -fomit-frame-pointer2013060920130419
45280e/hc-256/200701gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2013060920130419
45284e/hc-256/200511gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2013060920130419
45376e/hc-256/200511gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2013060920130419
45444e/hc-256/200511gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2013060920130419
45460e/hc-256/200511gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2013060920130419
45496e/hc-256/200701gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2013060920130419
45548e/hc-256/200701gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2013060920130419
45600e/hc-256/200511gcc -funroll-loops -m64 -O3 -fomit-frame-pointer2013060920130419
45640e/hc-256/200511gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2013060920130419
45644e/hc-256/200701gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2013060920130419
45680e/hc-256/200511gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2013060920130419
45724e/hc-256/200511gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2013060920130419
45729e/hc-256/200701gcc -m64 -march=barcelona -O -fomit-frame-pointer2013060920130419
45780e/hc-256/200701gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2013060920130419
45869e/hc-256/200701gcc -fno-schedule-insns -O -fomit-frame-pointer2013060920130419
45884e/hc-256/200701gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2013060920130419
45936e/hc-256/200701gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2013060920130419
45956e/hc-256/200701gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2013060920130419
46014e/hc-256/200511gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2013060920130419
46014e/hc-256/200511gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2013060920130419
46028e/hc-256/200701gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2013060920130419
46160e/hc-256/200701gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2013060920130419
46160e/hc-256/200511gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2013060920130419
46192e/hc-256/200701gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2013060920130419
46196e/hc-256/200701gcc -march=barcelona -O3 -fomit-frame-pointer2013060920130419
46208e/hc-256/200701gcc -fno-schedule-insns -O3 -fomit-frame-pointer2013060920130419
46218e/hc-256/200511gcc -m64 -march=corei7 -O -fomit-frame-pointer2013060920130419
46220e/hc-256/200511gcc -march=k8 -O3 -fomit-frame-pointer2013060920130419
46232e/hc-256/200701gcc -m64 -O3 -fomit-frame-pointer2013060920130419
46234e/hc-256/200511gcc -funroll-loops -m64 -O -fomit-frame-pointer2013060920130419
46247e/hc-256/200511gcc -m64 -O -fomit-frame-pointer2013060920130419
46272e/hc-256/200511gcc -m64 -march=k8 -O3 -fomit-frame-pointer2013060920130419
46336e/hc-256/200511gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2013060920130419
46348e/hc-256/200701gcc -m64 -march=core2 -O3 -fomit-frame-pointer2013060920130419
46351e/hc-256/200511gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2013060920130419
46400e/hc-256/200511gcc -m64 -march=core2 -O3 -fomit-frame-pointer2013060920130419
46428e/hc-256/200701gcc -m64 -march=barcelona -O2 -fomit-frame-pointer2013060920130419
46482e/hc-256/200701gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2013060920130419
46500e/hc-256/200511gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2013060920130419
46516e/hc-256/200701gcc -march=k8 -O2 -fomit-frame-pointer2013060920130419
46556e/hc-256/200701gcc -m64 -O2 -fomit-frame-pointer2013060920130419
46598e/hc-256/200701gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2013060920130419
46658e/hc-256/200701gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2013060920130419
46670e/hc-256/200511gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2013060920130419
46682e/hc-256/200701gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2013060920130419
46702e/hc-256/200701gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2013060920130419
46728e/hc-256/200701gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2013060920130419
46790e/hc-256/200701gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2013060920130419
46798e/hc-256/200701gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2013060920130419
46830e/hc-256/200511gcc -march=barcelona -Os -fomit-frame-pointer2013060920130419
46838e/hc-256/200701gcc -m64 -march=barcelona -Os -fomit-frame-pointer2013060920130419
46852e/hc-256/200701gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2013060920130419
46882e/hc-256/200701gcc -funroll-loops -O3 -fomit-frame-pointer2013060920130419
46896e/hc-256/200511gcc -m64 -O2 -fomit-frame-pointer2013060920130419
46910e/hc-256/200511gcc -march=k8 -Os -fomit-frame-pointer2013060920130419
46934e/hc-256/200511gcc -march=k8 -O2 -fomit-frame-pointer2013060920130419
46958e/hc-256/200511gcc -m64 -march=k8 -O2 -fomit-frame-pointer2013060920130419
46966e/hc-256/200511gcc -fno-schedule-insns -O2 -fomit-frame-pointer2013060920130419
46984e/hc-256/200701gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2013060920130419
46988e/hc-256/200511gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2013060920130419
47016e/hc-256/200511gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2013060920130419
47022e/hc-256/200701gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2013060920130419
47022e/hc-256/200511gcc -m64 -march=core2 -O2 -fomit-frame-pointer2013060920130419
47064e/hc-256/200511gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2013060920130419
47096e/hc-256/200511gcc -march=barcelona -O2 -fomit-frame-pointer2013060920130419
47104e/hc-256/200511gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2013060920130419
47110e/hc-256/200701gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2013060920130419
47176e/hc-256/200701gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2013060920130419
47208e/hc-256/200511gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2013060920130419
47212e/hc-256/200511gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2013060920130419
47262e/hc-256/200511gcc -march=nocona -O2 -fomit-frame-pointer2013060920130419
47274e/hc-256/200511gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2013060920130419
47286e/hc-256/200701gcc -march=nocona -Os -fomit-frame-pointer2013060920130419
47364e/hc-256/200701gcc -m64 -march=k8 -O -fomit-frame-pointer2013060920130419
47398e/hc-256/200511gcc -march=nocona -Os -fomit-frame-pointer2013060920130419
47436e/hc-256/200511gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2013060920130419
47508e/hc-256/200701gcc -m64 -march=core2 -O -fomit-frame-pointer2013060920130419
47590e/hc-256/200701gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2013060920130419
47604e/hc-256/200701gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2013060920130419
47644e/hc-256/200701gcc -march=nocona -O -fomit-frame-pointer2013060920130419
47692e/hc-256/200701gcc -m64 -O -fomit-frame-pointer2013060920130419
47744e/hc-256/200701gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2013060920130419
47812e/hc-256/200511gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2013060920130419
47812e/hc-256/200511gcc -march=k8 -O -fomit-frame-pointer2013060920130419
47988e/hc-256/200511gcc -O -fomit-frame-pointer2013060920130419
47988e/hc-256/200701gcc -funroll-loops -m64 -O -fomit-frame-pointer2013060920130419
48004e/hc-256/200511gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2013060920130419
48048e/hc-256/200511gcc -funroll-loops -O -fomit-frame-pointer2013060920130419
48124e/hc-256/200701gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2013060920130419
48169e/hc-256/200701gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2013060920130419
48202e/hc-256/200511gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2013060920130419
48234e/hc-256/200701gcc -m64 -march=nocona -O3 -fomit-frame-pointer2013060920130419
48252e/hc-256/200701gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2013060920130419
48372e/hc-256/200511gcc -O3 -fomit-frame-pointer2013060920130419
48384e/hc-256/200701gcc -fno-schedule-insns -O2 -fomit-frame-pointer2013060920130419
48488e/hc-256/200511gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2013060920130419
48508e/hc-256/200701gcc -funroll-loops -Os -fomit-frame-pointer2013060920130419
48513e/hc-256/200511gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2013060920130419
48524e/hc-256/200701gcc -march=barcelona -Os -fomit-frame-pointer2013060920130419
48532e/hc-256/200701gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2013060920130419
48532e/hc-256/200701gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2013060920130419
48548e/hc-256/200701gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2013060920130419
48556e/hc-256/200701gcc -march=k8 -Os -fomit-frame-pointer2013060920130419
48560e/hc-256/200701gcc -funroll-loops -m64 -Os -fomit-frame-pointer2013060920130419
48564e/hc-256/200701gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2013060920130419
48568e/hc-256/200701gcc -Os -fomit-frame-pointer2013060920130419
48620e/hc-256/200701gcc -m64 -Os -fomit-frame-pointer2013060920130419
48632e/hc-256/200701gcc -fno-schedule-insns -Os -fomit-frame-pointer2013060920130419
48644e/hc-256/200701gcc -m64 -march=core2 -Os -fomit-frame-pointer2013060920130419
48684e/hc-256/200701gcc -m64 -march=corei7 -O3 -fomit-frame-pointer2013060920130419
48700e/hc-256/200701gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2013060920130419
48716e/hc-256/200701gcc -march=nocona -O2 -fomit-frame-pointer2013060920130419
48720e/hc-256/200511gcc -m64 -march=barcelona -Os -fomit-frame-pointer2013060920130419
48724e/hc-256/200701gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2013060920130419
48808e/hc-256/200511gcc -Os -fomit-frame-pointer2013060920130419
48814e/hc-256/200701gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2013060920130419
48820e/hc-256/200511gcc -fno-schedule-insns -O3 -fomit-frame-pointer2013060920130419
48828e/hc-256/200511gcc -fno-schedule-insns -Os -fomit-frame-pointer2013060920130419
48888e/hc-256/200511gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2013060920130419
48988e/hc-256/200511gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2013060920130419
49004e/hc-256/200701gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2013060920130419
49068e/hc-256/200701gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2013060920130419
49120e/hc-256/200511gcc -m64 -march=nocona -O2 -fomit-frame-pointer2013060920130419
49242e/hc-256/200701gcc -march=barcelona -O -fomit-frame-pointer2013060920130419
49320e/hc-256/200701gcc -O -fomit-frame-pointer2013060920130419
49424e/hc-256/200511gcc -funroll-loops -m64 -Os -fomit-frame-pointer2013060920130419
49444e/hc-256/200701gcc -m64 -march=corei7-avx -O -fomit-frame-pointer2013060920130419
49444e/hc-256/200511gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2013060920130419
49604e/hc-256/200511gcc -funroll-loops -O3 -fomit-frame-pointer2013060920130419
49612e/hc-256/200701gcc -m64 -march=corei7 -O -fomit-frame-pointer2013060920130419
49632e/hc-256/200511gcc -m64 -march=core2 -O -fomit-frame-pointer2013060920130419
49652e/hc-256/200701gcc -march=k8 -O3 -fomit-frame-pointer2013060920130419
49664e/hc-256/200701gcc -m64 -march=k8 -O3 -fomit-frame-pointer2013060920130419
49672e/hc-256/200511gcc -m64 -march=barcelona -O -fomit-frame-pointer2013060920130419
49736e/hc-256/200511gcc -m64 -march=barcelona -O3 -fomit-frame-pointer2013060920130419
49764e/hc-256/200511gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2013060920130419
49809e/hc-256/200701gcc -funroll-loops -march=k8 -O -fomit-frame-pointer2013060920130419
49920e/hc-256/200511gcc -m64 -march=k8 -O -fomit-frame-pointer2013060920130419
50044e/hc-256/200701gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2013060920130419
50084e/hc-256/200511gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2013060920130419
50232e/hc-256/200511gcc -march=nocona -O3 -fomit-frame-pointer2013060920130419
50316e/hc-256/200511gcc -m64 -O3 -fomit-frame-pointer2013060920130419
50576e/hc-256/200701gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2013060920130419
50612e/hc-256/200511gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2013060920130419
50891e/hc-256/200511gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2013060920130419
50903e/hc-256/200511gcc -m64 -march=corei7 -Os -fomit-frame-pointer2013060920130419
50932e/hc-256/200701gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2013060920130419
50953e/hc-256/200511gcc -m64 -march=corei7 -O2 -fomit-frame-pointer2013060920130419
51090e/hc-256/200511gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2013060920130419
51172e/hc-256/200701gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2013060920130419
51284e/hc-256/200701gcc -march=k8 -O -fomit-frame-pointer2013060920130419
51363e/hc-256/200511gcc -m64 -march=nocona -Os -fomit-frame-pointer2013060920130419
51416e/hc-256/200701gcc -m64 -march=nocona -O -fomit-frame-pointer2013060920130419
51525e/hc-256/200511gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2013060920130419
51544e/hc-256/200511gcc -march=barcelona -O -fomit-frame-pointer2013060920130419
51620e/hc-256/200511gcc -fno-schedule-insns -O -fomit-frame-pointer2013060920130419
51664e/hc-256/200511gcc -march=nocona -O -fomit-frame-pointer2013060920130419
52175e/hc-256/200701gcc -funroll-loops -O -fomit-frame-pointer2013060920130419
52270e/hc-256/200511gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2013060920130419
52440e/hc-256/200701gcc -march=nocona -O3 -fomit-frame-pointer2013060920130419
53112e/hc-256/200511gcc -m64 -march=core2 -Os -fomit-frame-pointer2013060920130419
53720e/hc-256/200511gcc -m64 -march=nocona -O -fomit-frame-pointer2013060920130419
53733e/hc-256/200511gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2013060920130419
53737e/hc-256/200511gcc -m64 -march=core-avx-i -O -fomit-frame-pointer2013060920130419
53768e/hc-256/200701clang -O3 -mavx2013060920130419
54016e/hc-256/200511clang -O3 -mavx2013060920130419
55397e/hc-256/200511gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2013060920130419
56008e/hc-256/200511clang -O32013060920130419
60498e/hc-256/200701clang -O32013060920130419
137360e/hc-256/200701cc2013060920130419
142344e/hc-256/200511cc2013060920130419
147832e/hc-256/200701gcc -funroll-loops2013060920130419
152802e/hc-256/200511gcc2013060920130419
153588e/hc-256/200511gcc -funroll-loops2013060920130419
153684e/hc-256/200701gcc2013060920130419