Skip to main content

Overview

Since the first working drafts, and way before it would be published, this library has served as a good tool to experiment with the performance of UPP algorithms, its bottlenecks and opportunities of improvement.

Some of these are implementation techniques (such as generators and parallelism), others were novel algebraic properties that, even if appear to be simple equivalences, have a dramatic impact in the algorithmic performance.

While (we hope) our papers are the best place to find a detailed presentation of these optimizations, it likely pays off to present an overview here as well. These will be mostly intuitive, at the cost of their mathematical precision.

Transparent defaults

Note that the optimizations presented here are already present in the library and active by default, with the objective to provide the best performance without any user intervention. To tune the settings, however, see Tuning Performance and the ComputationsSettings class.