William Stein wrote:
> 
> 
> On Sat, Aug 22, 2009 at 10:48 AM, Dr. David Kirkby 
> <david.kir...@onetel.net <mailto:david.kir...@onetel.net>> wrote:
> 
> 
>     Dr. David Kirkby wrote:
>      > Has anyone ever thought of developing a Sage benchmark, so allowing
>      > different hardware to be compared in running Sage? If people are
>     setting
>      > up a Sage server, it would be sensible they have some idea of the
>      > performance of various hardware.
>      >
>      > Mathematica has one built in, which tests 15 things.

>     I got a reply from Karl Unterkofler who has developed that Mathematica
>     benchmark which appears to be quite widely used.
> 
>     http://www2.staff.fh-vorarlberg.ac.at/~ku/karl/mma.html
>     <http://www2.staff.fh-vorarlberg.ac.at/%7Eku/karl/mma.html>
> 
>     He has no problem if we wanted to adapt his benchmark for Sage, though
>     he would appreciate a reference to the original source.
> 
>     You can see what his latest version does here:
>     http://www2.staff.fh-vorarlberg.ac.at/~ku/karl/timings70.html
>     <http://www2.staff.fh-vorarlberg.ac.at/%7Eku/karl/timings70.html>
> 
> 
>        1.  Timing[N[Pi, 5000000]]][[1]]
>        2. Timing[N[Sin[1/2], 3000000]][[1]]
>        3. Timing[10000000!][[1]]
>        4. Timing[FactorInteger[2^256 - 1]][[1]]
>        5. Timing[PrimeQ[2^19937 - 1]][[1]]
> 
> 
> Here are the first 5 and number 17:

I think you mean the first five and number 13 - there are only 15 tests.

> time a = N(pi, 5000000)
> time a = N(sin(1/2), 3000000)
> time a = factorial(10000000)
> time a = factor(2^256 - 1)
> time a = is_prime(2^19937 - 1)
> 
> # test 17:
> sage: R.<a1,a2,a3,a4,a5,a6,a7> = QQ[]
> sage: time f=(a1 + a2 + a3 + a4 + a5 + a6 + a7)^29
> CPU times: user 26.90 s, sys: 1.20 s, total: 28.10 s
> Wall time: 34.55 s


> If this is a widely used benchmark, Mathematica may have been tuned by 
> Wolfram Inc to do well on these problems, so it might be worth varying 
> some parameters.

Yes, I did consider that.

Although prior to the 22nd August 2009 Wolfram Research had little if 
anything to gain by making any particular test faster, since the 
benchmark is currently only used with Mathematica. Neither Karl, nor 
anyone else i am aware of (prior to you) have re-written it for MATLAB, 
Maple or any other similar software.

Of course, if Sage used Karl's benchmark, Wolfram Research would have 
something to gain by making the tests faster. That could lead to an 
interesting 'cat and mouse' game!



> On my laptop (OS X 64-bit Sage-4.1.1 and Mathematica 7.0):
> 
> Test 1 -- sage (=mpfr) wins
> 
> SAGE:
> sage: time a = N(pi, 5000000)
> CPU times: user 10.31 s, sys: 0.94 s, total: 11.26 s
> Wall time: 11.73 s

There's quite a difference between 'total' and 'Wall time'

> MATHEMATICA:
> In[1]:= Timing[N[Pi, 5000000]]][[1]]
> Out[1]= 11.3116

Sage wins or loses here depending on whether you use Sage's 'total' time 
or 'Wall time'. The MMA Timing[] command gives a result somewhere 
between the two.

> I checked and the docs for PrimeQ say it returns True if and only if the 
> input number is prime.  Been it points at the implementation notes, 
> which describes the primality test they implement at it is only a 
> pseudoprimality test.  I.e., Mathematica's PrimeQ is really like Sage's 
> is_pseudoprime, despite their very misleading docs.

Yes, that is a big difference. I thought they had a function something 
like 'ProbablyPrime[]' but perhaps not.


> ---------------------------
> 
> Test 17 -- expanding a symbolic expression: Sage = Singular is slightly 
> slower
> 
> sage: R.<a1,a2,a3,a4,a5,a6,a7> = QQ[]
> sage: time f=(a1 + a2 + a3 + a4 + a5 + a6 + a7)^29
> CPU times: user 26.90 s, sys: 1.20 s, total: 28.10 s
> 
> In[15]:= Timing[Expand[(a1 + a2 + a3 + a4 + a5 + a6 + a7)^29]][[1]]
> Out[15]= 24.2602
> ---------------------------
> 
> So Sage wins 4 out 6 of the benchmarks on my laptop at least (a new 
> Macbook Air).
> 
> -- William


If that whole thing could be implemented, it would make for interesting 
results. Karl might even want to provide a link to Sage results!

Dave

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send an email to sage-devel@googlegroups.com
To unsubscribe from this group, send an email to 
sage-devel-unsubscr...@googlegroups.com
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://www.sagemath.org
-~----------~----~----~----~------~----~------~--~---

Reply via email to