Implementation notes: amd64, pmnod076, crypto_kem/ntskem13136

Computer: pmnod076
Architecture: amd64
CPU ID: GenuineIntel-00050657-bfebfbff
SUPERCOP version: 20191017
Operation: crypto_kem
Primitive: ntskem13136
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1640632111204 84 16141271 992 1640avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
164135487514 84 16114887 992 1640avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
175182489168 84 16116663 992 1640avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
178689880679 84 16107134 984 1608avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
1848738104520 84 16134671 992 1640sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
188667679431 84 16106879 992 1640sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
212241480811 84 16108319 992 1640sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
217849874301 84 16100838 984 1608sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
332278075197 84 16104335 992 1640optgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
3408790199608 108 16233765 1048 1608opticc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
3412866123083 84 16154719 992 1640optgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
3415682199608 108 16233765 1048 1608opticc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
3425746199624 108 16233781 1048 1608opticc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
3425748199624 108 16233781 1048 1608opticc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
3435442190296 108 16225021 1048 1640opticc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102420191017
3498684200272 108 16235637 1048 1640opticc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102420191017
3507072177584 108 16212453 1048 1640opticc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102420191017
3559494170920 108 16205509 1048 1608opticc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
3560204212064 108 16247077 1048 1640opticc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102420191017
3563046170904 108 16205493 1048 1608opticc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
3566968170920 108 16205509 1048 1608opticc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
3586696180704 108 16213549 1048 1608opticc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
3592666170904 108 16205493 1048 1608opticc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
359365873809 84 16102759 992 1640optgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
3619982180776 108 16214869 1048 1608opticc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
3621032183016 108 16217141 1048 1608opticc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
3630228183016 108 16217141 1048 1608opticc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
3630618183208 108 16216109 1048 1608opticc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
3633764183016 108 16217141 1048 1608opticc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
3636252180776 108 16214869 1048 1608opticc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
3662182183016 108 16217141 1048 1608opticc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
3662814180776 108 16214869 1048 1608opticc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
3670484180776 108 16214869 1048 1608opticc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
385324468796 84 1696702 984 1608optgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
24385518102384 100 16136965 1016 1608reficc_-march=broadwell_-mtune=broadwell_-O2_-fomit-frame-pointer2019102420191017
24439278129560 100 16163709 1016 1608reficc_-march=broadwell_-mtune=broadwell_-O3_-fomit-frame-pointer2019102420191017
24463802102384 100 16136965 1016 1608reficc_-march=skylake_-mtune=skylake_-O2_-fomit-frame-pointer2019102420191017
24531590129560 100 16163709 1016 1608reficc_-march=skylake_-mtune=skylake_-O3_-fomit-frame-pointer2019102420191017
24552156116856 100 16152213 1016 1640reficc_-march=icelake-client_-mtune=icelake-client_-O2_-fomit-frame-pointer2019102420191017
24553352129576 100 16163725 1016 1608reficc_-march=haswell_-mtune=haswell_-O3_-fomit-frame-pointer2019102420191017
24555002120072 100 16154789 1016 1640reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O3_-fomit-frame-pointer2019102420191017
24564622102400 100 16136981 1016 1608reficc_-march=core-avx2_-mtune=core-avx2_-O2_-fomit-frame-pointer2019102420191017
24569712102400 100 16136981 1016 1608reficc_-march=haswell_-mtune=haswell_-O2_-fomit-frame-pointer2019102420191017
24571876129576 100 16163725 1016 1608reficc_-march=core-avx2_-mtune=core-avx2_-O3_-fomit-frame-pointer2019102420191017
24577948108712 100 16143573 1016 1640reficc_-march=skylake-avx512_-mtune=skylake-avx512_-O2_-fomit-frame-pointer2019102420191017
24607142128048 100 16163053 1016 1640reficc_-march=icelake-client_-mtune=icelake-client_-O3_-fomit-frame-pointer2019102420191017
25032998103616 100 16136509 1016 1608reficc_-march=corei7_-mtune=corei7_-O3_-fomit-frame-pointer2019102420191017
25228484100704 100 16133541 1016 1608reficc_-march=corei7_-mtune=corei7_-O2_-fomit-frame-pointer2019102420191017
25234444102768 100 16136885 1016 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O3_-fomit-frame-pointer2019102420191017
25337466100064 100 16134149 1016 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O2_-fomit-frame-pointer2019102420191017
25344572102768 100 16136885 1016 1608reficc_-march=ivybridge_-mtune=ivybridge_-O3_-fomit-frame-pointer2019102420191017
25377538100064 100 16134149 1016 1608reficc_-march=ivybridge_-mtune=ivybridge_-O2_-fomit-frame-pointer2019102420191017
25397870100064 100 16134149 1016 1608reficc_-march=core-avx-i_-mtune=core-avx-i_-O2_-fomit-frame-pointer2019102420191017
25400532102768 100 16136885 1016 1608reficc_-march=sandybridge_-mtune=sandybridge_-O3_-fomit-frame-pointer2019102420191017
25404464102768 100 16136885 1016 1608reficc_-march=corei7-avx_-mtune=corei7-avx_-O3_-fomit-frame-pointer2019102420191017
25441442100064 100 16134149 1016 1608reficc_-march=sandybridge_-mtune=sandybridge_-O2_-fomit-frame-pointer2019102420191017
2607589635215 76 1667031 960 1640refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
2658772224802 76 1653943 960 1640refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
2692684623341 76 1652279 960 1640refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017
2967635019989 76 1647862 952 1608refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019102420191017

Test failure

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

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

Compiler output

Implementation: crypto_kem/ntskem13136/avx2
Compiler: icc -march=broadwell -mtune=broadwell -O2 -fomit-frame-pointer
nts_kem.c: nts_kem.c(717): error: expression must have integral type
nts_kem.c: v[i] = ~v[i];
nts_kem.c: ^
nts_kem.c:
nts_kem.c: compilation aborted for nts_kem.c (code 2)

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

Compiler output

Implementation: crypto_kem/ntskem13136/avx2
Compiler: icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer
nts_kem.c: nts_kem.c(373): error: a value of type "union __m256i" cannot be assigned to an entity of type "vector"
nts_kem.c: Q[i][NTS_KEM_PARAM_R_VEC-1] = _mm256_setzero_si256();
nts_kem.c: ^
nts_kem.c:
nts_kem.c: nts_kem.c(409): error: a value of type "union __m256i" cannot be assigned to an entity of type "vector"
nts_kem.c: c_c[i] = _mm256_setzero_si256();
nts_kem.c: ^
nts_kem.c:
nts_kem.c: nts_kem.c(517): error: a value of type "union __m256i" cannot be used to initialize an entity of type "vector"
nts_kem.c: vector allones = _mm256_set1_epi64x(-1);
nts_kem.c: ^
nts_kem.c:
nts_kem.c: nts_kem.c(592): warning #167: argument of type "vector (*)[13]" is incompatible with parameter of type "__m256i (*)[13]"
nts_kem.c: bitslice_fft(evals, sigma);
nts_kem.c: ^
nts_kem.c:
nts_kem.c: nts_kem.c(608): warning #167: argument of type "vector *" is incompatible with parameter of type "const __m256i *"
nts_kem.c: error[i] = vector_ff_or(evals[i]);
nts_kem.c: ^
nts_kem.c:
nts_kem.c: nts_kem.c(608): error: a value of type "__m256i" cannot be assigned to an entity of type "vector"
nts_kem.c: error[i] = vector_ff_or(evals[i]);
nts_kem.c: ^
nts_kem.c:
nts_kem.c: nts_kem.c(609): error: argument of type "vector" is incompatible with parameter of type "union __m256i"
nts_kem.c: ...

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
icc -march=core-avx-i -mtune=core-avx-i -O2 -fomit-frame-pointer avx2
icc -march=core-avx-i -mtune=core-avx-i -O3 -fomit-frame-pointer avx2
icc -march=corei7-avx -mtune=corei7-avx -O2 -fomit-frame-pointer avx2
icc -march=corei7-avx -mtune=corei7-avx -O3 -fomit-frame-pointer avx2
icc -march=corei7 -mtune=corei7 -O2 -fomit-frame-pointer avx2
icc -march=corei7 -mtune=corei7 -O3 -fomit-frame-pointer avx2
icc -march=ivybridge -mtune=ivybridge -O2 -fomit-frame-pointer avx2
icc -march=ivybridge -mtune=ivybridge -O3 -fomit-frame-pointer avx2
icc -march=sandybridge -mtune=sandybridge -O2 -fomit-frame-pointer avx2
icc -march=sandybridge -mtune=sandybridge -O3 -fomit-frame-pointer avx2