Implementation notes: amd64, pmnod003, crypto_kem/ntskem13136

Computer: pmnod003
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20190816
Operation: crypto_kem
Primitive: ntskem13136
TimeImplementationCompilerBenchmark dateSUPERCOP version
1630212avx2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019082020190816
1636074avx2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019082020190816
1646406avx2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019082020190816
1692556avx2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019082020190816
1805174sse2gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019082020190816
1937662sse2gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019082020190816
1985066sse2gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019082020190816
2103178sse2gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019082020190816
3258506optgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019082020190816
3403236opticc -xCORE-AVX2 -O3 -fomit-frame-pointer2019082020190816
3415124opticc -xCORE-AVX512 -O3 -fomit-frame-pointer2019082020190816
3431364optgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019082020190816
3478316opticc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019082020190816
3496992opticc -xCORE-AVX512 -O2 -fomit-frame-pointer2019082020190816
3499920opticc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019082020190816
3527498opticc -xCORE-AVX2 -O2 -fomit-frame-pointer2019082020190816
3547140optgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019082020190816
3581256optgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019082020190816
3595022opticc -xAVX -O2 -fomit-frame-pointer2019082020190816
3598410opticc -xCORE-AVX-I -O2 -fomit-frame-pointer2019082020190816
3606712opticc -xSSE4.2 -O2 -fomit-frame-pointer2019082020190816
3615510opticc -xAVX -O3 -fomit-frame-pointer2019082020190816
3621266opticc -xSSE4.1 -O3 -fomit-frame-pointer2019082020190816
3623906opticc -xCORE-AVX-I -O3 -fomit-frame-pointer2019082020190816
3639574opticc -xSSE4.2 -O3 -fomit-frame-pointer2019082020190816
3678500opticc -xSSE4.1 -O2 -fomit-frame-pointer2019082020190816
24370534reficc -xCORE-AVX2 -O3 -fomit-frame-pointer2019082020190816
24430382reficc -xCOMMON-AVX512 -O2 -fomit-frame-pointer2019082020190816
24433904reficc -xCORE-AVX512 -O2 -fomit-frame-pointer2019082020190816
24447580reficc -xCORE-AVX2 -O2 -fomit-frame-pointer2019082020190816
24501720reficc -xCORE-AVX512 -O3 -fomit-frame-pointer2019082020190816
24858478reficc -xCOMMON-AVX512 -O3 -fomit-frame-pointer2019082020190816
25111634reficc -xSSE4.1 -O2 -fomit-frame-pointer2019082020190816
25157386reficc -xSSE4.2 -O2 -fomit-frame-pointer2019082020190816
25166806reficc -xSSE4.1 -O3 -fomit-frame-pointer2019082020190816
25186038reficc -xSSE4.2 -O3 -fomit-frame-pointer2019082020190816
25268216reficc -xCORE-AVX-I -O3 -fomit-frame-pointer2019082020190816
25329944reficc -xCORE-AVX-I -O2 -fomit-frame-pointer2019082020190816
25345272reficc -xAVX -O2 -fomit-frame-pointer2019082020190816
25434068reficc -xAVX -O3 -fomit-frame-pointer2019082020190816
26296314refgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2019082020190816
26318106refgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2019082020190816
26924088refgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2019082020190816
29747784refgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2019082020190816

Compiler output

Implementation: crypto_kem/ntskem13136/avx2
Compiler: icc -xAVX -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: 8, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer avx2
icc -xAVX -O3 -fomit-frame-pointer avx2
icc -xCORE-AVX-I -O2 -fomit-frame-pointer avx2
icc -xCORE-AVX-I -O3 -fomit-frame-pointer avx2
icc -xSSE4.1 -O2 -fomit-frame-pointer avx2
icc -xSSE4.1 -O3 -fomit-frame-pointer avx2
icc -xSSE4.2 -O2 -fomit-frame-pointer avx2
icc -xSSE4.2 -O3 -fomit-frame-pointer avx2

Compiler output

Implementation: crypto_kem/ntskem13136/sse2
Compiler: icc -xAVX -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: 20, namely:
CompilerImplementations
icc -xAVX -O2 -fomit-frame-pointer sse2
icc -xAVX -O3 -fomit-frame-pointer sse2
icc -xCOMMON-AVX512 -O2 -fomit-frame-pointer avx2 sse2
icc -xCOMMON-AVX512 -O3 -fomit-frame-pointer avx2 sse2
icc -xCORE-AVX-I -O2 -fomit-frame-pointer sse2
icc -xCORE-AVX-I -O3 -fomit-frame-pointer sse2
icc -xCORE-AVX2 -O2 -fomit-frame-pointer avx2 sse2
icc -xCORE-AVX2 -O3 -fomit-frame-pointer avx2 sse2
icc -xCORE-AVX512 -O2 -fomit-frame-pointer avx2 sse2
icc -xCORE-AVX512 -O3 -fomit-frame-pointer avx2 sse2
icc -xSSE4.1 -O2 -fomit-frame-pointer sse2
icc -xSSE4.1 -O3 -fomit-frame-pointer sse2
icc -xSSE4.2 -O2 -fomit-frame-pointer sse2
icc -xSSE4.2 -O3 -fomit-frame-pointer sse2