Implementation notes: amd64, pmnod076, crypto_sign/redgemss128

Computer: pmnod076
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_sign
Primitive: redgemss128
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
4112006121232 0 0122700 896 1600skylakeicc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
4119202120568 0 0123596 896 1600skylakeicc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
4125926120584 0 0123660 896 1600skylakeicc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
4128546120432 0 0121732 896 1600skylakeicc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
4130212120432 0 0121732 896 1600skylakeicc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
4140898119392 0 0124980 896 1632skylakeicc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102420191017
4140966117856 0 0123924 896 1632skylakeicc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102420191017
4147932120432 0 0121732 896 1600skylakeicc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
4149848120584 0 0123660 896 1600skylakeicc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
4153614121864 0 0124620 896 1600skylakeicc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
4154680121864 0 0124620 896 1600skylakeicc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
4158342121232 0 0122700 896 1600skylakeicc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
4172482121232 0 0122700 896 1600skylakeicc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
4177834121848 0 0124620 896 1600skylakeicc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
4178778121232 0 0122700 896 1600skylakeicc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
419037882290 0 092045 864 1632skylakegcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4190650121848 0 0124620 896 1600skylakeicc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
4266000120568 0 0123596 896 1600skylakeicc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
4289556120432 0 0121732 896 1600skylakeicc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
432823672741 0 083269 856 1600skylakegcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4336382118416 0 0124500 896 1632opticc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102420191017
4341874119936 0 0125492 896 1632opticc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102420191017
4359350120624 0 0121892 896 1600opticc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
4368890120760 0 0123820 896 1600opticc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
4380470122376 0 0125132 896 1600opticc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
4386716122360 0 0125132 896 1600opticc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
4388086120776 0 0123820 896 1600opticc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
439463679571 0 089933 864 1632skylakegcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4395086120624 0 0121892 896 1600opticc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
4396902121744 0 0123212 896 1600opticc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
4397832122376 0 0125132 896 1600opticc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
4398550120624 0 0121892 896 1600opticc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
4402544120624 0 0121892 896 1600opticc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
4406460121744 0 0123212 896 1600opticc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
4423812122360 0 0125132 896 1600opticc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
443247882544 0 092301 864 1632optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4443918120776 0 0123820 896 1600opticc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
4444178121744 0 0123212 896 1600opticc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
4445530121744 0 0123212 896 1600opticc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
4522594120760 0 0123820 896 1600opticc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
455364672909 0 083333 856 1600optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
460705879728 0 090125 864 1632optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
479757493626 0 0104445 864 1632skylakegcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
495296893856 0 0104701 864 1632optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
5207312120296 0 0127100 896 1632skylakeicc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102420191017
5235658122480 0 0129084 896 1632skylakeicc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102420191017
5453434123024 0 0129660 896 1632opticc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102420191017
5468028120856 0 0127676 896 1632opticc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102420191017
3994293492744 56 281883222 8248 6920reficpc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102420191017
3995701041274 112 71808606 4408 6776refg++_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4005033292424 56 281880870 8248 6856reficpc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
4010123092408 56 281880806 8248 6856reficpc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
4010425692424 56 281880870 8248 6856reficpc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
4018509453506 112 71826574 4408 6776refg++_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4032772848623 112 71818362 4408 6776refg++_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
4039158088736 56 281881078 8248 6856reficpc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
4041347888736 56 281881078 8248 6856reficpc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
4041742085168 56 281876686 8248 6856reficpc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
4042949092408 56 281880806 8248 6856reficpc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
4044742891328 56 281881750 8248 6920reficpc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102420191017
4046445891768 56 281882662 8248 6920reficpc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102420191017
4072765088736 56 281881078 8248 6856reficpc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
4077427288736 56 281881078 8248 6856reficpc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
4084841289744 56 281882062 8248 6856reficpc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
4105665689744 56 281882062 8248 6856reficpc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
4108492289744 56 281882062 8248 6856reficpc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
4112039893336 56 281881342 8248 6856reficpc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
4113023090352 56 281881022 8248 6920reficpc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102420191017
4115470693352 56 281881406 8248 6856reficpc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
4117345686032 56 281877550 8248 6856reficpc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
4119511493336 56 281881342 8248 6856reficpc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
4127928889744 56 281882062 8248 6856reficpc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
4141097493352 56 281881406 8248 6856reficpc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
4163126035641 112 71805946 4400 6776refg++_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

Test failure

Implementation: crypto_sign/redgemss128/opt
Compiler: icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt skylake
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt skylake
icpc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer ref
icpc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/redgemss128/opt
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
chooseRootHFE_gf2nx.c: chooseRootHFE_gf2nx.c(65): warning #266: function "free" declared implicitly
chooseRootHFE_gf2nx.c: free(roots);
chooseRootHFE_gf2nx.c: ^
chooseRootHFE_gf2nx.c:
findRootsSplit_gf2nx.c: findRootsSplit_gf2nx.c(96): warning #266: function "malloc" declared implicitly
findRootsSplit_gf2nx.c: ALIGNED_MALLOC(poly_frob,UINT*,((deg<<1)-1)*NB_WORD_GFqn,sizeof(UINT));
findRootsSplit_gf2nx.c: ^
findRootsSplit_gf2nx.c:
findRootsSplit_gf2nx.c: findRootsSplit_gf2nx.c(129): warning #266: function "free" declared implicitly
findRootsSplit_gf2nx.c: free(poly_frob);
findRootsSplit_gf2nx.c: ^
findRootsSplit_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(31): warning #266: function "calloc" declared implicitly
findRoots_gf2nx.c: *roots=(UINT*)calloc(NB_WORD_GFqn,sizeof(UINT));
findRoots_gf2nx.c: ^
findRoots_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(41): warning #266: function "calloc" declared implicitly
findRoots_gf2nx.c: ALIGNED_CALLOC(poly,UINT*,((df<<1)-1)*NB_WORD_GFqn,sizeof(UINT));
findRoots_gf2nx.c: ^
findRoots_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(50): warning #266: function "free" declared implicitly
findRoots_gf2nx.c: free(poly);
findRoots_gf2nx.c: ^
findRoots_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(76): warning #266: function "free" declared implicitly
findRoots_gf2nx.c: free(poly2);
findRoots_gf2nx.c: ^
findRoots_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(85): warning #266: function "free" declared implicitly
findRoots_gf2nx.c: free(poly);
findRoots_gf2nx.c: ^
findRoots_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(124): warning #266: function "calloc" declared implicitly
findRoots_gf2nx.c: ALIGNED_CALLOC(poly,UINT*,((HFEDeg<<1)-1)*NB_WORD_GFqn,sizeof(UINT));
findRoots_gf2nx.c: ^
findRoots_gf2nx.c:
findRoots_gf2nx.c: findRoots_gf2nx.c(133): warning #266: function "free" declared implicitly
findRoots_gf2nx.c: ...
frobeniusMap_gf2nx.c: frobeniusMap_gf2nx.c(276): warning #266: function "malloc" declared implicitly
frobeniusMap_gf2nx.c: table=(UINT*)malloc((KX*HFEDeg+POW_II)*NB_WORD_GFqn*sizeof(UINT));
frobeniusMap_gf2nx.c: ^
frobeniusMap_gf2nx.c:
frobeniusMap_gf2nx.c: frobeniusMap_gf2nx.c(291): warning #266: function "calloc" declared implicitly
frobeniusMap_gf2nx.c: Xqn_sqr=(UINT*)calloc(HFEDeg*NB_WORD_GFqn,sizeof(UINT));
frobeniusMap_gf2nx.c: ^
frobeniusMap_gf2nx.c:
frobeniusMap_gf2nx.c: frobeniusMap_gf2nx.c(344): warning #266: function "free" declared implicitly
frobeniusMap_gf2nx.c: free(table);
frobeniusMap_gf2nx.c: ^
frobeniusMap_gf2nx.c:
signHFE.c: signHFE.c(173): warning #266: function "malloc" declared implicitly
signHFE.c: ALIGNED_MALLOC(F,UINT*,NB_UINT_HFEPOLY,sizeof(UINT));
signHFE.c: ^
signHFE.c:
signHFE.c: signHFE.c(664): warning #266: function "free" declared implicitly
signHFE.c: free(F);
signHFE.c: ^
signHFE.c:
signHFE.c: signHFE.c(695): warning #266: function "free" declared implicitly
signHFE.c: free(F);
signHFE.c: ^
signHFE.c:
signHFE.c: signHFE.c(1268): warning #266: function "free" declared implicitly
signHFE.c: free(F);
signHFE.c: ^
signHFE.c:
signHFE.c: signHFE.c(1325): warning #266: function "free" declared implicitly
signHFE.c: free(F);
signHFE.c: ^
signHFE.c:

Number of similar (compiler,implementation) pairs: 44, namely:
CompilerImplementations
icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer opt skylake
icc -march=broadwell -mtune=broadwell -O3 -fomit-frame-pointer opt skylake
icc -march=cannonlake -mtune=cannonlake -O2 -fomit-frame-pointer opt skylake
icc -march=cannonlake -mtune=cannonlake -O3 -fomit-frame-pointer opt skylake
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer opt skylake
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer opt skylake
icc -march=core-avx2 -mtune=core-avx2 -O2 -fomit-frame-pointer opt skylake
icc -march=core-avx2 -mtune=core-avx2 -O3 -fomit-frame-pointer opt skylake
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer opt skylake
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer opt skylake
icc -march=haswell -mtune=haswell -O2 -fomit-frame-pointer opt skylake
icc -march=haswell -mtune=haswell -O3 -fomit-frame-pointer opt skylake
icc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer opt skylake
icc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer opt skylake
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer opt skylake
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer opt skylake
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer opt skylake
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer opt skylake
icc -march=skylake-avx512 -mtune=skylake-avx512 -O2 -fomit-frame-pointer opt skylake
icc -march=skylake-avx512 -mtune=skylake-avx512 -O3 -fomit-frame-pointer opt skylake
icc -march=skylake -mtune=skylake -O2 -fomit-frame-pointer opt skylake
icc -march=skylake -mtune=skylake -O3 -fomit-frame-pointer opt skylake

Compiler output

Implementation: crypto_sign/redgemss128/opt
Compiler: icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer
arith_gf2n.c: In file included from tools_gf2n.h(162),
arith_gf2n.c: from arith_gf2n.h(9),
arith_gf2n.c: from arith_gf2n.c(1):
arith_gf2n.c: mul_gf2x.h(17): catastrophic error: cannot open source file "gf2x/gf2x_mul1.h"
arith_gf2n.c: #include <gf2x/gf2x_mul1.h>
arith_gf2n.c: ^
arith_gf2n.c:
arith_gf2n.c: compilation aborted for arith_gf2n.c (code 4)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer opt skylake
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer opt skylake