Implementation notes: amd64, genji291, crypto_aead/pi32cipher256v1

Computer: genji291
Architecture: amd64
CPU ID: GenuineIntel-00050671-bfebfbff
SUPERCOP version: 20180818
Operation: crypto_aead
Primitive: pi32cipher256v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
269346? ? ?? ? ?optimized_nonSSEicc_-xCORE-AVX2_-O2_-fomit-frame-pointer2018082020180818
270200? ? ?? ? ?optimized_nonSSEicc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2018082020180818
270354? ? ?? ? ?optimized_nonSSEicc_-xMIC-AVX512_-O2_-fomit-frame-pointer2018082020180818
277410? ? ?? ? ?optimized_nonSSEicc_-xCORE-AVX2_-O3_-fomit-frame-pointer2018082020180818
277606? ? ?? ? ?optimized_nonSSEicc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2018082020180818
278922? ? ?? ? ?optimized_nonSSEicc_-xMIC-AVX512_-O3_-fomit-frame-pointer2018082020180818
285936? ? ?? ? ?optimized_nonSSEicc_-xSSE4.2_-O2_-fomit-frame-pointer2018082020180818
288316? ? ?? ? ?optimized_nonSSEicc_-xSSE4.1_-O2_-fomit-frame-pointer2018082020180818
298284? ? ?? ? ?optimized_nonSSEicc_-xSSE4.1_-O3_-fomit-frame-pointer2018082020180818
302904? ? ?? ? ?optimized_nonSSEicc_-xSSE4.2_-O3_-fomit-frame-pointer2018082020180818
309806? ? ?? ? ?optimized_nonSSEicc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2018082020180818
309932? ? ?? ? ?optimized_nonSSEicc_-xAVX_-O2_-fomit-frame-pointer2018082020180818
310576? ? ?? ? ?optimized_nonSSEicc2018082020180818
315378? ? ?? ? ?optimized_nonSSEicc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2018082020180818
315630? ? ?? ? ?optimized_nonSSEicc_-xAVX_-O3_-fomit-frame-pointer2018082020180818
323778? ? ?? ? ?reficc_-xMIC-AVX512_-O3_-fomit-frame-pointer2018082020180818
330358? ? ?? ? ?optimized_nonSSEicc_-no-vec2018082020180818
340578? ? ?? ? ?reficc_-xMIC-AVX512_-O2_-fomit-frame-pointer2018082020180818
340788? ? ?? ? ?reficc_-xCORE-AVX2_-O3_-fomit-frame-pointer2018082020180818
343868? ? ?? ? ?reficc_-xCOMMON-AVX512_-O3_-fomit-frame-pointer2018082020180818
356594? ? ?? ? ?reficc_-xCOMMON-AVX512_-O2_-fomit-frame-pointer2018082020180818
357826? ? ?? ? ?reficc_-xCORE-AVX2_-O2_-fomit-frame-pointer2018082020180818
361172? ? ?? ? ?reficc_-xSSE4.1_-O3_-fomit-frame-pointer2018082020180818
363286? ? ?? ? ?reficc_-xSSE4.2_-O3_-fomit-frame-pointer2018082020180818
374668? ? ?? ? ?reficc_-xAVX_-O3_-fomit-frame-pointer2018082020180818
374724? ? ?? ? ?reficc_-xCORE-AVX-I_-O3_-fomit-frame-pointer2018082020180818
384762? ? ?? ? ?reficc_-xSSE4.1_-O2_-fomit-frame-pointer2018082020180818
386596? ? ?? ? ?reficc_-no-vec2018082020180818
388374? ? ?? ? ?reficc2018082020180818
389746? ? ?? ? ?reficc_-xAVX_-O2_-fomit-frame-pointer2018082020180818
390992? ? ?? ? ?reficc_-xCORE-AVX-I_-O2_-fomit-frame-pointer2018082020180818
391860? ? ?? ? ?reficc_-xSSE4.2_-O2_-fomit-frame-pointer2018082020180818
2539586? ? ?? ? ?optimized_nonSSEcc2018082020180818
3333568? ? ?? ? ?refcc2018082020180818

Test failure

Implementation: optimized_nonSSE
Security model: unknown
Compiler: gcc
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 210, namely:
CompilerImplementations
gcc optimized_nonSSE
gcc -O2 -fomit-frame-pointer optimized_nonSSE
gcc -O3 -fomit-frame-pointer optimized_nonSSE
gcc -O -fomit-frame-pointer optimized_nonSSE
gcc -Os -fomit-frame-pointer optimized_nonSSE
gcc -fno-schedule-insns -O2 -fomit-frame-pointer optimized_nonSSE
gcc -fno-schedule-insns -O3 -fomit-frame-pointer optimized_nonSSE
gcc -fno-schedule-insns -O -fomit-frame-pointer optimized_nonSSE
gcc -fno-schedule-insns -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops optimized_nonSSE
gcc -funroll-loops -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer optimized_nonSSE
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=corei7 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=k8 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=k8 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=k8 -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=k8 -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=nocona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=nocona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=nocona -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=nocona -Os -fomit-frame-pointer optimized_nonSSE
gcc -march=barcelona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -march=barcelona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -march=barcelona -O -fomit-frame-pointer optimized_nonSSE
gcc -march=barcelona -Os -fomit-frame-pointer optimized_nonSSE
gcc -march=k8 -O2 -fomit-frame-pointer optimized_nonSSE
gcc -march=k8 -O3 -fomit-frame-pointer optimized_nonSSE
gcc -march=k8 -O -fomit-frame-pointer optimized_nonSSE
gcc -march=k8 -Os -fomit-frame-pointer optimized_nonSSE
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv optimized_nonSSE
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv optimized_nonSSE
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv optimized_nonSSE
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv optimized_nonSSE
gcc -march=nocona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -march=nocona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -march=nocona -O -fomit-frame-pointer optimized_nonSSE
gcc -march=nocona -Os -fomit-frame-pointer optimized_nonSSE
gcc ref
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Test failure

Implementation: optimized_nonSSE
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
error 111
crypto_aead_decrypt returns nonzero
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 8, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=barcelona -O -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=barcelona -Os -fomit-frame-pointer optimized_nonSSE
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref

Test failure

Implementation: ref
Security model: unknown
Compiler: gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref