March 2027 · Freiberg Workshop on Quantitative Microstructure Analysis, new this year: AI-assisted analysis and MTEX for Python Programme →
MTEX
Benchmark

How fast MTEX is

Ninety operations, from loading a map to the Taylor model, timed on the same input in five versions of MTEX for MATLAB and in MTEX for Python.

Each point is one operation. Its horizontal position is the time the operation takes in MTEX 6.1.1, its height the time in another version: a point below the solid line is faster than 6.1.1, a point on the lower dashed line ten times faster. Both axes are logarithmic. Click a version to hide it; point at a dot to read its operation.

Against MTEX 6.1.1

How many times faster each version is than 6.1.1, over the operations both can run.

versionoperationsmediangeometric meanfastermore than 2× fastermore than 2× slower

What the numbers say

  • MTEX for Python is a median eleven times faster than MTEX 6.1.1, and faster in 62 of the 63 operations both run. The largest gains are the kernel sum of a radial ODF (about 1000×), the Taylor model (500×) and the harmonic form of a radial ODF (300×).
  • MTEX 7.1.0 and 7.2 gain over 6.1.1 mostly in the maps and the export: the kernel average misorientation 9×, the HDF5 export 70×, and in 7.2 the Taylor model 125×. MTEX 7.0.0 runs at the speed of 6.1.1, except the two interpolations, which take about twice as long.
  • MTEX 5.11.2 runs at the speed of 6.1.1 overall. Its interpolation on the rotation group is seven times faster, its ODF average of a tensor fifteen times slower.
  • maps_smooth_boundary is smooth(grains,5) in 5.11.2 and 6.1.1 and smoothBoundary from 7.0.0 on, so its ratios compare two algorithms and every newer version lies above the line.
  • An operation is missing where a version cannot run it: TrueEBSD, the halfwidth selection, CLASSIX and the 3D maps before the versions that brought them, the EDAX HDF5 reader in 6.1.1, calcGrains returning its map in 5.11.2.

All times, in milliseconds

How it was measured

The operations are those of the cross-check between MTEX for Python and MTEX for MATLAB, which runs both on one input and compares the results. Measured on 2026-10-11 on a 32 core server with MATLAB R2024b in batch mode, every version with its default threading, the best of five runs after a warm-up and single runs for the long operations. The releases are their GitHub archives with the mex files of their tag; MTEX 7.2 is its development branch of 2026-10-09. Two other users kept about 18 of the cores busy through all runs, the same for every version, so the absolute times are high: read the ratios. The script is bench/mtex_versions.py in the repository of MTEX for Python.