1. Introduction

1.1. Benchmark suite

The benchmark routines for this benchmark suite have been developed under Mathematica 6. It is freely available under the following link:

Click here to download the Mathematica notebook for this benchmark test.

Please run the benchmark suite only with a fresh loaded Mathematica kernel, don't run it more then once during the same session and make sure that no other programs are running in the background which might disturb the performance measurement. Only if these requirements are guaranteed then the resulting timings are comparable.

1.2. Latest results

This is the latest version of Mathematica timing tests; (further results are welcome: stefan@steinhaus-net.de).

New results:

Apple Mac Pro 2,1, Intel Xeon x5365 (8 cores), 3 GHz, 16 GB, Mac OS X 10.5.2 [4]

1.3. The benchmark functions

The intention of the benchmark suite is to cover the timings of important functions. The functions used in this benchmark suite have been grouped by mathematical topic groups. The following topics are covered:

Due to the fact that on most computers single functions are too fast to be used for reliable timings there is a delay factor implemented. The delay factor is a loop counter which is used to execute the specific function n times instead of just one time. The result will be a timing which is high enough to be compared.

1.3.1. Miscellaneous operations

The section miscellaneous operations covers typical data manipulation operations.

  1. Creation of a 800x800 random matrix, take the absolute values of this matrix, transposes the matrix, flattens it to a list and resizes it to a 40x16.000 matrix
  2. Sorting of 200.000 random values.

1.3.2. Integer computations

The section of integer computations covers operations with integere numbers as input and output most especially in terms of number theory.

  1. Computation of the factorial of 680.001 (680.001!)
  2. Check of the first 400.000 numbers of the form x^2-1 whether they are Mersenne Prime numbers
  3. Computation of the first 370 Euler numbers of the polynomial n
  4. 800x800 Hilbert matrix

1.3.3. Floating point computations

The section of floating point computations covers several functions from simple math., Linear Algebra, Analysis and Statistics which have to work with floating point numbers.

  1. Creates a 500x500 random matrix and computes the Eigenvalues of it.
  2. Creates a 800x800 random matrix and computes an orthogonal and normalized set of it.
  3. Numerical integration of 6 triple integrals.
  4. Creates 2^19 random values, calculates the FFT followed by inverse FFT.
  5. Creates a table with 20 random values with 3 factor columns and calculates a 3 way ANOVA with 4 levels.

1.3.4. Symbolic computations

The symbolic computation section covers simple but time intensive symbolic computations.

  1. Creates a polynomial with more then 1.000 terms and expands it.
  2. Computation of a multidimensional Laplace transformation.

1.3.5. Graphics

The graphics section covers complex 2D and 3D graphics.

  1. Computation of a 6 level Koch snowflake.
  2. Computation of an graphics array containing 9 Mandelbrot graphics. Each graphic symbolizes a zoom into the previous Mandelbrot graphic.
  3. Computation of an graphics array with 3D parametric pipes and Klein bottles.

1.3.6. Animation

This section covers only a short excursion into the subject of animated graphics.

  1. Animation of a 3D heat mountain.