Implementation notes: amd64, bridge, crypto_sign/pflash1

Computer: bridge
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20120928
Operation: crypto_sign
Primitive: pflash1
TimeImplementationCompilerBenchmark dateSUPERCOP version
1711900refgcc -funroll-loops -m64 -O2 -fomit-frame-pointer2012012820120120
1722724refgcc -march=barcelona -O2 -fomit-frame-pointer2012012820120120
1796796refgcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer2012012820120120
1817188refgcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer2012012820120120
1821356refgcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer2012012820120120
1833488refgcc -funroll-loops -O2 -fomit-frame-pointer2012012820120120
1837012refgcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer2012012820120120
1860404refgcc -m64 -Os -fomit-frame-pointer2012012820120120
1862688refgcc -march=k8 -Os -fomit-frame-pointer2012012820120120
1866964refgcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer2012012820120120
1868312refgcc -m64 -march=native -mtune=native -O -fomit-frame-pointer2012012820120120
1876084refgcc -funroll-loops -O -fomit-frame-pointer2012012820120120
1920400refgcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer2012012820120120
1944104refgcc -m64 -march=core2 -O2 -fomit-frame-pointer2012012820120120
1964712refgcc -funroll-loops -m64 -O -fomit-frame-pointer2012012820120120
1979864refgcc -march=nocona -O -fomit-frame-pointer2012012820120120
1990732refgcc -m64 -march=nocona -O3 -fomit-frame-pointer2012012820120120
1994572refgcc -funroll-loops -march=barcelona -O -fomit-frame-pointer2012012820120120
2001680refgcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer2012012820120120
2001732refgcc -m64 -march=core2 -O -fomit-frame-pointer2012012820120120
2017140refgcc -march=barcelona -O3 -fomit-frame-pointer2012012820120120
2031488refgcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer2012012820120120
2035384refgcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer2012012820120120
2046940refgcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer2012012820120120
2052640refgcc -funroll-loops -O3 -fomit-frame-pointer2012012820120120
2055128refgcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer2012012820120120
2055408refgcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer2012012820120120
2065548refgcc -m64 -march=k8 -O3 -fomit-frame-pointer2012012820120120
2086772refgcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer2012012820120120
2088528refgcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer2012012820120120
2097748refgcc -march=nocona -O2 -fomit-frame-pointer2012012820120120
2108264refgcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer2012012820120120
2108996refgcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer2012012820120120
2111608refgcc -march=barcelona -O -fomit-frame-pointer2012012820120120
2116728refgcc -m64 -march=corei7 -Os -fomit-frame-pointer2012012820120120
2136144refgcc -m64 -march=barcelona -O3 -fomit-frame-pointer2012012820120120
2142692refgcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer2012012820120120
2146448refgcc -m64 -march=barcelona -O2 -fomit-frame-pointer2012012820120120
2161568refgcc -m64 -march=corei7 -O3 -fomit-frame-pointer2012012820120120
2165092refgcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer2012012820120120
2170796refgcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer2012012820120120
2171296refgcc -m64 -march=core-avx-i -O3 -fomit-frame-pointer2012012820120120
2171644refgcc -m64 -march=corei7-avx -O3 -fomit-frame-pointer2012012820120120
2173844refgcc -fno-schedule-insns -O2 -fomit-frame-pointer2012012820120120
2184152refgcc -fno-schedule-insns -O3 -fomit-frame-pointer2012012820120120
2185072refgcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer2012012820120120
2186712refgcc -funroll-loops -march=k8 -O -fomit-frame-pointer2012012820120120
2191452refgcc -march=nocona -O3 -fomit-frame-pointer2012012820120120
2194532refgcc -m64 -march=corei7 -O2 -fomit-frame-pointer2012012820120120
2204888refgcc -m64 -march=corei7 -O -fomit-frame-pointer2012012820120120
2209412refgcc -march=k8 -O -fomit-frame-pointer2012012820120120
2215228refgcc -m64 -march=corei7-avx -O -fomit-frame-pointer2012012820120120
2215228refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2012012820120120
2219164refgcc -m64 -march=core-avx-i -O -fomit-frame-pointer2012012820120120
2227588refgcc -m64 -march=corei7-avx -O2 -fomit-frame-pointer2012012820120120
2247540refgcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer2012012820120120
2249764refgcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer2012012820120120
2268040refgcc -m64 -march=barcelona -Os -fomit-frame-pointer2012012820120120
2279808refgcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer2012012820120120
2290140refgcc -funroll-loops -m64 -Os -fomit-frame-pointer2012012820120120
2294224refgcc -m64 -march=k8 -O2 -fomit-frame-pointer2012012820120120
2295692refgcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer2012012820120120
2301680refgcc -march=k8 -O3 -fomit-frame-pointer2012012820120120
2306620refgcc -march=k8 -O2 -fomit-frame-pointer2012012820120120
2309692refgcc -m64 -O -fomit-frame-pointer2012012820120120
2318228refgcc -m64 -march=nocona -O -fomit-frame-pointer2012012820120120
2329784refgcc -m64 -march=core2 -O3 -fomit-frame-pointer2012012820120120
2333268refgcc -march=nocona -Os -fomit-frame-pointer2012012820120120
2342244refgcc -m64 -march=barcelona -O -fomit-frame-pointer2012012820120120
2358224refgcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer2012012820120120
2360908refgcc -m64 -march=core-avx-i -O2 -fomit-frame-pointer2012012820120120
2371156refgcc -O -fomit-frame-pointer2012012820120120
2393148refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2012012820120120
2398560refgcc -m64 -march=corei7-avx -Os -fomit-frame-pointer2012012820120120
2412944refgcc -m64 -march=k8 -Os -fomit-frame-pointer2012012820120120
2420624refgcc -funroll-loops -Os -fomit-frame-pointer2012012820120120
2422576refgcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer2012012820120120
2435292refgcc -O2 -fomit-frame-pointer2012012820120120
2435388refgcc -funroll-loops -march=k8 -Os -fomit-frame-pointer2012012820120120
2446388refgcc -m64 -march=core2 -Os -fomit-frame-pointer2012012820120120
2457476refgcc -m64 -O3 -fomit-frame-pointer2012012820120120
2464756refgcc -funroll-loops -march=nocona -Os -fomit-frame-pointer2012012820120120
2470432refgcc -m64 -march=nocona -Os -fomit-frame-pointer2012012820120120
2486568refgcc -funroll-loops -m64 -O3 -fomit-frame-pointer2012012820120120
2529348refgcc -O3 -fomit-frame-pointer2012012820120120
2538188refgcc -funroll-loops -march=nocona -O -fomit-frame-pointer2012012820120120
2539336refgcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer2012012820120120
2556192refgcc -fno-schedule-insns -Os -fomit-frame-pointer2012012820120120
2559844refgcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer2012012820120120
2572332refgcc -Os -fomit-frame-pointer2012012820120120
2575096refgcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer2012012820120120
2597648refgcc -fno-schedule-insns -O -fomit-frame-pointer2012012820120120
2614232refgcc -m64 -O2 -fomit-frame-pointer2012012820120120
2618584refgcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer2012012820120120
2674792refgcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer2012012820120120
2686040refgcc -m64 -march=core-avx-i -Os -fomit-frame-pointer2012012820120120
2688044refgcc -march=barcelona -Os -fomit-frame-pointer2012012820120120
2720500refgcc -m64 -march=k8 -O -fomit-frame-pointer2012012820120120
2834948refgcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer2012012820120120
2923032refgcc -m64 -march=nocona -O2 -fomit-frame-pointer2012012820120120
6424540refcc2012012820120120
6476244refgcc2012012820120120
7867212refgcc -funroll-loops2012012820120120

