Benchmark results
A finite encoding keeps a module's vector spaces and the maps between them. Once we have that finite object, we can ask more than how many classes exist: we can compare modules, construct new ones, and compute their homological algebra. These benchmarks measure the work needed to answer such questions.
Each comparison starts with a mathematical request that both programs support. The programs may represent the input differently and use different algorithms; what must agree is the requested answer. We report computation time, completion and correctness checks, and memory separately.
The ordinary-persistence comparison follows another natural endpoint: when a complete one-parameter barcode is the requested answer, TamerOp computes it directly from the filtered complex.
Results at a glance
| Comparison | Mathematical scope | Latest study | Result |
|---|---|---|---|
| TamerOp and QPA | Maps, constructions, resolutions, diagrams, complexes, and derived operations on finite-poset modules | 2026-10-03; fixed suite of 220 requests | TamerOp 135.70× as fast in the weighted aggregate for construction plus query on the 200 matched requests; even the smallest case-level ratio is 1.76×. QPA's 20 tensor-evaluation failures have no speed ratio. |
| TamerOp and PHAT | Complete ordinary F₂ barcodes from supplied filtered boundary data | PHAT v2, 2026-10-04; 48 medium/large cases across sixteen structural variants | TamerOp 1.33× as fast in the balanced aggregate for construction plus complete barcode; all 48 medium/large requests completed correctly in both tools. |
| TamerOp and Ripser.py | Ordinary Rips barcodes, retained cocycles and landmark selection from clouds and supplied distances | Ripser v1, 2026-10-05; 31 development and six separate evaluation requests | All 37 requests completed with verified outputs. The 1,024-point circle query takes 7.01 s versus 30.4 s; planar H₂ is also a strength. Landmark and small-control results are mixed. |
Explore the reports
- Finite-module algebra: TamerOp and QPA — Benchmark report. What does the scoped comparison with QPA establish?
- Ordinary persistence: TamerOp and PHAT — Benchmark report. What does the scoped comparison with PHAT establish?
- Vietoris–Rips persistence: TamerOp and Ripser.py — Benchmark report. What does the fixed comparison with Ripser.py establish for ordinary Rips barcodes, cocycles and landmark workflows?
Supporting resources:
- QPA v1 result data. How are the QPA report’s released measurements and summaries organized?
- PHAT v2 result data. How are the PHAT report’s released measurements and summaries organized?
- Ripser.py v1 benchmark data. How can the published Ripser comparison data be checked and interpreted?
These comparisons measure compiled code computing fresh mathematical results. Package loading and compilation are outside the timer, and results from earlier queries are discarded. Each report gives its exact timing boundary, tested development snapshot, machine, input sizes, and all incomplete comparisons. It is not an estimate of how long a newly launched Julia session takes to produce its first answer.
QPA, PHAT and Ripser.py v1 are completed comparisons. Other programs will get their own reports when their studies are complete. The comparison roadmap lists planned studies; a place on that list is not a measured result.
Reading the results
A speed ratio is the other program's elapsed time divided by TamerOp's time for the same request. A ratio of 2 means that TamerOp took half as long. An aggregate ratio summarizes the declared suite; individual requests can behave quite differently, so each report also provides results by task and downloadable measurements. Missing or incorrect answers never become infinite speedups.
We emphasize how much time a user saves, not just which number is smaller. Close timings are described as similar performance, with the measured edge stated. These studies use a declared practical band from 1/1.10 to 1.10; being inside it is not a statistical proof of equivalence. A microsecond gap and a saving of several seconds should not carry the same narrative weight just because each counts as one case. The reports retain absolute times, uncertainty and substantial losses alongside TamerOp's strengths. See the presentation guidance.
Computing with retained maps is one part of TamerOp's pipeline. A comparison of finite algebra does not also measure constructing a geometric encoding, reading a point cloud, calculating a matching distance, or drawing a figure. Each later study will identify the part of the pipeline it covers and the question its measurements answer.
How this section will grow
Each report will state its mathematical inputs and outputs, tested versions, machine and resource limits, compilation and reuse policy, correctness checks, timing results, memory measurements, failures, and available evidence. Completed studies retain their dates and source identities; later measurements must be identified as a new study or revision.
For the measurement protocol, see the benchmarking manual. For choosing a bounded suite and interpreting its aggregate, see Designing a comparison that can finish. The results pages and their figures and data live together under docs/benchmarks/, so they can be read on GitHub and incorporated into the documentation website without the author's local benchmark directories.