Implementation notes: amd64, genji262, crypto_aead/pi32cipher256v1

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_aead
Primitive: pi32cipher256v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
125642102544 0 0121133 840 992optimized_nonSSEicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
125752102544 0 0121133 840 992optimized_nonSSEicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
125840102544 0 0121133 840 992optimized_nonSSEicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
125862102544 0 0121133 840 992optimized_nonSSEicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
12749092616 0 0109541 840 992optimized_nonSSEicc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
127974108928 0 0127117 840 992optimized_nonSSEicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
128150108928 0 0127117 840 992optimized_nonSSEicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
128216108928 0 0127117 840 992optimized_nonSSEicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
128766100648 0 0117629 840 992optimized_nonSSEicc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
128788108928 0 0127117 840 992optimized_nonSSEicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
16310851736 0 068717 840 928reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
16486854968 0 073157 840 928reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
16493454968 0 073157 840 928reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
16500054968 0 073157 840 928reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
16539655096 0 072021 840 928reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
16596854968 0 073157 840 928reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
16660658288 0 076877 840 928reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
16665058288 0 076877 840 928reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
16777258288 0 076877 840 928reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
16808058288 0 076877 840 928reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
21452299280 0 0117517 840 992optimized_nonSSEicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
21555699280 0 0117517 840 992optimized_nonSSEicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
21560099280 0 0117517 840 992optimized_nonSSEicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
21586499280 0 0117517 840 992optimized_nonSSEicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
216216106384 0 0124653 840 992optimized_nonSSEicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
216370106384 0 0124653 840 992optimized_nonSSEicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
216854106384 0 0124653 840 992optimized_nonSSEicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
217558106384 0 0124653 840 992optimized_nonSSEicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
26813654032 0 072301 840 928reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
26818054032 0 072301 840 928reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
26824654032 0 072301 840 928reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
26868654032 0 072301 840 928reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
27702457520 0 075757 840 928reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
27704657520 0 075757 840 928reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
27709057520 0 075757 840 928reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
27709057520 0 075757 840 928reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017

Test failure

Implementation: optimized_nonSSE
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_aead_decrypt returns nonzero

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE optimized_nonSSE
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE ref

Test failure

Implementation: optimized_nonSSE
Security model: unknown
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer optimized_nonSSE
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer optimized_nonSSE
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer optimized_nonSSE
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer optimized_nonSSE
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer optimized_nonSSE
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer optimized_nonSSE
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer ref
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer ref
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer ref

Compiler output

Implementation: optimized_nonSSE
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: encrypt.c:354:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:468:68: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:622:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: 3 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE optimized_nonSSE

Compiler output

Implementation: ref
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: encrypt.c:240:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:354:68: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: c[CRYPTO_NSECBYTES+b+i] = InternalState8[i1] = InternalState8[i1++] ^ m[b+i];
encrypt.c: ~~ ^
encrypt.c: encrypt.c:508:42: warning: unsequenced modification and access to 'i1' [-Wunsequenced]
encrypt.c: InternalState8[i1] = InternalState8[i1++] ^ ad[b+i];
encrypt.c: ~~ ^
encrypt.c: 3 warnings generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE ref