Implementation notes: amd64, skylake, crypto_hash/fsb256

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_hash
Primitive: fsb256
TimeImplementationCompilerBenchmark dateSUPERCOP version
59964cleangcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121520161026
60066cleangcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121520161026
60324cleangcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121520161026
60520cleangcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121520161026
60534cleangcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121520161026
60574cleangcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121520161026
60580cleangcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121520161026
60586cleangcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121520161026
60592cleangcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121520161026
60648cleangcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121520161026
60670cleangcc -fno-schedule-insns -O -fomit-frame-pointer2016121520161026
60678cleangcc -funroll-loops -O2 -fomit-frame-pointer2016121520161026
60708cleangcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121520161026
60756cleangcc -m64 -O -fomit-frame-pointer2016121520161026
60798cleangcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121520161026
60802cleangcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121520161026
60856cleangcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121520161026
60882cleangcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121520161026
60890cleangcc -m64 -march=barcelona -O -fomit-frame-pointer2016121520161026
60920cleangcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121520161026
60982cleangcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121520161026
61086cleangcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121520161026
61126cleangcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121520161026
61190cleanclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121520161026
61252cleangcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121520161026
61324cleangcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121520161026
61398cleangcc -march=k8 -O3 -fomit-frame-pointer2016121520161026
61492cleangcc -m64 -march=corei7 -O -fomit-frame-pointer2016121520161026
61640cleangcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121520161026
61646cleangcc -march=nocona -O2 -fomit-frame-pointer2016121520161026
61682cleangcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121520161026
61776cleangcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121520161026
61776cleangcc -march=nocona -O3 -fomit-frame-pointer2016121520161026
61786cleanclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121520161026
61872cleangcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121520161026
61898cleanclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121520161026
61910cleangcc -march=barcelona -O2 -fomit-frame-pointer2016121520161026
61926cleanclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
62054cleangcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121520161026
62264cleangcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121520161026
62372cleangcc -funroll-loops -m64 -O -fomit-frame-pointer2016121520161026
62428cleangcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121520161026
62450cleanclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
62494cleangcc -m64 -march=nocona -O -fomit-frame-pointer2016121520161026
62522cleangcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121520161026
62802cleangcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121520161026
62828cleangcc -O2 -fomit-frame-pointer2016121520161026
62854cleangcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121520161026
62896cleangcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121520161026
62924cleangcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121520161026
62976cleangcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121520161026
62986cleangcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121520161026
63026cleangcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121520161026
63046cleangcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121520161026
63128cleangcc -march=barcelona -O -fomit-frame-pointer2016121520161026
63140cleangcc -funroll-loops -O -fomit-frame-pointer2016121520161026
63140cleangcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121520161026
63150cleangcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121520161026
63152cleangcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121520161026
63178cleangcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121520161026
63182cleangcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121520161026
63208cleangcc -march=k8 -O2 -fomit-frame-pointer2016121520161026
63332cleangcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121520161026
63354cleangcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121520161026
63382cleangcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121520161026
63464cleanclang -O3 -fomit-frame-pointer -Qunused-arguments2016121520161026
63474cleangcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121520161026
63480cleangcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121520161026
63502cleangcc -funroll-loops -O3 -fomit-frame-pointer2016121520161026
63548cleangcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121520161026
63578cleangcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121520161026
63656cleangcc -m64 -O3 -fomit-frame-pointer2016121520161026
63680cleangcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121520161026
63682cleangcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121520161026
63694cleangcc -march=k8 -O -fomit-frame-pointer2016121520161026
63766cleangcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121520161026
63798cleangcc -march=nocona -O -fomit-frame-pointer2016121520161026
63926cleangcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121520161026
64022cleangcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121520161026
64136cleanclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
64158cleanclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
64222cleanclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121520161026
64408cleangcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121520161026
64410cleanclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121520161026
64412cleangcc -m64 -march=core2 -O -fomit-frame-pointer2016121520161026
64466cleangcc -m64 -O2 -fomit-frame-pointer2016121520161026
64498cleangcc -march=barcelona -O3 -fomit-frame-pointer2016121520161026
64532cleangcc -O -fomit-frame-pointer2016121520161026
64716cleangcc -m64 -march=k8 -O -fomit-frame-pointer2016121520161026
64890cleangcc -O3 -fomit-frame-pointer2016121520161026
65952cleangcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121520161026
66746cleangcc -funroll-loops2016121520161026
69126cleancc2016121520161026
69586cleangcc2016121520161026
71806cleangcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121520161026
71930cleangcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121520161026
72026cleangcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121520161026
72062cleangcc -march=barcelona -Os -fomit-frame-pointer2016121520161026
72136cleangcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121520161026
72180cleangcc -march=k8 -Os -fomit-frame-pointer2016121520161026
72624cleangcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121520161026
72740cleangcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121520161026
72796cleangcc -m64 -Os -fomit-frame-pointer2016121520161026
72860cleangcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121520161026
72880cleangcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121520161026
72882cleangcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121520161026
73156cleangcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121520161026
73160cleangcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121520161026
73184cleangcc -Os -fomit-frame-pointer2016121520161026
73368cleangcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121520161026
73474cleangcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121520161026
73494cleangcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121520161026
73532cleangcc -fno-schedule-insns -Os -fomit-frame-pointer2016121520161026
73652cleangcc -funroll-loops -Os -fomit-frame-pointer2016121520161026
73846cleangcc -march=nocona -Os -fomit-frame-pointer2016121520161026
73864cleangcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121520161026
74138cleangcc -m64 -march=core2 -Os -fomit-frame-pointer2016121520161026
74704cleangcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121520161026
74882cleangcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121520161026
75032cleangcc -m64 -march=nocona -Os -fomit-frame-pointer2016121520161026
76048cleangcc -m64 -march=k8 -Os -fomit-frame-pointer2016121520161026
42943262refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121520161026
42962712refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121520161026
43033190refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121520161026
43054070refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121520161026
43080468refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121520161026
43136028refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121520161026
43365934refgcc -march=k8 -O2 -fomit-frame-pointer2016121520161026
43440144refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121520161026
43446954refgcc -march=k8 -O3 -fomit-frame-pointer2016121520161026
43450190refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121520161026
43506652refgcc -march=nocona -O3 -fomit-frame-pointer2016121520161026
43544182refgcc -O2 -fomit-frame-pointer2016121520161026
43564822refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121520161026
43565324refgcc -march=barcelona -O3 -fomit-frame-pointer2016121520161026
43603652refgcc -m64 -O3 -fomit-frame-pointer2016121520161026
43605612refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121520161026
43606506refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121520161026
43630998refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121520161026
43639348refgcc -O3 -fomit-frame-pointer2016121520161026
43650094refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121520161026
43660628refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121520161026
43671134refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121520161026
43676638refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121520161026
43678258refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121520161026
43680212refgcc -march=barcelona -O2 -fomit-frame-pointer2016121520161026
43701182refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121520161026
43701370refgcc -march=nocona -O2 -fomit-frame-pointer2016121520161026
43735574refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121520161026
43756540refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121520161026
43756680refgcc -m64 -O2 -fomit-frame-pointer2016121520161026
43767530refgcc -funroll-loops -O3 -fomit-frame-pointer2016121520161026
43771348refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121520161026
43796240refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121520161026
43820608refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121520161026
43824678refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121520161026
43847060refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121520161026
43943862refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121520161026
43954244refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121520161026
43956650refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121520161026
43964198refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121520161026
44051770refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121520161026
44065652refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121520161026
44118068refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121520161026
44139502refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121520161026
44191564refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121520161026
44282408refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121520161026
44287968refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121520161026
44348684refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121520161026
44410218refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121520161026
44429186refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121520161026
44445904refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121520161026
44457000refgcc -funroll-loops -O -fomit-frame-pointer2016121520161026
44464900refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121520161026
44475018refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121520161026
44501274refgcc -O -fomit-frame-pointer2016121520161026
44578416refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121520161026
44620868refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121520161026
44662444refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
44670394refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121520161026
44677458refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121520161026
44682204refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121520161026
44687766refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121520161026
44727966refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121520161026
44743814refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121520161026
44751386refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121520161026
44751776refgcc -march=k8 -O -fomit-frame-pointer2016121520161026
44757714refgcc -march=nocona -O -fomit-frame-pointer2016121520161026
44768372refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121520161026
44771398refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121520161026
44797894refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121520161026
44800910refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121520161026
44801396refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121520161026
44831190refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121520161026
44837356refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121520161026
44875160refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121520161026
44882200refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121520161026
44885594refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121520161026
44893414refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121520161026
44896172refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121520161026
44899436refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121520161026
44912570refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121520161026
44950304refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121520161026
44952042refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121520161026
44968468refgcc -funroll-loops -Os -fomit-frame-pointer2016121520161026
44974672refgcc -funroll-loops -O2 -fomit-frame-pointer2016121520161026
44996852refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121520161026
44997214refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121520161026
45002930refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121520161026
45017280refgcc -m64 -O -fomit-frame-pointer2016121520161026
45018172refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121520161026
45061500refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121520161026
45066438refgcc -march=barcelona -O -fomit-frame-pointer2016121520161026
45156366refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121520161026
45192296refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121520161026
45299122refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121520161026
45355032refgcc -march=nocona -Os -fomit-frame-pointer2016121520161026
45383720refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121520161026
45453550refgcc -march=k8 -Os -fomit-frame-pointer2016121520161026
45455028refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121520161026
45558482refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121520161026
45560912refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121520161026
45577390refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121520161026
45634616refgcc -march=barcelona -Os -fomit-frame-pointer2016121520161026
45669302refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121520161026
45670258refgcc -Os -fomit-frame-pointer2016121520161026
45671338refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121520161026
45673240refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121520161026
45677484refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121520161026
45679166refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121520161026
45708034refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121520161026
45717736refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121520161026
45747840refgcc -m64 -Os -fomit-frame-pointer2016121520161026
45757104refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121520161026
45785364refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
45807372refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121520161026
45820092refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
46060442refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121520161026
46123896refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121520161026
134736724refcc2016121520161026
134929838refgcc2016121520161026
134946432refgcc -funroll-loops2016121520161026