Implementation notes: amd64, hydra4, crypto_aead/trivia0v2

Computer: hydra4
Microarchitecture: amd64; K10 32nm (300f10)
Architecture: amd64
CPU ID: AuthenticAMD-00300f10-178bfbff
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: trivia0v2
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
2787977623 0 024000 812 1016T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
2788017623 0 024000 812 1016T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
2865657503 0 023032 812 1016T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
3557053899 0 017374 804 1016T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
5757663964 0 018046 804 1016T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
6306898703 0 024792 780 1080T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
6827055272 0 020136 780 1080T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
10297364176 0 018375 772 1080T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625
11619063685 0 016739 756 1048T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062920240625

Compiler output


encrypt.c: encrypt.c:52:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c: {int i; u64 temp,
encrypt.c:             ^
encrypt.c: encrypt.c:58:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c: {int i; u32 temp,
encrypt.c:             ^
encrypt.c: encrypt.c:246:8: warning: unused variable 'dummy_word' [-Wunused-variable]
encrypt.c:    u32 dummy_word[2], Tag[4], temp;
encrypt.c:        ^
encrypt.c: encrypt.c:246:31: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:    u32 dummy_word[2], Tag[4], temp;
encrypt.c:                               ^
encrypt.c: encrypt.c:247:7: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c:    u8 FINISH;
encrypt.c:       ^
encrypt.c: encrypt.c:305:8: warning: unused variable 'dummy_word' [-Wunused-variable]
encrypt.c:    u32 dummy_word[2], Tag[4], temp;
encrypt.c:        ^
encrypt.c: encrypt.c:305:31: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:    u32 dummy_word[2], Tag[4], temp;
encrypt.c:                               ^
encrypt.c: encrypt.c:306:7: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c:    u8 FINISH;
encrypt.c:       ^
encrypt.c: encrypt.c:377:8: warning: unused variable 'dummy_word' [-Wunused-variable]
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


encrypt.c: encrypt.c: In function 'load64':
encrypt.c: encrypt.c:52:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:    52 | {int i; u64 temp,
encrypt.c:       |             ^~~~
encrypt.c: encrypt.c: In function 'load32':
encrypt.c: encrypt.c:58:13: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:    58 | {int i; u32 temp,
encrypt.c:       |             ^~~~
encrypt.c: encrypt.c: In function 'Initialize_process_AD_Reinitialize':
encrypt.c: encrypt.c:247:7: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c:   247 |    u8 FINISH;
encrypt.c:       |       ^~~~~~
encrypt.c: encrypt.c:246:31: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:   246 |    u32 dummy_word[2], Tag[4], temp;
encrypt.c:       |                               ^~~~
encrypt.c: encrypt.c:246:8: warning: unused variable 'dummy_word' [-Wunused-variable]
encrypt.c:   246 |    u32 dummy_word[2], Tag[4], temp;
encrypt.c:       |        ^~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_trivia0v2_ref_timingleaks_encrypt':
encrypt.c: encrypt.c:306:7: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c:   306 |    u8 FINISH;
encrypt.c:       |       ^~~~~~
encrypt.c: encrypt.c:305:31: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:   305 |    u32 dummy_word[2], Tag[4], temp;
encrypt.c:       |                               ^~~~
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


encrypt.c: encrypt.c:64:75: warning: multi-line // comment [-Wcomment]
encrypt.c: //#define CHUNK_SIZE_MSG 128                                    // Process checksum after 2^7 Msg Blocks\
encrypt.c:                                                                                                         ^
encrypt.c: encrypt.c:70:73: warning: multi-line // comment [-Wcomment]
encrypt.c: u32             G_STAR;                                         // alpha - x^32, where alpha is the choosen\
encrypt.c:                                                                                                            ^
encrypt.c: encrypt.c:229:1: warning: '/*' within block comment [-Wcomment]
encrypt.c: /*----------------------------------------------------------------*/
encrypt.c: ^
encrypt.c: encrypt.c:306:6: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
encrypt.c:         x = _mm_clmulepi64_si128(x,y,0x0);
encrypt.c:             ^
encrypt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
encrypt.c:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
encrypt.c:             ^
encrypt.c: encrypt.c:313:6: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
encrypt.c:         x = _mm_clmulepi64_si128(x,y,0x0);
encrypt.c:             ^
encrypt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
encrypt.c:   ((__m128i)__builtin_ia32_pclmulqdq128((__v2di)(__m128i)(X), \
encrypt.c:             ^
encrypt.c: encrypt.c:319:6: error: '__builtin_ia32_pclmulqdq128' needs target feature pclmul
encrypt.c:         x = _mm_clmulepi64_si128(x,y,0x0);
encrypt.c:             ^
encrypt.c: /usr/lib/llvm-11/lib/clang/11.0.1/include/__wmmintrin_pclmul.h:45:13: note: expanded from macro '_mm_clmulepi64_si128'
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:sse4clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sse4clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sse4clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sse4clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)
T:sse4clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


encrypt.c: encrypt.c:64:1: warning: multi-line comment [-Wcomment]
encrypt.c:    64 | //#define CHUNK_SIZE_MSG 128      // Process checksum after 2^7 Msg Blocks\
encrypt.c:       | ^
encrypt.c: encrypt.c:70:30: warning: multi-line comment [-Wcomment]
encrypt.c:    70 | u32             G_STAR;      // alpha - x^32, where alpha is the choosen\
encrypt.c:       |                              ^
encrypt.c: encrypt.c:229:1: warning: "/*" within comment [-Wcomment]
encrypt.c:   229 | /*----------------------------------------------------------------*/
encrypt.c:       |
encrypt.c: encrypt.c: In function 'Initialize_process_AD_Reinitialize':
encrypt.c: encrypt.c:406:21: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c:   406 |     u8              FINISH;
encrypt.c:       |                     ^~~~~~
encrypt.c: encrypt.c:405:21: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:   405 |                     temp;
encrypt.c:       |                     ^~~~
encrypt.c: encrypt.c:403:21: warning: unused variable 'dummy_word' [-Wunused-variable]
encrypt.c:   403 |     u32             dummy_word[2],
encrypt.c:       |                     ^~~~~~~~~~
encrypt.c: encrypt.c: In function 'crypto_aead_trivia0v2_sse4_timingleaks_encrypt':
encrypt.c: encrypt.c:482:21: warning: unused variable 'FINISH' [-Wunused-variable]
encrypt.c:   482 |     u8              FINISH;
encrypt.c:       |                     ^~~~~~
encrypt.c: encrypt.c:481:21: warning: unused variable 'temp' [-Wunused-variable]
encrypt.c:   481 |                     temp;
encrypt.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:sse4gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:sse4gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:sse4gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
T:sse4gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)