Implementation notes: amd64, zen3, crypto_sign/picnic2l1fs

Computer: zen3
Architecture: amd64
CPU ID: AuthenticAMD-00a20f10-178bfbff
SUPERCOP version: 20211108
Operation: crypto_sign
Primitive: picnic2l1fs
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
177720404286212 1504 10433260 2444 1792T:optimizedct/avx2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
186292916264503 1504 10412340 2444 1792T:optimizedct/avx2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
191876238121693 1504 10263279 2412 1856T:optimizedct/avx2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
193414106130062 1504 10272468 2444 1792T:optimizedct/avx2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
201855255103623 1504 10243612 2444 1792T:optimizedct/avx2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
20350583094972 1504 10234706 2436 1792T:optimizedct/avx2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
217512447102827 1504 10242543 2412 1856T:optimizedct/avx2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
22674459399906 1504 10238871 2412 1856T:optimizedct/avx2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
23150916191322 1504 10229179 2404 1824T:optimizedct/avx2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
299867643151820 1504 10192132 2436 1752T:optimizedct/cclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
308727049148503 1504 10189572 2436 1752T:optimizedct/cclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
322467804218645 1504 10259236 2436 1752T:optimizedct/sse2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
332211308214685 1504 10256076 2436 1752T:optimizedct/sse2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
33607449576211 1504 10109130 2428 1752T:optimizedct/cclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
338139104106699 1504 10142556 2436 1752T:optimizedct/sse2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
33815085083986 1504 10117178 2428 1752T:optimizedct/sse2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
34001396091686 1504 10125028 2436 1752T:optimizedct/sse2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
35236379096377 1504 10132004 2436 1752T:optimizedct/cclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
36079511998956 1504 10134047 2404 1816T:optimizedct/sse2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
36154032590347 1504 10123567 2404 1816T:optimizedct/sse2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
36620934388196 1504 10120703 2404 1816T:optimizedct/sse2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
37299596180781 1504 10112083 2396 1784T:optimizedct/sse2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
40585346882206 1504 10115324 2436 1752T:optimizedct/cclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
41669385289375 1504 10124263 2404 1816T:optimizedct/cgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
41776383782044 1504 10115071 2404 1816T:optimizedct/cgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
43530465473820 1504 10104931 2396 1784T:optimizedct/cgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
44490606280263 1504 10112559 2404 1816T:optimizedct/cgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
23254166381113544 4 01152636 932 1752T:refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
23409005571050455 4 01081500 932 1720T:refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
23428730301132463 4 01170724 932 1752T:refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
25167925381078212 4 01111716 932 1720T:refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108
25984040431048684 4 01079792 908 1784T:refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
27025707511071277 4 01104296 908 1784T:refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2022020720211108
27590533881044074 4 01074890 924 1720T:refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2022020720211108

Compiler output

Implementation: T:ref
Security model: timingleaks
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE
picnic_impl.c: picnic_impl.c: In function ‘mpc_LowMC_verify’:
picnic_impl.c: picnic_impl.c:469:5: warning: ‘mpc_matrix_mul’ accessing 24 bytes in a region of size 16 [-Wstringop-overflow=]
picnic_impl.c: 469 | mpc_matrix_mul(roundKey, keyShares, KMatrix(0, params), params, 2);
picnic_impl.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
picnic_impl.c: picnic_impl.c:469:5: note: referencing argument 1 of type ‘uint32_t **’ {aka ‘unsigned int **’}
picnic_impl.c: picnic_impl.c:469:5: warning: ‘mpc_matrix_mul’ accessing 24 bytes in a region of size 16 [-Wstringop-overflow=]
picnic_impl.c: picnic_impl.c:469:5: note: referencing argument 2 of type ‘uint32_t **’ {aka ‘unsigned int **’}
picnic_impl.c: picnic_impl.c:437:6: note: in a call to function ‘mpc_matrix_mul’
picnic_impl.c: 437 | void mpc_matrix_mul(uint32_t* output[3], uint32_t* state[3], const uint32_t* matrix,
picnic_impl.c: | ^~~~~~~~~~~~~~
picnic_impl.c: picnic_impl.c:470:5: warning: ‘mpc_xor’ accessing 24 bytes in a region of size 16 [-Wstringop-overflow=]
picnic_impl.c: 470 | mpc_xor(state, roundKey, params->stateSizeWords, 2);
picnic_impl.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
picnic_impl.c: picnic_impl.c:470:5: note: referencing argument 1 of type ‘uint32_t **’ {aka ‘unsigned int **’}
picnic_impl.c: picnic_impl.c:470:5: warning: ‘mpc_xor’ accessing 24 bytes in a region of size 16 [-Wstringop-overflow=]
picnic_impl.c: picnic_impl.c:470:5: note: referencing argument 2 of type ‘uint32_t **’ {aka ‘unsigned int **’}
picnic_impl.c: picnic_impl.c:190:6: note: in a call to function ‘mpc_xor’
picnic_impl.c: 190 | void mpc_xor(uint32_t* state[3], uint32_t* in[3], uint32_t len, int players)
picnic_impl.c: | ^~~~~~~
picnic_impl.c: picnic_impl.c:473:9: warning: ‘mpc_matrix_mul’ accessing 24 bytes in a region of size 16 [-Wstringop-overflow=]
picnic_impl.c: 473 | mpc_matrix_mul(roundKey, keyShares, KMatrix(r, params), params, 2);
picnic_impl.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
picnic_impl.c: picnic_impl.c:473:9: note: referencing argument 1 of type ‘uint32_t **’ {aka ‘unsigned int **’}
picnic_impl.c: picnic_impl.c:473:9: warning: ‘mpc_matrix_mul’ accessing 24 bytes in a region of size 16 [-Wstringop-overflow=]
picnic_impl.c: picnic_impl.c:473:9: note: referencing argument 2 of type ‘uint32_t **’ {aka ‘unsigned int **’}
picnic_impl.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref