Implementation notes: amd64, haswell, crypto_hashblocks/sha512

Computer: haswell
Architecture: amd64
CPU ID: GenuineIntel-000306c3-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_hashblocks
Primitive: sha512
TimeImplementationCompilerBenchmark dateSUPERCOP version
13796inplacegcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2013060820130419
14628refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2013060820130419
15512inplacegcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2013060820130419
15736inplacegcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2013060820130419
15940refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2013060820130419
16008refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2013060820130419
17196inplacegcc -m64 -march=barcelona -O2 -fomit-frame-pointer2013060820130419
17220inplacegcc -m64 -O2 -fomit-frame-pointer2013060820130419
17388refgcc -march=k8 -O2 -fomit-frame-pointer2013060820130419
17488refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2013060820130419
17665inplacegcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2013060820130419
17672refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2013060820130419
17688refgcc -m64 -march=core2 -O -fomit-frame-pointer2013060820130419
17707inplacegcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2013060820130419
17731inplacegcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2013060820130419
17756refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2013060820130419
17844inplacegcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2013060820130419
17847inplacegcc -m64 -march=barcelona -Os -fomit-frame-pointer2013060820130419
17872inplacegcc -m64 -march=corei7 -O2 -fomit-frame-pointer2013060820130419
17877inplacegcc -march=nocona -O2 -fomit-frame-pointer2013060820130419
17880refgcc -march=nocona -Os -fomit-frame-pointer2013060820130419
17951refgcc -march=barcelona -Os -fomit-frame-pointer2013060820130419
18034refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2013060820130419
18043inplacegcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2013060820130419
18080refclang -O32013060820130419
18316inplacegcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2013060820130419
18328inplacegcc -march=k8 -O -fomit-frame-pointer2013060820130419
18340inplacegcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2013060820130419
18407inplacegcc -m64 -march=corei7 -O -fomit-frame-pointer2013060820130419
18452inplacegcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2013060820130419
18488inplacegcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2013060820130419
18492inplacegcc -O2 -fomit-frame-pointer2013060820130419
18492inplacegcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2013060820130419
18500refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2013060820130419
18508inplacegcc -funroll-loops -O2 -fomit-frame-pointer2013060820130419
18508inplacegcc -funroll-loops -m64 -O2 -fomit-frame-pointer2013060820130419
18572refgcc -m64 -march=nocona -Os -fomit-frame-pointer2013060820130419
18604refgcc -m64 -Os -fomit-frame-pointer2013060820130419
18604refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2013060820130419
18644refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2013060820130419
18648refgcc -m64 -march=k8 -Os -fomit-frame-pointer2013060820130419
18652refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2013060820130419
18680refclang -O3 -mavx2013060820130419
18696refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2013060820130419
18696inplacegcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2013060820130419
18696refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2013060820130419
18696refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2013060820130419
18744refgcc -funroll-loops -O2 -fomit-frame-pointer2013060820130419
18896inplacegcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2013060820130419
18928refgcc -march=barcelona -O2 -fomit-frame-pointer2013060820130419
18988inplacegcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2013060820130419
19004refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2013060820130419
19008inplacegcc -m64 -march=k8 -O -fomit-frame-pointer2013060820130419
19056inplacegcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2013060820130419
19072inplacegcc -m64 -march=corei7-avx -O -fomit-frame-pointer2013060820130419
19076inplacegcc -m64 -march=core2 -O -fomit-frame-pointer2013060820130419
19082inplacegcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2013060820130419
19108refgcc -funroll-loops -Os -fomit-frame-pointer2013060820130419
19118refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2013060820130419
19128inplacegcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2013060820130419
19132inplacegcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2013060820130419
19174refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2013060820130419
19186inplacegcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2013060820130419
19214refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2013060820130419
19228inplacegcc -fno-schedule-insns -O2 -fomit-frame-pointer2013060820130419
19244inplacegcc -funroll-loops -m64 -O3 -fomit-frame-pointer2013060820130419
19244inplacegcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2013060820130419
19246inplacegcc -fno-schedule-insns -Os -fomit-frame-pointer2013060820130419
19256inplacegcc -march=k8 -O2 -fomit-frame-pointer2013060820130419
19278inplacegcc -m64 -Os -fomit-frame-pointer2013060820130419
19284inplacegcc -m64 -march=core2 -Os -fomit-frame-pointer2013060820130419
19294inplacegcc -march=barcelona -O2 -fomit-frame-pointer2013060820130419
19302inplacegcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2013060820130419
19310inplacegcc -m64 -march=k8 -O2 -fomit-frame-pointer2013060820130419
19310inplacegcc -m64 -march=nocona -O2 -fomit-frame-pointer2013060820130419
19314refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2013060820130419
19318refgcc -Os -fomit-frame-pointer2013060820130419
19376refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2013060820130419
19376inplacegcc -funroll-loops -m64 -Os -fomit-frame-pointer2013060820130419
19380refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2013060820130419
19400inplacegcc -funroll-loops -Os -fomit-frame-pointer2013060820130419
19406inplacegcc -march=k8 -Os -fomit-frame-pointer2013060820130419
19414refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2013060820130419
19452refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2013060820130419
19458refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2013060820130419
19480inplaceclang -O32013060820130419
19504inplacegcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2013060820130419
19512refgcc -funroll-loops -m64 -O -fomit-frame-pointer2013060820130419
19616refgcc -m64 -O2 -fomit-frame-pointer2013060820130419
19648inplacegcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2013060820130419
19680inplacegcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2013060820130419
19689refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2013060820130419
19690refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2013060820130419
19762refgcc -march=nocona -O -fomit-frame-pointer2013060820130419
19764inplacegcc -funroll-loops -march=nocona -O -fomit-frame-pointer2013060820130419
19766inplacegcc -m64 -O -fomit-frame-pointer2013060820130419
19774refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2013060820130419
19824inplacegcc -m64 -march=nocona -Os -fomit-frame-pointer2013060820130419
19836inplacegcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2013060820130419
19864refgcc -m64 -march=k8 -O -fomit-frame-pointer2013060820130419
19878refgcc -m64 -march=barcelona -O -fomit-frame-pointer2013060820130419
19928refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2013060820130419
19936refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2013060820130419
19960inplacegcc -m64 -O3 -fomit-frame-pointer2013060820130419
19972inplacegcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2013060820130419
20004inplacegcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2013060820130419
20008inplacegcc -march=barcelona -Os -fomit-frame-pointer2013060820130419
20012refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2013060820130419
20020refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2013060820130419
20024inplacegcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2013060820130419
20040inplacegcc -m64 -march=core2 -O2 -fomit-frame-pointer2013060820130419
20056inplacegcc -march=nocona -Os -fomit-frame-pointer2013060820130419
20064inplacegcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2013060820130419
20064inplacegcc -march=barcelona -O -fomit-frame-pointer2013060820130419
20088refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2013060820130419
20104inplacegcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2013060820130419
20152refgcc -fno-schedule-insns -Os -fomit-frame-pointer2013060820130419
20156inplacegcc -Os -fomit-frame-pointer2013060820130419
20180inplacegcc -funroll-loops -m64 -O -fomit-frame-pointer2013060820130419
20192refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2013060820130419
20216refgcc -O2 -fomit-frame-pointer2013060820130419
20240refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2013060820130419
20256refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2013060820130419
20276refgcc -funroll-loops -O -fomit-frame-pointer2013060820130419
20288refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2013060820130419
20324refgcc -march=nocona -O2 -fomit-frame-pointer2013060820130419
20362inplaceclang -O3 -mavx2013060820130419
20396refgcc -fno-schedule-insns -O -fomit-frame-pointer2013060820130419
20400refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2013060820130419
20400refgcc -m64 -march=corei7 -O -fomit-frame-pointer2013060820130419
20476refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2013060820130419
20504refgcc -O -fomit-frame-pointer2013060820130419
20504inplacegcc -m64 -march=barcelona -O -fomit-frame-pointer2013060820130419
20532refgcc -m64 -march=nocona -O -fomit-frame-pointer2013060820130419
20536refgcc -march=barcelona -O -fomit-frame-pointer2013060820130419
20552refgcc -march=k8 -O -fomit-frame-pointer2013060820130419
20561inplacegcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2013060820130419
20572refgcc -m64 -march=core2 -Os -fomit-frame-pointer2013060820130419
20600inplacegcc -m64 -march=core-avx-i -O -fomit-frame-pointer2013060820130419
20602refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2013060820130419
20604inplacegcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2013060820130419
20648refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2013060820130419
20648inplacegcc -m64 -march=nocona -O -fomit-frame-pointer2013060820130419
20665inplacegcc -fno-schedule-insns -O3 -fomit-frame-pointer2013060820130419
20672refgcc -O3 -fomit-frame-pointer2013060820130419
20685refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2013060820130419
20776inplacegcc -O -fomit-frame-pointer2013060820130419
20785refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2013060820130419
20836inplacegcc -funroll-loops -march=k8 -O -fomit-frame-pointer2013060820130419
20859refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2013060820130419
20860refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2013060820130419
20868refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2013060820130419
20934inplacegcc -m64 -march=corei7 -Os -fomit-frame-pointer2013060820130419
20967refgcc -march=k8 -Os -fomit-frame-pointer2013060820130419
20971inplacegcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2013060820130419
20979refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2013060820130419
20984inplacegcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2013060820130419
21004refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2013060820130419
21324inplacegcc -m64 -march=core2 -O3 -fomit-frame-pointer2013060820130419
21324refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2013060820130419
21340inplacegcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2013060820130419
21361refgcc -m64 -O -fomit-frame-pointer2013060820130419
21435inplacegcc -fno-schedule-insns -O -fomit-frame-pointer2013060820130419
21476refgcc -march=nocona -O3 -fomit-frame-pointer2013060820130419
21527inplacegcc -march=nocona -O -fomit-frame-pointer2013060820130419
21668refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2013060820130419
21696inplacegcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2013060820130419
21732inplacegcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2013060820130419
21768inplacegcc -m64 -march=k8 -Os -fomit-frame-pointer2013060820130419
21792refgcc -funroll-loops -O3 -fomit-frame-pointer2013060820130419
21832refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2013060820130419
21838refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2013060820130419
21844inplacegcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2013060820130419
21848refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2013060820130419
21863inplacegcc -funroll-loops -O -fomit-frame-pointer2013060820130419
21934refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2013060820130419
21974refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2013060820130419
22226inplacegcc -O3 -fomit-frame-pointer2013060820130419
22404inplacegcc -funroll-loops -O3 -fomit-frame-pointer2013060820130419
22404refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2013060820130419
22584refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2013060820130419
22660inplacegcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2013060820130419
22824inplacegcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2013060820130419
22938refgcc -march=barcelona -O3 -fomit-frame-pointer2013060820130419
22976inplacegcc -m64 -march=barcelona -O3 -fomit-frame-pointer2013060820130419
23000inplacegcc -m64 -march=corei7 -O3 -fomit-frame-pointer2013060820130419
23084refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2013060820130419
23168refgcc -march=k8 -O3 -fomit-frame-pointer2013060820130419
23208refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2013060820130419
23228refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2013060820130419
23236refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2013060820130419
23256refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2013060820130419
23581inplacegcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2013060820130419
23928inplacegcc -m64 -march=k8 -O3 -fomit-frame-pointer2013060820130419
23983inplacegcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2013060820130419
24144inplacegcc -march=barcelona -O3 -fomit-frame-pointer2013060820130419
24240refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2013060820130419
24390refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2013060820130419
24463refgcc -m64 -O3 -fomit-frame-pointer2013060820130419
24563inplacegcc -m64 -march=nocona -O3 -fomit-frame-pointer2013060820130419
24721inplacegcc -march=nocona -O3 -fomit-frame-pointer2013060820130419
25031inplacegcc -march=k8 -O3 -fomit-frame-pointer2013060820130419
25056refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2013060820130419
25342refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2013060820130419
31038refcc2013060820130419
32244inplacecc2013060820130419
33536inplacegcc2013060820130419
33540refgcc2013060820130419
35088refgcc -funroll-loops2013060820130419
35173inplacegcc -funroll-loops2013060820130419