Implementation notes: amd64, kizomba, crypto_sign/sflashv2

Computer: kizomba
Architecture: amd64
CPU ID: GenuineIntel-000906e9-bfebfbff
SUPERCOP version: 20181216
Operation: crypto_sign
Primitive: sflashv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
181270refclang -O3 -fomit-frame-pointer -Qunused-arguments2018083120180818
183466refclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018083120180818
187734refclang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018083120180818
188845refclang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments2018083120180818
189544refclang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments2018083120180818
192344refclang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018083120180818
193258refclang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments2018083120180818
194123refclang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments2018083120180818
195990refclang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018083120180818
198498refclang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments2018083120180818

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: cc
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/knownrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_rng_chacha20_ref-rng.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): relocation R_X86_64_32 against `.rodata.cst16' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
cc ref
gcc ref
gcc -funroll-loops ref

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
lib_flash.c: lib_flash.c:409:50: warning: '/*' within block comment [-Wcomment]
lib_flash.c: init_table_flash(CK->gt;M,/*CK->gt;I,*/CK->gt;M1/*,CK->gt;M2/* /*,CK->gt;M3*/);
lib_flash.c: ^
lib_flash.c: lib_flash.c:409:53: warning: '/*' within block comment [-Wcomment]
lib_flash.c: init_table_flash(CK->gt;M,/*CK->gt;I,*/CK->gt;M1/*,CK->gt;M2/* /*,CK->gt;M3*/);
lib_flash.c: ^
lib_flash.c: lib_flash.c:690:3: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /*mis gt; la puissance 2^7^22 de tmp
lib_flash.c: ^
lib_flash.c: lib_flash.c:692:3: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /*
lib_flash.c: ^
lib_flash.c: lib_flash.c:695:4: warning: '/*' within block comment [-Wcomment]
lib_flash.c: /* inversion affine de S*/
lib_flash.c: ^
lib_flash.c: lib_flash.c:910:34: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
lib_flash.c: printf("Erreur de fichier de clgt; publique: '%s'\n",fichier);
lib_flash.c: ^~~~
lib_flash.c: lib_flash.c:1016:34: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
lib_flash.c: printf("Erreur de fichier de clgt; secrgt;te: '%s'\n",fichier);
lib_flash.c: ^~~~ ~~~~
lib_flash.c: 7 warnings generated.
table_flash.c: table_flash.c:25:8: warning: ^ has lower precedence than table_flash.c: if( x^P table_flash.c: ^~~~~~
table_flash.c: table_flash.c:25:8: note: place parentheses around the ' table_flash.c: if( x^P table_flash.c: ^
table_flash.c: ( )
table_flash.c: table_flash.c:25:8: note: place parentheses around the ^ expression to evaluate it first
table_flash.c: if( x^P table_flash.c: ^
table_flash.c: ( )
table_flash.c: 1 warning generated.

Number of similar (compiler,implementation) pairs: 10, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -march=x86-64 -mcpu=core-avx2 -mavx2 -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments ref
clang -O3 -fwrapv -mavx -maes -mpclmul -fomit-frame-pointer -Qunused-arguments ref
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ref

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -O2 -fomit-frame-pointer
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,19266,in);
lib_flash.c: ^~~~~~~~~~~~~~~~~~~~~
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,2823,in);
lib_flash.c: ^~~~~~~~~~~~~~~~~~~~
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/knownrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_rng_chacha20_ref-rng.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): relocation R_X86_64_32 against `.rodata.cst16' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 104, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer ref
gcc -O3 -fomit-frame-pointer ref
gcc -O -fomit-frame-pointer ref
gcc -Os -fomit-frame-pointer ref
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -O2 -fomit-frame-pointer ref
gcc -funroll-loops -O3 -fomit-frame-pointer ref
gcc -funroll-loops -O -fomit-frame-pointer ref
gcc -funroll-loops -Os -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ref
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ref
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ref
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ref
gcc -m64 -O2 -fomit-frame-pointer ref
gcc -m64 -O3 -fomit-frame-pointer ref
gcc -m64 -O -fomit-frame-pointer ref
gcc -m64 -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx-i -Os -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -O -fomit-frame-pointer ref
gcc -m64 -march=core-avx2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -O -fomit-frame-pointer ref
gcc -m64 -march=corei7-avx -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O -fomit-frame-pointer ref
gcc -m64 -march=corei7 -Os -fomit-frame-pointer ref
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ref
gcc -m64 -march=k8 -O -fomit-frame-pointer ref
gcc -m64 -march=k8 -Os -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ref
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ref
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ref
gcc -m64 -march=nocona -O -fomit-frame-pointer ref
gcc -m64 -march=nocona -Os -fomit-frame-pointer ref
gcc -march=barcelona -O2 -fomit-frame-pointer ref
gcc -march=barcelona -O3 -fomit-frame-pointer ref
gcc -march=barcelona -O -fomit-frame-pointer ref
gcc -march=barcelona -Os -fomit-frame-pointer ref
gcc -march=k8 -O2 -fomit-frame-pointer ref
gcc -march=k8 -O3 -fomit-frame-pointer ref
gcc -march=k8 -O -fomit-frame-pointer ref
gcc -march=k8 -Os -fomit-frame-pointer ref
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ref
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ref
gcc -march=nocona -O2 -fomit-frame-pointer ref
gcc -march=nocona -O3 -fomit-frame-pointer ref
gcc -march=nocona -O -fomit-frame-pointer ref
gcc -march=nocona -Os -fomit-frame-pointer ref

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,19266,in);
lib_flash.c: ^~~~~~~~~~~~~~~~~~~~~
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,2823,in);
lib_flash.c: ^~~~~~~~~~~~~~~~~~~~
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/knownrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_rng_chacha20_ref-rng.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): relocation R_X86_64_32 against `.rodata.cst16' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,19266,in);
lib_flash.c: ^~~~~~~~~~~~~~~~~~~~~
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:2: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: fread(key,1,2823,in);
lib_flash.c: ^~~~~~~~~~~~~~~~~~~~
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/knownrandombytes.o: relocation R_X86_64_32 against `.bss' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_rng_chacha20_ref-rng.o): relocation R_X86_64_32 against `.rodata' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: /home/djb/benchmarking/supercop-20180818/supercop-data/kizomba/amd64/lib/libsupercop.a(crypto_stream_chacha20_dolbeau_amd64_avx2-chacha.o): relocation R_X86_64_32 against `.rodata.cst16' can not be used when making a PIE object; recompile with -fPIC
try.c: /usr/bin/x86_64-linux-gnu-ld: final link failed: Nonrepresentable section on output
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer ref
gcc -m64 -march=barcelona -O -fomit-frame-pointer ref
gcc -m64 -march=barcelona -Os -fomit-frame-pointer ref