Implementation notes: amd64, river, crypto_dh/curve2251

Computer: river
Architecture: amd64
CPU ID: GenuineIntel-000206a7-bfebfbff
SUPERCOP version: 20160806
Operation: crypto_dh
Primitive: curve2251
TimeImplementationCompilerBenchmark dateSUPERCOP version
668132relic/amd64-clmulgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016083120160806
673208relic/amd64-clmulgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016083120160806
678984relic/amd64-clmulgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016083120160806
683344relic/amd64-clmulgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016083120160806
1244788relic/amd64-ssse3gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016083120160806
1245636relic/amd64-ssse3gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016083120160806
1247240relic/amd64-ssse3gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016083120160806
1248576relic/amd64-ssse3gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016083120160806
4267476mpfqgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv2016083120160806
4308284mpfqgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv2016083120160806
4329832mpfqgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv2016083120160806
4436808mpfqgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv2016083120160806

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-avx
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
relic_low.S: relic_fb_add_low.c: Assembler messages:
relic_low.S: relic_fb_add_low.c:48: Error: no such instruction: `vmovups (%rsi),%ymm0'
relic_low.S: relic_fb_add_low.c:49: Error: no such instruction: `vxorps (%rdx),%ymm0,%ymm1'
relic_low.S: relic_fb_add_low.c:50: Error: no such instruction: `vmovups %ymm1,(%rdi)'
relic_low.S: relic_fb_add_low.c:51: Error: no such instruction: `vzeroupper '
relic_low.S: relic_fb_add_low.c:73: Error: no such instruction: `vmovups (%rsi),%ymm0'
relic_low.S: relic_fb_add_low.c:74: Error: no such instruction: `vxorps (%rdx),%ymm0,%ymm1'
relic_low.S: relic_fb_add_low.c:75: Error: no such instruction: `vmovups %ymm1,(%rdi)'
relic_low.S: relic_fb_add_low.c:76: Error: no such instruction: `vmovups 32(%rsi),%ymm2'
relic_low.S: relic_fb_add_low.c:77: Error: no such instruction: `vxorps 32(%rdx),%ymm2,%ymm3'
relic_low.S: relic_fb_add_low.c:78: Error: no such instruction: `vmovups %ymm3,32(%rdi)'
relic_low.S: relic_fb_add_low.c:79: Error: no such instruction: `vzeroupper '
relic_low.S: relic_fb_add_low.c:101: Error: no such instruction: `vmovdqu 48(%rsi),%xmm14'
relic_low.S: relic_fb_add_low.c:102: Error: no such instruction: `vmovdqu (%rsi),%xmm11'
relic_low.S: relic_fb_add_low.c:103: Error: no such instruction: `vpxor 48(%rdx),%xmm14,%xmm15'
relic_low.S: relic_fb_add_low.c:104: Error: no such instruction: `vpxor (%rdx),%xmm11,%xmm10'
relic_low.S: relic_fb_add_low.c:105: Error: no such instruction: `vmovdqu 32(%rsi),%xmm13'
relic_low.S: relic_fb_add_low.c:106: Error: no such instruction: `vpsrldq $8,%xmm15,%xmm11'
relic_low.S: relic_fb_add_low.c:107: Error: no such instruction: `vmovdqu 16(%rsi),%xmm12'
relic_low.S: relic_fb_add_low.c:108: Error: no such instruction: `vpsrlq $59,%xmm11,%xmm0'
relic_low.S: relic_fb_add_low.c:109: Error: no such instruction: `vpxor 32(%rdx),%xmm13,%xmm3'
relic_low.S: relic_fb_add_low.c:110: Error: no such instruction: `vpsrlq $57,%xmm11,%xmm2'
relic_low.S: relic_fb_add_low.c:111: Error: no such instruction: `vpslldq $8,%xmm15,%xmm8'
relic_low.S: relic_fb_add_low.c:112: Error: no such instruction: `vpxor %xmm0,%xmm3,%xmm1'
relic_low.S: relic_fb_add_low.c:113: Error: no such instruction: `vpxor 16(%rdx),%xmm12,%xmm9'
relic_low.S: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv relic/amd64-avx
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv relic/amd64-avx
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv relic/amd64-avx
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv relic/amd64-avx

Compiler output

Implementation: crypto_dh/curve2251/mpfq
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccjD6MWE.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccsmybh9.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv mpfq

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-clmul
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//cc4arWoM.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//cc84oZ6B.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv relic/amd64-clmul

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-ssse3
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccwdcLMd.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//cc3Kds4H.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv relic/amd64-ssse3

Compiler output

Implementation: crypto_dh/curve2251/mpfq
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: /tmp//ccwPsvhp.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//cc2iavuL.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv mpfq

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-clmul
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccCxQ1Jr.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//cc4PFb7T.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv relic/amd64-clmul

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-ssse3
Compiler: gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccCy0riS.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccexd7dC.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv relic/amd64-ssse3

Compiler output

Implementation: crypto_dh/curve2251/mpfq
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: /tmp//cc9t3U5U.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//cc5mIsJE.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv mpfq

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-ssse3
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccBo1aZg.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccspUKNk.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv relic/amd64-ssse3

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-clmul
Compiler: gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccU1mjTG.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccoCIptU.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv relic/amd64-clmul

Compiler output

Implementation: crypto_dh/curve2251/mpfq
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: /tmp//ccma2Cs6.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /tmp//ccboUtTR.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv mpfq

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-clmul
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccQPsHo1.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//cczByCkT.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv relic/amd64-clmul

Compiler output

Implementation: crypto_dh/curve2251/relic/amd64-ssse3
Compiler: gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccVs0F2x.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
try.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
try.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
try.c: /tmp//ccvK55Br.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: warning: random() may return deterministic values, is that what you want?
try.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.
measure.c: crypto_dh_curve2251.a(relic.o): In function `rand_init':
measure.c: relic.c:(.text+0x...): warning: warning: rand() may return deterministic values, is that what you want?
measure.c: /usr/bin/ld: warning: creating a DT_TEXTREL in a shared object.

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv relic/amd64-ssse3