Implementation notes: amd64, floodyberry, crypto_scalarmult/curve25519

Computer: floodyberry
Architecture: amd64
CPU ID: GenuineIntel-00010676-bfebfbff
SUPERCOP version: 20140505
Operation: crypto_scalarmult
Primitive: curve25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
1229838donna_c64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
1237500donna_c64gcc -m64 -O3 -fomit-frame-pointer2014050820140505
1251988donna_c64gcc -m64 -O2 -fomit-frame-pointer2014050820140505
1262187donna_c64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
1283512amd64-64clang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
1286612amd64-64clang -O3 -march=native -m64 -fomit-frame-pointer2014050820140505
1291088amd64-64icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
1291963amd64-64gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
1291987amd64-64gcc -m64 -O2 -fomit-frame-pointer2014050820140505
1298638amd64-64gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
1306725amd64-64gcc -m64 -O3 -fomit-frame-pointer2014050820140505
1308175amd64-64icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
1329600amd64-51gcc -m64 -O2 -fomit-frame-pointer2014050820140505
1330975amd64-51clang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
1336813amd64-51icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
1340550amd64-51clang -O3 -march=native -m64 -fomit-frame-pointer2014050820140505
1341500amd64-51gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
1345187amd64-51gcc -m64 -O3 -fomit-frame-pointer2014050820140505
1355375amd64-51gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
1362125amd64-51icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
1423225donna_c64icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
1480275donna_c64clang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
1555225donna_c64clang -O3 -march=native -m64 -fomit-frame-pointer2014050820140505
1603750donna_c64icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
1985675donnagcc -m64 -O2 -fomit-frame-pointer2014050820140505
1987600donnagcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
1989313donnagcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
2002813donnagcc -m64 -O3 -fomit-frame-pointer2014050820140505
2051113donnaicc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
2545587ref10clang -O3 -march=native -m64 -fomit-frame-pointer2014050820140505
2559687ref10clang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
2598213ref10gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
2608563ref10gcc -m64 -O2 -fomit-frame-pointer2014050820140505
2610113ref10gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
2612088ref10gcc -m64 -O3 -fomit-frame-pointer2014050820140505
2650300ref10icc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
2673225ref10icc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
42552887reficc -m64 -O3 -static -xHost -fomit-frame-pointer2014050820140505
44518538reficc -m64 -O1 -static -xHost -fomit-frame-pointer2014050820140505
45410525refclang -O1 -march=native -m64 -fomit-frame-pointer2014050820140505
50785650refgcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer2014050820140505
51065262refgcc -m64 -O3 -fomit-frame-pointer2014050820140505
51664600refgcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer2014050820140505
51693712refgcc -m64 -O2 -fomit-frame-pointer2014050820140505

Test failure

Implementation: crypto_scalarmult/curve25519/donna
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
error 111

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer donna
clang -O3 -march=native -m64 -fomit-frame-pointer donna ref
icc -m64 -O3 -static -xHost -fomit-frame-pointer donna

Compiler output

Implementation: crypto_scalarmult/curve25519/donna
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
asm.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
asm.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
asm.s: clang: warning: argument unused during compilation: '-I .'
asm.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer donna
clang -O3 -march=native -m64 -fomit-frame-pointer donna

Compiler output

Implementation: crypto_scalarmult/curve25519/amd64-51
Compiler: clang -O1 -march=native -m64 -fomit-frame-pointer
consts.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
consts.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
consts.s: clang: warning: argument unused during compilation: '-I .'
consts.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'
fe25519_freeze.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
fe25519_freeze.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
fe25519_freeze.s: clang: warning: argument unused during compilation: '-I .'
fe25519_freeze.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'
fe25519_mul.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
fe25519_mul.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
fe25519_mul.s: clang: warning: argument unused during compilation: '-I .'
fe25519_mul.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'
fe25519_square.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
fe25519_square.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
fe25519_square.s: clang: warning: argument unused during compilation: '-I .'
fe25519_square.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'
ladderstep.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
ladderstep.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
ladderstep.s: clang: warning: argument unused during compilation: '-I .'
ladderstep.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'
work_cswap.s: clang: warning: argument unused during compilation: '-fomit-frame-pointer'
work_cswap.s: clang: warning: argument unused during compilation: '-D SUPERCOP'
work_cswap.s: clang: warning: argument unused during compilation: '-I .'
work_cswap.s: clang: warning: argument unused during compilation: '-I /home/bloom/supercop-20140505/supercop-data/floodyberry/amd64/include'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -O1 -march=native -m64 -fomit-frame-pointer amd64-51 amd64-64
clang -O3 -march=native -m64 -fomit-frame-pointer amd64-51 amd64-64

Compiler output

Implementation: crypto_scalarmult/curve25519/donna_c64
Compiler: icc -m64 -O1 -static -xHost -fomit-frame-pointer
smult.c: smult.c(40): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(55): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(69): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(99): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:
smult.c: smult.c(148): warning #3415: the "always_inline" attribute is ignored on non-inline functions
smult.c: static void force_inline
smult.c: ^
smult.c:

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
icc -m64 -O1 -static -xHost -fomit-frame-pointer donna_c64
icc -m64 -O3 -static -xHost -fomit-frame-pointer donna_c64