Implementation notes: amd64, sandy0, crypto_sign/sflashv2

Computer: sandy0
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20130419
Operation: crypto_sign
Primitive: sflashv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
708752refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2012032920120316
711400refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2012032920120316
712352refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2012032920120316
716092refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2012032920120316
716700refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2012032920120316
717380refgcc -funroll-loops -O2 -fomit-frame-pointer2012032920120316
721460refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012032920120316
788196refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2012032920120316
790976refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2012032920120316
826324refgcc -funroll-loops -O3 -fomit-frame-pointer2012032920120316
827140refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012032920120316
828068refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2012032920120316
829952refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2012032920120316
833832refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2012032920120316
846756refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2012032920120316
847916refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2012032920120316
848348refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2012032920120316
850700refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012032920120316
851624refgcc -funroll-loops -O -fomit-frame-pointer2012032920120316
852276refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2012032920120316
852936refgcc -funroll-loops -m64 -O -fomit-frame-pointer2012032920120316
860828refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2012032920120316
864612refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2012032920120316
866556refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2012032920120316
866920refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2012032920120316
867424refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2012032920120316
868040refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2012032920120316
891968refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012032920120316
892436refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2012032920120316
893776refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2012032920120316
894904refgcc -m64 -O2 -fomit-frame-pointer2012032920120316
895148refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2012032920120316
898900refgcc -O2 -fomit-frame-pointer2012032920120316
901160refgcc -m64 -Os -fomit-frame-pointer2012032920120316
901204refgcc -march=barcelona -O2 -fomit-frame-pointer2012032920120316
901696refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2012032920120316
901812refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2012032920120316
901876refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2012032920120316
902108refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2012032920120316
902120refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012032920120316
902580refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2012032920120316
902980refgcc -m64 -march=core2 -Os -fomit-frame-pointer2012032920120316
903224refgcc -fno-schedule-insns -Os -fomit-frame-pointer2012032920120316
903664refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012032920120316
904348refgcc -m64 -march=k8 -Os -fomit-frame-pointer2012032920120316
904356refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2012032920120316
904536refgcc -funroll-loops -Os -fomit-frame-pointer2012032920120316
904784refgcc -march=nocona -O -fomit-frame-pointer2012032920120316
905140refgcc -m64 -march=nocona -O -fomit-frame-pointer2012032920120316
905220refgcc -Os -fomit-frame-pointer2012032920120316
905252refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2012032920120316
906176refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2012032920120316
906200refgcc -march=k8 -Os -fomit-frame-pointer2012032920120316
906516refgcc -march=barcelona -Os -fomit-frame-pointer2012032920120316
907272refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012032920120316
907880refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2012032920120316
907964refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2012032920120316
908048refgcc -march=k8 -O2 -fomit-frame-pointer2012032920120316
908304refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2012032920120316
908308refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2012032920120316
910368refgcc -march=k8 -O3 -fomit-frame-pointer2012032920120316
910928refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2012032920120316
911592refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2012032920120316
911664refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2012032920120316
916420refgcc -m64 -march=k8 -O -fomit-frame-pointer2012032920120316
918128refgcc -m64 -march=barcelona -O -fomit-frame-pointer2012032920120316
920092refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2012032920120316
920528refgcc -m64 -march=corei7 -O -fomit-frame-pointer2012032920120316
920536refgcc -O -fomit-frame-pointer2012032920120316
921304refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2012032920120316
921340refgcc -march=k8 -O -fomit-frame-pointer2012032920120316
921620refgcc -m64 -march=core2 -O -fomit-frame-pointer2012032920120316
921636refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2012032920120316
921920refgcc -march=barcelona -O -fomit-frame-pointer2012032920120316
921932refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2012032920120316
923724refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2012032920120316
925040refgcc -m64 -O -fomit-frame-pointer2012032920120316
925968refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2012032920120316
928856refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2012032920120316
934032refgcc -fno-schedule-insns -O -fomit-frame-pointer2012032920120316
934956refgcc -march=nocona -O2 -fomit-frame-pointer2012032920120316
936144refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012032920120316
936728refgcc -march=nocona -Os -fomit-frame-pointer2012032920120316
938424refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2012032920120316
938636refgcc -m64 -O3 -fomit-frame-pointer2012032920120316
938708refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2012032920120316
939572refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2012032920120316
939684refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2012032920120316
939936refgcc -m64 -march=nocona -Os -fomit-frame-pointer2012032920120316
940008refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012032920120316
941672refgcc -O3 -fomit-frame-pointer2012032920120316
941764refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2012032920120316
942676refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2012032920120316
943264refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2012032920120316
943824refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2012032920120316
945344refgcc -march=barcelona -O3 -fomit-frame-pointer2012032920120316
945700refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2012032920120316
947484refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2012032920120316
951100refgcc -march=nocona -O3 -fomit-frame-pointer2012032920120316
954012refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2012032920120316
2445100refgcc -funroll-loops2012032920120316
2448096refcc2012032920120316
2454384refgcc2012032920120316

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: gcc -O2 -fomit-frame-pointer
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:7: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:7: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: In file included from /usr/include/string.h:642:0,
lib_flash.c: from /usr/include/memory.h:30,
lib_flash.c: from lib_flash.c:1:
lib_flash.c: In function 'memset',
lib_flash.c: inlined from 'format_message1' at lib_flash.c:726:8:
lib_flash.c: /usr/include/x86_64-linux-gnu/bits/string3.h:82:30: warning: call to '__warn_memset_zero_len' declared with attribute warning: memset used with constant zero length parameter; this could be due to transposed parameters [enabled by default]
lib_flash.c: In function 'memset',
lib_flash.c: inlined from 'format_message2' at lib_flash.c:783:8:
lib_flash.c: /usr/include/x86_64-linux-gnu/bits/string3.h:82:30: warning: call to '__warn_memset_zero_len' declared with attribute warning: memset used with constant zero length parameter; this could be due to transposed parameters [enabled by default]
try.c: crypto_sign_sflashv2.a(lib_flash.o): In function `format_message1':
try.c: lib_flash.c:(.text+0x...): warning: memset used with constant zero length parameter; this could be due to transposed parameters
measure.c: crypto_sign_sflashv2.a(lib_flash.o): In function `format_message1':
measure.c: lib_flash.c:(.text+0x...): warning: memset used with constant zero length parameter; this could be due to transposed parameters

Number of similar (compiler,implementation) pairs: 96, 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=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=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_private_key':
lib_flash.c: lib_flash.c:1019:7: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:7: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: In file included from /usr/include/string.h:642:0,
lib_flash.c: from /usr/include/memory.h:30,
lib_flash.c: from lib_flash.c:1:
lib_flash.c: In function 'memset',
lib_flash.c: inlined from 'format_message1' at lib_flash.c:726:8:
lib_flash.c: /usr/include/x86_64-linux-gnu/bits/string3.h:82:30: warning: call to '__warn_memset_zero_len' declared with attribute warning: memset used with constant zero length parameter; this could be due to transposed parameters [enabled by default]
lib_flash.c: In function 'memset',
lib_flash.c: inlined from 'format_message2' at lib_flash.c:783:8:
lib_flash.c: /usr/include/x86_64-linux-gnu/bits/string3.h:82:30: warning: call to '__warn_memset_zero_len' declared with attribute warning: memset used with constant zero length parameter; this could be due to transposed parameters [enabled by default]
try.c: crypto_sign_sflashv2.a(lib_flash.o): In function `format_message1':
try.c: lib_flash.c:(.text+0x...): warning: memset used with constant zero length parameter; this could be due to transposed parameters
measure.c: crypto_sign_sflashv2.a(lib_flash.o): In function `format_message1':
measure.c: lib_flash.c:(.text+0x...): warning: memset used with constant zero length parameter; this could be due to transposed parameters
lib_flash.c: lib_flash.c: In function 'Flash_load_private_key':
lib_flash.c: lib_flash.c:1019:7: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: lib_flash.c: In function 'Flash_load_public_key':
lib_flash.c: lib_flash.c:913:7: warning: ignoring return value of 'fread', declared with attribute warn_unused_result [-Wunused-result]
lib_flash.c: In file included from /usr/include/string.h:642:0,
lib_flash.c: from /usr/include/memory.h:30,
lib_flash.c: from lib_flash.c:1:
lib_flash.c: In function 'memset',
lib_flash.c: inlined from 'format_message1' at lib_flash.c:726:8:
lib_flash.c: /usr/include/x86_64-linux-gnu/bits/string3.h:82:30: warning: call to '__warn_memset_zero_len' declared with attribute warning: memset used with constant zero length parameter; this could be due to transposed parameters [enabled by default]
lib_flash.c: In function 'memset',
lib_flash.c: inlined from 'format_message2' at lib_flash.c:783:8:
lib_flash.c: /usr/include/x86_64-linux-gnu/bits/string3.h:82:30: warning: call to '__warn_memset_zero_len' declared with attribute warning: memset used with constant zero length parameter; this could be due to transposed parameters [enabled by default]
try.c: crypto_sign_sflashv2.a(lib_flash.o): In function `format_message1':
try.c: lib_flash.c:(.text+0x...): warning: memset used with constant zero length parameter; this could be due to transposed parameters
measure.c: crypto_sign_sflashv2.a(lib_flash.o): In function `format_message1':
measure.c: lib_flash.c:(.text+0x...): warning: memset used with constant zero length parameter; this could be due to transposed parameters

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