MATLAB benchmark
bench
bench(N)
bench(0)
t = bench(N)
bench
measures the execution speed of six
different MATLAB® tasks and compares it to the speed of several
other computers. The six tasks are:
Test | Description | Performance Factors |
---|---|---|
LU | Perform lu of a full
matrix | Floating-point, regular memory access |
FFT | Perform fft of a full
vector | Floating-point, irregular memory access |
ODE | Solve van der Pol equation with ode45 | Data structures and MATLAB function files |
Sparse | Solve a symmetric sparse linear system | Mixed integer and floating-point |
2-D | Plot Lissajous curves | 2-D line drawing graphics |
3-D | Display colormapped peaks with
clipping and transforms | 3-D animated OpenGL graphics |
A final bar chart shows speed, which is inversely proportional to time. The longer bars represent faster machines, and the shorter bars represent the slower ones.
bench(N)
runs each of the six tasks N times.
bench(0)
just displays the results from
other machines.
t = bench(N)
returns an N-by-6 array with
the execution times.
A benchmark is intended to compare performance of one particular version of MATLAB on different machines. It does not offer direct comparisons between different versions of MATLAB because tasks and problem sizes change from version to version.
The LU and FFT tasks involve large matrices and long vectors.
The 2-D and 3-D tasks measure graphics performance, including support for
hardware-accelerated graphics. The rendererinfo
function provides information about the graphics renderer
implementation MATLAB is using. For example, this command gets the information for the current
axes and stores it in a structure called info
.
info = rendererinfo(gca)
Fluctuations of five or ten percent in the measured times of repeated runs on a single machine are normal.