
Torbjorn Granlund wrote:
Roberto Bagnara bagnara@cs.unipr.it writes:
Speedups:
- Vastly improved assembly code for x86-64 processors from AMD and Intel.
I have run a couple of application programs based on the Parma Polyhedra Library (PPL), which heavily depends on GMP. On an AMD Opteron 2384 "Shanghai" I got the following running times (best run out of 10):
Application A Application B GMP 4.2.4 GMP 4.3.0 GMP 4.2.4 GMP 4.3.0 238 s 187 s 34.2 s 34.8 s
On an Intel Core2 Q9400, instead, I got:
Application A Application B GMP 4.2.4 GMP 4.3.0 GMP 4.2.4 GMP 4.3.0 339 s 213 s 29.8 s 28.9 s
You get less speedup than I expect to be typical (and a very slight slowdown in one case).
I am curious what GMP operations application B performs. Profile runs for both GMP versions would be helpful.
Hi Torbjorn,
I was in fact wrong. While the PPL is, generally speaking, heavily dependent on GMP, application B running time is dominated by non-GMP functions. For it, the most important GMP operation is __gmpn_popcount which consumes 12% of the running time. Thanks again,
Roberto