Implementation notes: amd64, h5e450, crypto_sign/sflashv2

Computer: h5e450
Architecture: amd64
CPU ID: AuthenticAMD-00500f20-178bfbff
SUPERCOP version: 20130419
Operation: crypto_sign
Primitive: sflashv2
TimeImplementationCompilerBenchmark dateSUPERCOP version
1022061refgcc -funroll-loops -O2 -fomit-frame-pointer2012080520120717
1022865refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2012080520120717
1024734refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012080520120717
1027560refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2012080520120717
1028007refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2012080520120717
1028166refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2012080520120717
1028292refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2012080520120717
1031661refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2012080520120717
1031742refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2012080520120717
1115841refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2012080520120717
1116288refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2012080520120717
1122168refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2012080520120717
1123344refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2012080520120717
1130889refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2012080520120717
1132149refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2012080520120717
1133592refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2012080520120717
1134012refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2012080520120717
1141503refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012080520120717
1142439refgcc -funroll-loops -O -fomit-frame-pointer2012080520120717
1142910refgcc -funroll-loops -O3 -fomit-frame-pointer2012080520120717
1143288refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2012080520120717
1145271refgcc -funroll-loops -m64 -O -fomit-frame-pointer2012080520120717
1145910refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012080520120717
1148658refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2012080520120717
1149207refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2012080520120717
1181895refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2012080520120717
1182063refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2012080520120717
1218474refgcc -m64 -march=nocona -O -fomit-frame-pointer2012080520120717
1220721refgcc -march=nocona -O -fomit-frame-pointer2012080520120717
1233015refgcc -march=nocona -O2 -fomit-frame-pointer2012080520120717
1234491refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2012080520120717
1234674refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2012080520120717
1235745refgcc -march=nocona -O3 -fomit-frame-pointer2012080520120717
1249335refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2012080520120717
1249365refgcc -m64 -march=corei7 -O -fomit-frame-pointer2012080520120717
1249914refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2012080520120717
1250124refgcc -fno-schedule-insns -O -fomit-frame-pointer2012080520120717
1250958refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2012080520120717
1251276refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2012080520120717
1251315refgcc -march=k8 -O3 -fomit-frame-pointer2012080520120717
1251375refgcc -O -fomit-frame-pointer2012080520120717
1251405refgcc -m64 -march=core2 -O -fomit-frame-pointer2012080520120717
1251735refgcc -m64 -O -fomit-frame-pointer2012080520120717
1251738refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012080520120717
1251963refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2012080520120717
1252476refgcc -m64 -O3 -fomit-frame-pointer2012080520120717
1252530refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2012080520120717
1253805refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012080520120717
1254900refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012080520120717
1255302refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2012080520120717
1255704refgcc -march=barcelona -O3 -fomit-frame-pointer2012080520120717
1256010refgcc -O3 -fomit-frame-pointer2012080520120717
1256052refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2012080520120717
1256103refgcc -O2 -fomit-frame-pointer2012080520120717
1256118refgcc -m64 -O2 -fomit-frame-pointer2012080520120717
1256139refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2012080520120717
1258332refgcc -march=k8 -O2 -fomit-frame-pointer2012080520120717
1260930refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2012080520120717
1263675refgcc -march=barcelona -O2 -fomit-frame-pointer2012080520120717
1263798refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2012080520120717
1264194refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2012080520120717
1264698refgcc -m64 -march=k8 -O -fomit-frame-pointer2012080520120717
1264863refgcc -march=k8 -O -fomit-frame-pointer2012080520120717
1264965refgcc -march=barcelona -O -fomit-frame-pointer2012080520120717
1265901refgcc -m64 -march=barcelona -O -fomit-frame-pointer2012080520120717
1266042refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2012080520120717
1272381refclang -O32012080520120717
1289988refgcc -march=barcelona -Os -fomit-frame-pointer2012080520120717
1290696refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2012080520120717
1290735refgcc -m64 -march=k8 -Os -fomit-frame-pointer2012080520120717
1291029refgcc -march=k8 -Os -fomit-frame-pointer2012080520120717
1291032refgcc -Os -fomit-frame-pointer2012080520120717
1291065refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2012080520120717
1292139refgcc -fno-schedule-insns -Os -fomit-frame-pointer2012080520120717
1293876refgcc -m64 -Os -fomit-frame-pointer2012080520120717
1297977refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012080520120717
1298379refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2012080520120717
1299276refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2012080520120717
1299315refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2012080520120717
1299810refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2012080520120717
1299984refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2012080520120717
1300083refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2012080520120717
1300251refgcc -funroll-loops -Os -fomit-frame-pointer2012080520120717
1300500refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2012080520120717
1302750refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012080520120717
1303548refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2012080520120717
1304160refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2012080520120717
1304421refgcc -m64 -march=core2 -Os -fomit-frame-pointer2012080520120717
1315752refgcc -march=nocona -Os -fomit-frame-pointer2012080520120717
1317417refgcc -m64 -march=nocona -Os -fomit-frame-pointer2012080520120717
4167381refcc2012080520120717
4171836refgcc2012080520120717
4174173refgcc -funroll-loops2012080520120717

Compiler output

Implementation: crypto_sign/sflashv2/ref
Compiler: clang -O3
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 à 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: 5 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: 1, namely:
CompilerImplementations
clang -O3 ref

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: 85, 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=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 -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 -O -fomit-frame-pointer ref
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer ref
gcc -m64 -march=corei7 -O2 -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