So what shall we buy? (Porting GiNaC)
Richard B. Kreckel
kreckel at thep.physik.uni-mainz.de
Wed Mar 7 20:08:00 CET 2001
>From the macho-computing-on-macho-machines-dept.
Let me briefly report on some newer timings I ran on some nifty
up-to-date machines using the timings in GiNaC 0.7.3. The competitors
were: an IA-64 (Itanium) machine running at 733MHz, a cheap
off-the-shelve Athlon system with 800MHz and a newer Alpha 21264A
(known as EV67) running at 677MHz clock speed. All had mind-boggling
amounts of memory.
The IA64 and the Athlon were running under Linux, the Alpha under
Compaq's Tru64. The compiler used was GCC 2.95.2 except on the
Itanium where I had to use a newer GCC 3.0 snapshot from CVS.
Two tests were omitted because there seem to be bugs in the exception
handling of the IA64 compiler and for obscure reasons the Alpha program
chose to crash on one test (you won't believe how many compiler problems
one sees when doing this kind of stuff).
As we all know, computer algebra in practice tends to be code that
does a lot branches giving good branch prediction a real chance.
Also, the floating point unit usually idles a lot. So, we can expect
the Alpha processor to run far from optimal performance. Although the
GNU compiler is known not to generate good EPIC code and the IA64
processor is not yet released anyways and the final hardware might differ
from the one used here, I find the Itanium timings rather
disappointig. For your personal edification and without further
apologies here are the numbers:
commutative expansion and substitution (a.k.a. Denny Fliegner's test)
size IA64 Athlon 21264A Ratio
50 0.13 0.07 0.06 1.85 / 1.00 / 0.85
100 0.64 0.35 0.29 1.82 / 1.00 / 0.82
200 3.01 1.719 1.41 1.75 / 1.00 / 0.80
determinant of univariate symbolic Vandermonde matrices
dim IA64 Athlon 21264A Ratio
6x 6 0.02 0.006 0.01 3.33 / 1.00 / 1.66
8x 8 0.21 0.11 0.13 1.91 / 1.00 / 1.18
10x10 2.09 1.01 1.25 2.07 / 1.00 / 1.24
determinant of polyvariate symbolic Toeplitz matrices
dim IA64 Athlon 21264A Ratio
6x 6 0.12 0.065 0.07 1.85 / 1.00 / 1.08
7x 7 0.56 0.30 0.35 1.86 / 1.00 / 1.67
8x 8 2.42 1.32 1.53 1.83 / 1.00 / 1.16
Lewis-Wester test A (divide factorials)
IA64 Athlon 21264A Ratio
0.2 0.095 0.05 2.11 / 1.00 / 0.52
Lewis-Wester test B (sum of rational numbers)
IA64 Athlon 21264A Ratio
0.025 0.009 0.009 2.78 / 1.00 / 1.00
Lewis-Wester test C (gcd of big integers)
IA64 Athlon 21264A Ratio
0.25 0.11 0.075 2.27 / 1.00 / 0.68
Lewis-Wester test D (normalized sum of rational fcns)
IA64 Athlon 21264A Ratio
0.6 0.369 0.33 1.62 / 1.00 / 0.92
Lewis-Wester test E (normalized sum of rational fcns)
IA64 Athlon 21264A Ratio
0.59 0.299 0.29 1.97 / 1.00 / 0.96
Lewis-Wester test F (gcd of 2-var polys)
IA64 Athlon 21264A Ratio
0.07 0.036 0.04 1.94 / 1.00 / 1.11
Lewis-Wester test G (gcd of 3-var polys)
IA64 Athlon 21264A Ratio
1.97 1.159 1.02 1.70 / 1.00 / 0.88
Lewis-Wester test H (det of 80x80 Hilbert)
IA64 Athlon 21264A Ratio
6.49 3.689 4.07 1.75 / 1.00 / 1.10
Lewis-Wester test I (invert rank 40 Hilbert)
IA64 Athlon 21264A Ratio
2.43 1.31 1.56 1.85 / 1.00 / 1.19
Lewis-Wester test J (check rank 40 Hilbert)
IA64 Athlon 21264A Ratio
1.26 0.62 0.74 2.03 / 1.00 / 1.19
Lewis-Wester test K (invert rank 70 Hilbert)
IA64 Athlon 21264A Ratio
15.5 8.62 9.66 1.79 / 1.00 / 1.12
Lewis-Wester test L (check rank 70 Hilbert)
IA64 Athlon 21264A Ratio
7.44 3.54 4.02 2.10 / 1.00 / 1.14
Lewis-Wester test M1 (26x26 sparse, det)
IA64 Athlon 21264A Ratio
0.34 0.179 0.19 1.90 / 1.00 / 1.06
timing Lewis-Wester test N (poly at rational fcns)
IA64 Athlon 21264A Ratio
817.6 674.399 568.7 1.21 / 1.00 / 0.84
timing Lewis-Wester test P (det of sparse rank 101)
IA64 Athlon 21264A Ratio
1.45 0.959 0.64 1.51 / 1.00 / 0.67
timing Lewis-Wester test P' (det of less sparse rank 101)
IA64 Athlon 21264A Ratio
5.51 3.12 2.42 1.77 / 1.00 / 0.78
timing Lewis-Wester test Q (charpoly(P))
IA64 Athlon 21264A Ratio
111.07 70.18 52.04 1.58 / 1.00 / 0.74
timing Lewis-Wester test Q' (charpoly(P'))
IA64 Athlon 21264A Ratio
225.23 151.34 105.65 1.49 / 1.00 / 0.70
Now let's all rush and get ourselves some Athlons for doing
computer algebra. If they only had dual boards...
More information about the GiNaC-devel
mailing list