Implementation notes: amd64, par, crypto_sign/ed25519

Computer: par
Architecture: amd64
CPU ID: GenuineIntel-000406c3-bfebfbff
SUPERCOP version: 20161026
Operation: crypto_sign
Primitive: ed25519
TimeImplementationCompilerBenchmark dateSUPERCOP version
789800amd64-64-24kgcc -march=native -mcpu=native -O32016121420161026
792100amd64-64-24kgcc -march=native -mcpu=native -O22016121420161026
792360amd64-64-24kgcc -funroll-loops -march=native -mcpu=native -Os2016121420161026
795260amd64-64-24kgcc -march=native -mcpu=native -Os2016121420161026
798600amd64-64-24kgcc -funroll-loops -march=native -mcpu=native -O22016121420161026
800140amd64-64-24kgcc -funroll-loops -march=native -mcpu=native -O32016121420161026
1087180amd64-51-30kgcc -march=native -mcpu=native -O22016121420161026
1089620amd64-51-30kgcc -funroll-loops -march=native -mcpu=native -O32016121420161026
1090680amd64-51-30kgcc -march=native -mcpu=native -Os2016121420161026
1095060amd64-51-30kgcc -funroll-loops -march=native -mcpu=native -O22016121420161026
1106460amd64-51-30kgcc -march=native -mcpu=native -O32016121420161026
1113820amd64-51-30kgcc -funroll-loops -march=native -mcpu=native -Os2016121420161026
1333320ref10gcc -funroll-loops -march=native -mcpu=native -Os2016121420161026
1362680ref10gcc -march=native -mcpu=native -O32016121420161026
1365620ref10gcc -funroll-loops -march=native -mcpu=native -O22016121420161026
1368120ref10gcc -funroll-loops -march=native -mcpu=native -O32016121420161026
1376120ref10gcc -march=native -mcpu=native -Os2016121420161026
1378660ref10gcc -march=native -mcpu=native -O22016121420161026
20336520refgcc -funroll-loops -march=native -mcpu=native -O22016121420161026
24322160refgcc -march=native -mcpu=native -O32016121420161026
25019840refgcc -funroll-loops -march=native -mcpu=native -O32016121420161026
27696020refgcc -march=native -mcpu=native -O22016121420161026
28318180refgcc -march=native -mcpu=native -Os2016121420161026
30990160refgcc -funroll-loops -march=native -mcpu=native -Os2016121420161026

Compiler output

Implementation: crypto_sign/ed25519/amd64-51-30k
Compiler: gcc -funroll-loops -march=native -mcpu=native -O2
batch.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_add.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_getparity.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_invert.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_iseq.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_iszero.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_neg.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_pack.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_pow2523.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_setint.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_sub.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_unpack.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_add.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_base.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_double.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_double_scalarmult.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_isneutral.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_multi_scalarmult.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_pack.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_scalarmult_base.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_unpackneg.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
hram.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
index_heap.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
keypair.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
open.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_from32bytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_from64bytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_from_shortsc.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_iszero.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_mul.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_mul_shortsc.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_slide.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_to32bytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_window4.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sign.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
choose_t.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
consts.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_freeze.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_mul.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_nsquare.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_square.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_add_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_dbl_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_nielsadd2.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_nielsadd_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_p1p1_to_p2.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_p1p1_to_p3.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_p1p1_to_pniels.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_pnielsadd_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced_1limb.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced_2limbs.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced_3limbs.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_add.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_barrett.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_lt.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_sub_nored.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ull4_mul.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
measure.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mcpu=native -O2 amd64-51-30k
gcc -funroll-loops -march=native -mcpu=native -O3 amd64-51-30k
gcc -funroll-loops -march=native -mcpu=native -Os amd64-51-30k
gcc -march=native -mcpu=native -O2 amd64-51-30k
gcc -march=native -mcpu=native -O3 amd64-51-30k
gcc -march=native -mcpu=native -Os amd64-51-30k

Compiler output

Implementation: crypto_sign/ed25519/amd64-64-24k
Compiler: gcc -funroll-loops -march=native -mcpu=native -O2
batch.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_getparity.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_invert.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_iseq.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_iszero.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_neg.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_pack.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_pow2523.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_setint.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_unpack.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_add.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_base.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_double.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_double_scalarmult.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_isneutral.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_multi_scalarmult.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_pack.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_scalarmult_base.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_unpackneg.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
hram.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
index_heap.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
keypair.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
open.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_from32bytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_from64bytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_from_shortsc.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_iszero.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_mul.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_mul_shortsc.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_slide.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_to32bytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_window4.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sign.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
choose_t.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
consts.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_add.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_freeze.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_mul.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_square.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe25519_sub.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_add_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_dbl_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_nielsadd2.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_nielsadd_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_p1p1_to_p2.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_p1p1_to_p3.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519_pnielsadd_p1p1.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced_1limb.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced_2limbs.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
heap_rootreplaced_3limbs.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_add.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_barrett.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_lt.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519_sub_nored.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ull4_mul.s: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
measure.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mcpu=native -O2 amd64-64-24k
gcc -funroll-loops -march=native -mcpu=native -O3 amd64-64-24k
gcc -funroll-loops -march=native -mcpu=native -Os amd64-64-24k
gcc -march=native -mcpu=native -O2 amd64-64-24k
gcc -march=native -mcpu=native -O3 amd64-64-24k
gcc -march=native -mcpu=native -Os amd64-64-24k

Compiler output

Implementation: crypto_sign/ed25519/ref
Compiler: gcc -funroll-loops -march=native -mcpu=native -O2
fe25519.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge25519.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
keypair.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
open.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc25519.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sign.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
measure.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mcpu=native -O2 ref
gcc -funroll-loops -march=native -mcpu=native -O3 ref
gcc -funroll-loops -march=native -mcpu=native -Os ref
gcc -march=native -mcpu=native -O2 ref
gcc -march=native -mcpu=native -O3 ref
gcc -march=native -mcpu=native -Os ref

Compiler output

Implementation: crypto_sign/ed25519/ref10
Compiler: gcc -funroll-loops -march=native -mcpu=native -O2
fe_0.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_1.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_add.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_cmov.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_copy.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_frombytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_invert.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_isnegative.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_isnonzero.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_mul.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_neg.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_pow22523.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_sq.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_sq2.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_sub.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
fe_tobytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_add.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_double_scalarmult.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_frombytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_madd.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_msub.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p1p1_to_p2.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p1p1_to_p3.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p2_0.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p2_dbl.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p3_0.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p3_dbl.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p3_to_cached.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p3_to_p2.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_p3_tobytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_precomp_0.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_scalarmult_base.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_sub.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
ge_tobytes.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
keypair.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
open.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc_muladd.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sc_reduce.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
sign.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
try.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead
measure.c: gcc: warning: '-mcpu=' is deprecated; use '-mtune=' or '-march=' instead

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
gcc -funroll-loops -march=native -mcpu=native -O2 ref10
gcc -funroll-loops -march=native -mcpu=native -O3 ref10
gcc -funroll-loops -march=native -mcpu=native -Os ref10
gcc -march=native -mcpu=native -O2 ref10
gcc -march=native -mcpu=native -O3 ref10
gcc -march=native -mcpu=native -Os ref10