ARM public key benchmark

Niels Möller nisse at lysator.liu.se
Thu Apr 4 20:16:53 CEST 2013


Torbjorn Granlund <tg at gmplib.org> writes:

> If you new code runs well on A15,

I tried building it on parma, but I'm not entirely sure my results make
sense.

I started with gmp-5.1.1 (since hg wasn't installed). I then patched
tune/time.c:cgt_works_p to always return 0 (before that, cycletimes were
a large factor off).

With 5.1.1, I got 4 - epsilon c/l for addmul_1, and 4 + epsilon c/l for
submul_1:

$ ./speed-before -o cycles-broken  -C -s 10,100,200,300,1000-1010  mpn_addmul_1.17 mpn_submul_1.17
overhead 51.03 cycles, precision 1000 units of 1.00e-06 secs, CPU freq 1694.10 MHz
        mpn_addmul_1.17 mpn_submul_1.17
10           #28.9063       33.1513
100          #34.7821       36.6499
200           34.3840       #4.1421
300           #4.0184        4.0937
1000          #3.9989        4.0198
1001          #3.9999        4.0208
1002          #3.9995        4.0205
1003          #3.9966        4.0179
1004          #3.9988        4.0212
1005          #3.9962        4.0208
1006          #3.9972        4.0182
1007          #3.9969        4.0229
1008          #3.9965        4.0190
1009          #3.9976        4.0191
1010          #3.9973        4.0197

With the new submul_1, I get a 0.5% improvement, to 4 - epsilon:

$ ./speed-after -o cycles-broken  -C -s 10,100,200,300,1000-1010  mpn_addmul_1.17 mpn_submul_1.17
overhead 51.03 cycles, precision 1000 units of 1.00e-06 secs, CPU freq 1694.10 MHz
        mpn_addmul_1.17 mpn_submul_1.17
10           #28.9159       29.7557
100            4.0788       #4.0694
200            4.0351       #4.0264
300            4.0198       #4.0147
1000           3.9989       #3.9976
1001           3.9963       #3.9950
1002          #3.9959        3.9995
1003          #3.9992        3.9992
1004           3.9988       #3.9965
1005           4.0012       #3.9962
1006          #3.9972        3.9995
1007          #3.9969        3.9969
1008           3.9965       #3.9962
1009          #3.9976        3.9976
1010           3.9987       #3.9973

Some lines look totally bogus. Is it doing cpu frequency scaling or
something like that? cpufreq-info is not installed (looks like a debian
system, so apt-get install cpufrequtils). And then frequency used by
speed is probably slightly off, the web page says 1700, and the 1694.1
number is from the bogomips measurement at boot time; I guess all values
really are slightly above 4 c/l.

Regards,
/Niela

-- 
Niels Möller. PGP-encrypted email is preferred. Keyid C0B98E26.
Internet email is subject to wholesale government surveillance.


More information about the gmp-devel mailing list