Benchmarks

The OpenGJK library is continuously for accuracy and performance. This page briefly shows the result of the benchmark that test the runtime performance of the library. This page is updated each time a new version of the library is released. It’s a rudimentary dashboard that quickly summarises where recent development has lead to - in terms of speedup.

Latest run

The latest benchmarks ran on a shared virtual machine.


Latest run on:

Loading data ...

Number of v-CPU:

Loading data ...

CPU(s) frequency in MHz:

Loading data ...


Results

The OpenGJK is called for three simple scenario:

  • A pair of points
  • A pair of random polytopes with 100 vertices each
  • A pair of random polytopes with 1000 vertices each

For each scenario the mean, median, standard deviation and coefficient of variation (cv) is reported for the runtime (CPU time). The results are reported below in logarithmic scale.

Performance changelog

Between v3.0.3 and v4.0.0

The runtime was reduced by 12% by introducing the restrict in the pointer declarations of OpenGJK.

Test informations: Ran on Intel(R) Core(TM) i9-9980HK CPU @ 2.40GHz (L1 Data 32 KiB, L1 Instruction 32 KiB, L2 Unified 256 KiB (x8), L3 Unified 16384 KiB) and build with gcc 12.2.0 using the CMake Release flags.