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...