Implementation notes: amd64, skylake, crypto_aead/cba3

Computer: skylake
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_aead
Primitive: cba3
TimeImplementationCompilerBenchmark dateSUPERCOP version
187786refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
188366refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
189078refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2016121620161026
190668refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2016121620161026
192330refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
192452refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
192666refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
192742refgcc -funroll-loops -O2 -fomit-frame-pointer2016121620161026
193558refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2016121620161026
194222refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2016121620161026
194308refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2016121620161026
194424refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2016121620161026
194540refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2016121620161026
194572refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2016121620161026
194586refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
194626refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2016121620161026
194680refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2016121620161026
195040refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
195118refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2016121620161026
195222refgcc -funroll-loops -m64 -O -fomit-frame-pointer2016121620161026
195232refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2016121620161026
195320refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
195568refgcc -funroll-loops -O -fomit-frame-pointer2016121620161026
195616refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2016121620161026
196002refgcc -march=barcelona -O3 -fomit-frame-pointer2016121620161026
196066refgcc -funroll-loops -O3 -fomit-frame-pointer2016121620161026
196090refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2016121620161026
196254refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
196324refgcc -m64 -O3 -fomit-frame-pointer2016121620161026
196606refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
196648refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
196748refgcc -march=nocona -O3 -fomit-frame-pointer2016121620161026
197020refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2016121620161026
197050refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2016121620161026
197082refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016121620161026
197096refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
197232refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2016121620161026
197486refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2016121620161026
197494refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
197584refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
198118refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2016121620161026
198124refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2016121620161026
198238refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2016121620161026
198302refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2016121620161026
198328refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2016121620161026
198376refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
198432refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
198718refclang -O3 -fomit-frame-pointer -Qunused-arguments2016121620161026
199204refgcc -march=nocona -O2 -fomit-frame-pointer2016121620161026
199416refgcc -O3 -fomit-frame-pointer2016121620161026
199460refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2016121620161026
199472refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2016121620161026
199480refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2016121620161026
199500refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2016121620161026
199758refgcc -march=k8 -O3 -fomit-frame-pointer2016121620161026
199870refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2016121620161026
200016refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2016121620161026
200042refgcc -march=barcelona -O2 -fomit-frame-pointer2016121620161026
200246refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2016121620161026
200294refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016121620161026
200318refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2016121620161026
200638refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2016121620161026
200760refgcc -march=k8 -O2 -fomit-frame-pointer2016121620161026
200888refgcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer2016121620161026
200908refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2016121620161026
200924refgcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer2016121620161026
200946refgcc -O2 -fomit-frame-pointer2016121620161026
200974refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2016121620161026
201078refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2016121620161026
201132refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2016121620161026
201704refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2016121620161026
201740refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2016121620161026
202110refgcc -m64 -O2 -fomit-frame-pointer2016121620161026
202188refgcc -m64 -march=nocona -O -fomit-frame-pointer2016121620161026
202260refgcc -m64 -march=barcelona -O -fomit-frame-pointer2016121620161026
202536refgcc -m64 -march=k8 -O -fomit-frame-pointer2016121620161026
202570refgcc -march=nocona -O -fomit-frame-pointer2016121620161026
202752refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2016121620161026
202946refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2016121620161026
203124refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2016121620161026
203168refgcc -m64 -march=core2 -O -fomit-frame-pointer2016121620161026
203298refgcc -m64 -march=core-avx2 -O -fomit-frame-pointer2016121620161026
203338refgcc -m64 -march=corei7 -O -fomit-frame-pointer2016121620161026
203338refgcc -march=barcelona -O -fomit-frame-pointer2016121620161026
203394refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016121620161026
203422refgcc -march=k8 -O -fomit-frame-pointer2016121620161026
203624refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2016121620161026
203650refgcc -fno-schedule-insns -O -fomit-frame-pointer2016121620161026
203894refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2016121620161026
203960refgcc -O -fomit-frame-pointer2016121620161026
204994refgcc -m64 -O -fomit-frame-pointer2016121620161026
206630refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2016121620161026
206938refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016121620161026
207164refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2016121620161026
207168refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2016121620161026
207196refgcc -march=k8 -Os -fomit-frame-pointer2016121620161026
207252refgcc -m64 -march=core2 -Os -fomit-frame-pointer2016121620161026
207288refgcc -m64 -march=core-avx2 -Os -fomit-frame-pointer2016121620161026
207366refgcc -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
207556refgcc -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
207706refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2016121620161026
207780refgcc -Os -fomit-frame-pointer2016121620161026
207918refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2016121620161026
207988refgcc -march=barcelona -Os -fomit-frame-pointer2016121620161026
208296refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
208596refgcc -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
208756refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2016121620161026
208794refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2016121620161026
208880refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2016121620161026
208932refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2016121620161026
209158refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2016121620161026
209572refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2016121620161026
209616refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2016121620161026
209942refgcc -m64 -Os -fomit-frame-pointer2016121620161026
210070refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2016121620161026
210546refgcc -march=nocona -Os -fomit-frame-pointer2016121620161026
210732refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2016121620161026
212280refgcc -funroll-loops -Os -fomit-frame-pointer2016121620161026
346108refcc2016121620161026
346826refgcc2016121620161026
352640refgcc -funroll-loops2016121620161026