Skip to content

parametrization

Benchmarks of ordito.parametrization against every library that computes the same thing. Each chart shows the time of every library relative to ordito on CUDA (1x, in green): a longer bar took longer. The table under each chart lists every input the function was measured on. See Benchmarks for how to read and reproduce these numbers.

Measured on GPU: NVIDIA GeForce RTX 5090 · CPU: Intel Xeon w7-2495X

Summary

0.1x1x10x100xordito (CUDA): the reference, 1xordito (CUDA)1xlibigl: 10x ordito's time, geometric mean over 6 functions; slower than ordito in 6libigl10x (6)MeshLab: 17x ordito's time, geometric mean over 3 functions; slower than ordito in 3MeshLab17x (3)
Time relative to ordito (CUDA), geometric mean over the parametrization functions both implement; in parentheses, the number of functions. Log scale. Runs stopped at the time limit are left out.
Values
Library Time relative to ordito Functions compared ordito faster in
libigl 10x 6 6
MeshLab 17x 3 3

map_vertices_to_circle

0.1x1x10xordito (CUDA): 31.5 µs, 1x ordito's timeordito (CUDA)1x · 31.5 µslibigl: 91.7 µs, 2.9x ordito's timelibigl2.9x · 91.7 µs
hemisphere (41 088 faces) · time relative to ordito, log scale
Values
Library Median Relative to ordito
ordito (CUDA) 31.5 µs 1x
libigl 91.7 µs 2.9x
All inputs
Input ordito (CUDA) libigl
saddle_small 35.5 µs 29.1 µs
saddle 47.8 µs 93.7 µs
hemisphere 31.5 µs 91.7 µs

harmonic

0.1x1x10x100xordito (CUDA): 2.13 ms, 1x ordito's timeordito (CUDA)1x · 2.13 mslibigl: 70.76 ms, 33x ordito's timelibigl33x · 70.76 msMeshLab: 91.54 ms, 43x ordito's timeMeshLab43x · 91.54 ms
hemisphere (41 088 faces) · order=1 · time relative to ordito, log scale
Values
Library Median Relative to ordito
ordito (CUDA) 2.13 ms 1x
libigl 70.76 ms 33x
MeshLab 91.54 ms 43x
All inputs
Input ordito (CUDA) libigl MeshLab
saddle_small order=1 1.45 ms 8.99 ms 16.96 ms
saddle_small order=2 4.43 ms 27.19 ms
saddle order=1 2.27 ms 38.24 ms 57.39 ms
saddle order=2 6.34 ms 129.01 ms
hemisphere order=1 2.13 ms 70.76 ms 91.54 ms
hemisphere order=2 7.01 ms 303.53 ms

harmonic_conditioning

0.1x1x10x100xordito (CUDA): 2.28 ms, 1x ordito's timeordito (CUDA)1x · 2.28 mslibigl: 38.19 ms, 17x ordito's timelibigl17x · 38.19 msMeshLab: 57.20 ms, 25x ordito's timeMeshLab25x · 57.20 ms
saddle (34 848 faces) · time relative to ordito, log scale
Values
Library Median Relative to ordito
ordito (CUDA) 2.28 ms 1x
libigl 38.19 ms 17x
MeshLab 57.20 ms 25x
All inputs
Input ordito (CUDA) libigl MeshLab
saddle 2.28 ms 38.19 ms 57.20 ms
saddle_graded 11.68 ms 38.02 ms 56.90 ms

arap

0.1x1x10x100xordito (CUDA): 2.88 ms, 1x ordito's timeordito (CUDA)1x · 2.88 mslibigl: 169.02 ms, 59x ordito's timelibigl59x · 169.02 ms
hemisphere (41 088 faces) · iterations=3 · time relative to ordito, log scale
Values
Library Median Relative to ordito
ordito (CUDA) 2.88 ms 1x
libigl 169.02 ms 59x
All inputs
Input ordito (CUDA) libigl
saddle_small iterations=3 3.02 ms 38.92 ms
saddle_small iterations=10 5.88 ms 54.82 ms
saddle iterations=3 4.09 ms 120.33 ms
saddle iterations=10 8.41 ms 171.88 ms
hemisphere iterations=3 2.88 ms 169.02 ms
hemisphere iterations=10 4.34 ms 241.18 ms

lscm

0.1x1x10x100xordito (CUDA): 7.33 ms, 1x ordito's timeordito (CUDA)1x · 7.33 mslibigl: 299.80 ms, 41x ordito's timelibigl41x · 299.80 msMeshLab: 333.44 ms, 45x ordito's timeMeshLab45x · 333.44 ms
hemisphere (41 088 faces) · time relative to ordito, log scale
Values
Library Median Relative to ordito
ordito (CUDA) 7.33 ms 1x
libigl 299.80 ms 41x
MeshLab 333.44 ms 45x
All inputs
Input ordito (CUDA) libigl MeshLab
saddle_small 4.40 ms 23.87 ms 33.05 ms
saddle 7.01 ms 115.78 ms 139.63 ms
hemisphere 7.33 ms 299.80 ms 333.44 ms

tutte

0.1x1x10x100xordito (CUDA): 2.37 ms, 1x ordito's timeordito (CUDA)1x · 2.37 mslibigl: 68.55 ms, 29x ordito's timelibigl29x · 68.55 ms
hemisphere (41 088 faces) · time relative to ordito, log scale
Values
Library Median Relative to ordito
ordito (CUDA) 2.37 ms 1x
libigl 68.55 ms 29x
All inputs
Input ordito (CUDA) libigl
saddle_small 1.35 ms 6.35 ms
saddle 2.00 ms 30.75 ms
hemisphere 2.37 ms 68.55 ms

Without a reference

No other library computes these, so they have no comparison. ordito (CUDA)'s median time on the largest input it was measured on:

Function Input ordito (CUDA)
face_flipped_mask lucy 310.1 µs
face_flipped_indices lucy 860.7 µs
fixed_vertex_solver_factor hemisphere 4.15 ms