Compiler output

Implementation: crypto_sign/pflash1/ref
Compiler: cc
SignScheme.c: SignScheme.c: In function 'signatureofshorthash':
SignScheme.c: SignScheme.c:211:2: warning: passing argument 1 of 'SignScheme_sign' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:95:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c: In function 'verification':
SignScheme.c: SignScheme.c:227:2: warning: passing argument 1 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c:227:2: warning: passing argument 2 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'

Number of similar (compiler,implementation) pairs: 99, namely:
CompilerImplementations
cc ref
gcc ref
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 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/pflash1/ref
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
SignScheme.c: SignScheme.c: In function 'signatureofshorthash':
SignScheme.c: SignScheme.c:211:2: warning: passing argument 1 of 'SignScheme_sign' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:95:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c: In function 'verification':
SignScheme.c: SignScheme.c:227:2: warning: passing argument 1 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c:227:2: warning: passing argument 2 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c: In function 'signatureofshorthash':
SignScheme.c: SignScheme.c:211:2: warning: passing argument 1 of 'SignScheme_sign' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:95:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c: In function 'verification':
SignScheme.c: SignScheme.c:227:2: warning: passing argument 1 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'
SignScheme.c: SignScheme.c:227:2: warning: passing argument 2 of 'SignScheme_GMap' discards 'const' qualifier from pointer target type [enabled by default]
SignScheme.c: SignScheme.c:152:5: note: expected 'byte *' but argument is of type 'const unsigned char *'

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