Implementation notes: amd64, genji262, crypto_hash/sarmal256

Computer: genji262
Architecture: amd64
CPU ID: AuthenticAMD-00800f12-178bfbff
SUPERCOP version: 20191017
Operation: crypto_hash
Primitive: sarmal256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
985630064 17216 12845269 18064 872opt64icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
985630064 17216 12845269 18064 872opt64icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
985630064 17216 12845269 18064 872opt64icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
987830064 17216 12845269 18064 872opt64icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
994429066 16640 12840665 17448 904opt64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
996630704 17216 12846309 18064 872opt64icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
998829112 16384 041395 17176 736opt64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
998830704 17216 12846309 18064 872opt64icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
998830704 17216 12846309 18064 872opt64icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
1001030704 17216 12846309 18064 872opt64icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
1005430448 17216 12845717 18064 872opt64icc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
1005430448 17216 12845717 18064 872opt64icc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
1005430448 17216 12845717 18064 872opt64icc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
1005430448 17216 12845717 18064 872opt64icc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
1031828417 16640 12838428 17440 904opt64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1034029960 17216 12843957 18064 872opt64icc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
1036228783 16384 041251 17176 752opt64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
1038428477 16384 040355 17176 752opt64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
1038428477 16384 040355 17176 752opt64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
1038428117 16640 12837980 17440 904opt64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1038431024 17216 12846261 18064 872opt64icc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
1042830552 17216 12844493 18064 872opt64icc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
1047226760 17216 12841965 18064 872asm64icc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
1047226760 17216 12841965 18064 872asm64icc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
1049426760 17216 12842365 18064 872asm64icc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
1049426760 17216 12841965 18064 872asm64icc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
1051626760 17216 12842365 18064 872asm64icc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
1051626760 17216 12842365 18064 872asm64icc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
1053826760 17216 12842365 18064 872asm64icc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
1053826760 17216 12841965 18064 872asm64icc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
1053831024 17216 12846261 18064 872opt64icc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
1056031024 17216 12846261 18064 872opt64icc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
1056031024 17216 12846261 18064 872opt64icc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
1064825250 16640 12836849 17448 904asm64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1064827584 17216 12842853 18064 872asm64icc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
1064827104 17216 12841045 18064 872asm64icc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
1064827104 17216 12841101 18064 872asm64icc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
1067024689 16640 12834700 17440 904asm64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1067027584 17216 12842821 18064 872asm64icc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
1067027584 17216 12842821 18064 872asm64icc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
1067027584 17216 12842853 18064 872asm64icc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
1067027584 17216 12842821 18064 872asm64icc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
1067027584 17216 12842853 18064 872asm64icc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
1069227584 17216 12842821 18064 872asm64icc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
1071427584 17216 12842853 18064 872asm64icc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
1078024343 16640 12834204 17440 904asm64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1106628249 16384 037441 17168 736opt64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019102420191017
1119824776 16640 12833772 17424 904opt64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1137423850 16640 12832844 17424 904asm64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

Test failure

Implementation: asm64
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 asm64
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer asm64
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer asm64
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer asm64
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer asm64
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer asm64
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt64
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt64
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer opt64
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer opt64
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer opt64
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer opt64

Compiler output

Implementation: asm64
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
sarmal.c: sarmal.c:945:14: error: invalid instruction mnemonic 'addq'
sarmal.c: "push rax\n\t"
sarmal.c: ^
sarmal.c: <inline asm>:1323:2: note: instantiated into assembly here
sarmal.c: addq [rdx], 1024
sarmal.c: ^~~~
sarmal.c: sarmal.c:1120:14: error: invalid instruction mnemonic 'addq'
sarmal.c: "push rax\n\t"
sarmal.c: ^
sarmal.c: <inline asm>:1075:2: note: instantiated into assembly here
sarmal.c: addq [rdx], 1024
sarmal.c: ^~~~
sarmal.c: sarmal.c:945:14: error: invalid instruction mnemonic 'addq'
sarmal.c: "push rax\n\t"
sarmal.c: ^
sarmal.c: <inline asm>:1323:2: note: instantiated into assembly here
sarmal.c: addq [rdx], 1024
sarmal.c: ^~~~
sarmal.c: sarmal.c:1120:14: error: invalid instruction mnemonic 'addq'
sarmal.c: "push rax\n\t"
sarmal.c: ^
sarmal.c: <inline asm>:1075:2: note: instantiated into assembly here
sarmal.c: addq [rdx], 1024
sarmal.c: ^~~~
sarmal.c: sarmal.c:945:14: error: invalid instruction mnemonic 'addq'
sarmal.c: ...

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

Compiler output

Implementation: asm64
Security model: unknown
Compiler: clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
sarmal.c: sarmal.c:945:14: error: invalid instruction mnemonic 'addq'
sarmal.c: "push rax\n\t"
sarmal.c: ^
sarmal.c: <inline asm>:1323:2: note: instantiated into assembly here
sarmal.c: addq [rdx], 1024
sarmal.c: ^~~~
sarmal.c: sarmal.c:1120:14: error: invalid instruction mnemonic 'addq'
sarmal.c: "push rax\n\t"
sarmal.c: ^
sarmal.c: <inline asm>:1075:2: note: instantiated into assembly here
sarmal.c: addq [rdx], 1024
sarmal.c: ^~~~
sarmal.c: 2 errors generated.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE asm64