Implementation notes: amd64, haswell, crypto_core/salsa20

Computer: haswell
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_core
Primitive: salsa20
TimeImplementationCompilerBenchmark dateSUPERCOP version
500refclang -O32013060820130419
500refclang -O3 -mavx2013060820130419
540refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2013060820130419
540refgcc -m64 -O -fomit-frame-pointer2013060820130419
540refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2013060820130419
540refgcc -m64 -march=core2 -O -fomit-frame-pointer2013060820130419
540refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2013060820130419
540refgcc -m64 -march=corei7 -O -fomit-frame-pointer2013060820130419
540refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2013060820130419
544refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2013060820130419
544refgcc -m64 -march=barcelona -O -fomit-frame-pointer2013060820130419
544refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2013060820130419
548refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2013060820130419
548refgcc -m64 -march=k8 -O -fomit-frame-pointer2013060820130419
548refgcc -march=barcelona -O -fomit-frame-pointer2013060820130419
548refgcc -march=k8 -O -fomit-frame-pointer2013060820130419
556refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2013060820130419
556refgcc -march=nocona -O -fomit-frame-pointer2013060820130419
559refgcc -O -fomit-frame-pointer2013060820130419
559refgcc -fno-schedule-insns -O -fomit-frame-pointer2013060820130419
559refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2013060820130419
560refgcc -funroll-loops -m64 -O -fomit-frame-pointer2013060820130419
560refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2013060820130419
563refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2013060820130419
580refgcc -m64 -march=nocona -O -fomit-frame-pointer2013060820130419
584refgcc -funroll-loops -O -fomit-frame-pointer2013060820130419
588refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2013060820130419
900refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2013060820130419
900refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2013060820130419
960refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2013060820130419
1080refgcc -funroll-loops -O2 -fomit-frame-pointer2013060820130419
1080refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2013060820130419
1080refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2013060820130419
1084refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2013060820130419
1084refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2013060820130419
1084refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2013060820130419
1084refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2013060820130419
1088refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2013060820130419
1096refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2013060820130419
1104refgcc -O2 -fomit-frame-pointer2013060820130419
1104refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -O2 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -O3 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2013060820130419
1104refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2013060820130419
1104refgcc -march=k8 -O3 -fomit-frame-pointer2013060820130419
1108refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2013060820130419
1112refgcc -O3 -fomit-frame-pointer2013060820130419
1112refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2013060820130419
1112refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2013060820130419
1116refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2013060820130419
1116refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2013060820130419
1119refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2013060820130419
1120refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2013060820130419
1126refgcc -funroll-loops -O3 -fomit-frame-pointer2013060820130419
1140refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2013060820130419
1140refgcc -march=nocona -O2 -fomit-frame-pointer2013060820130419
1143refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2013060820130419
1143refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2013060820130419
1143refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2013060820130419
1144refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2013060820130419
1144refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2013060820130419
1144refgcc -march=nocona -O3 -fomit-frame-pointer2013060820130419
1148refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2013060820130419
1152refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2013060820130419
1156refgcc -march=barcelona -O3 -fomit-frame-pointer2013060820130419
1160refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2013060820130419
1188refgcc -march=k8 -O2 -fomit-frame-pointer2013060820130419
1192refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2013060820130419
1193refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2013060820130419
1200refgcc -march=barcelona -O2 -fomit-frame-pointer2013060820130419
1252refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2013060820130419
1276refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2013060820130419
1360refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2013060820130419
1360refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2013060820130419
1360refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2013060820130419
1364refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2013060820130419
1364refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2013060820130419
1364refgcc -m64 -march=nocona -Os -fomit-frame-pointer2013060820130419
1368refgcc -funroll-loops -Os -fomit-frame-pointer2013060820130419
1368refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2013060820130419
1368refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2013060820130419
1368refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2013060820130419
1368refgcc -m64 -march=core2 -Os -fomit-frame-pointer2013060820130419
1368refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2013060820130419
1368refgcc -march=nocona -Os -fomit-frame-pointer2013060820130419
1372refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2013060820130419
1372refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2013060820130419
1372refgcc -march=barcelona -Os -fomit-frame-pointer2013060820130419
1376refgcc -Os -fomit-frame-pointer2013060820130419
1376refgcc -m64 -Os -fomit-frame-pointer2013060820130419
1376refgcc -m64 -march=k8 -Os -fomit-frame-pointer2013060820130419
1376refgcc -march=k8 -Os -fomit-frame-pointer2013060820130419
1409refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2013060820130419
1416refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2013060820130419
1468refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2013060820130419
1472refgcc -fno-schedule-insns -Os -fomit-frame-pointer2013060820130419
3272refcc2013060820130419
3272refgcc -funroll-loops2013060820130419
3288refgcc2013060820130419