Benchmarks of ordito.boundary 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.
Time relative to ordito (CUDA), geometric mean over the boundary 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
MeshLib
2x
5
3
trimesh
136x
3
3
MeshLab
152x
2
2
PyVista
156x
1
1
libigl
248x
4
4
boundary_loops
rim_long (131 072 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
392.7 µs
1x
libigl
45.22 ms
115x
MeshLib
71.02 ms
181x
trimesh
306.26 ms
780x
All inputs
Input
ordito (CUDA)
libigl
MeshLib
trimesh
holes_many
497.8 µs
18.14 ms
11.98 ms
145.92 ms
sphere_med
147.2 µs
17.39 ms
10.79 ms
16.13 ms
rim_long
392.7 µs
45.22 ms
71.02 ms
306.26 ms
boundary_edges
rim_long (131 072 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
MeshLib
55.0 µs
0.31x
ordito (CUDA)
178.5 µs
1x
trimesh
17.86 ms
100x
MeshLab
43.46 ms
243x
libigl
43.80 ms
245x
PyVista
56.55 ms
317x
All inputs
Input
ordito (CUDA)
libigl
MeshLab
MeshLib
PyVista
trimesh
holes_many
151.2 µs
22.64 ms
15.05 ms
49.7 µs
16.76 ms
9.76 ms
sphere_med
151.3 µs
22.48 ms
15.48 ms
49.0 µs
16.49 ms
9.79 ms
rim_long
178.5 µs
43.80 ms
43.46 ms
55.0 µs
56.55 ms
17.86 ms
loop_perimeters
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
251.1 µs
1x
MeshLib
930.2 µs
3.7x
All inputs
Input
ordito (CUDA)
MeshLib
saddle_small
65.3 µs
bunny_decimated
65.6 µs
143.5 µs
bunny
48.3 µs
34.2 µs
dragon
251.1 µs
930.2 µs
lucy
101.7 µs
loop_directed_areas
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
241.4 µs
1x
MeshLib
975.6 µs
4x
All inputs
Input
ordito (CUDA)
MeshLib
saddle_small
67.1 µs
bunny_decimated
53.1 µs
165.6 µs
bunny
47.9 µs
37.8 µs
dragon
241.4 µs
975.6 µs
lucy
164.2 µs
oriented_boundary_edges
rim_long (131 072 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
176.9 µs
1x
trimesh
26.76 ms
151x
libigl
52.42 ms
296x
All inputs
Input
ordito (CUDA)
libigl
trimesh
holes_many
158.5 µs
26.52 ms
13.40 ms
sphere_med
115.6 µs
27.05 ms
13.57 ms
rim_long
176.9 µs
52.42 ms
26.76 ms
boundary_vertex_indices
rim_long (131 072 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
MeshLib
56.4 µs
0.38x
ordito (CUDA)
149.0 µs
1x
MeshLab
47.03 ms
316x
All inputs
Input
ordito (CUDA)
MeshLab
MeshLib
holes_many
149.0 µs
16.00 ms
50.7 µs
sphere_med
110.2 µs
16.36 ms
52.2 µs
rim_long
149.0 µs
47.03 ms
56.4 µs
ears
rim_long (131 072 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
163.1 µs
1x
libigl
309.68 ms
1898x
All inputs
Input
ordito (CUDA)
libigl
holes_many
141.8 µs
126.78 ms
sphere_med
119.0 µs
123.23 ms
rim_long
163.1 µs
309.68 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: