Benchmarks of ordito.points 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 points 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
4.2x
5
5
PyTorch3D (CUDA)
4.5x
2
2
Open3D
21x
8
8
SciPy
41x
2
2
NumPy
78x
2
2
MeshLab
106x
6
6
trimesh
136x
8
8
PyVista
513x
5
5
point_plane_distance
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
23.5 µs
1x
trimesh
3.00 ms
128x
PyVista
570.53 ms
24322x
All inputs
Input
ordito (CUDA)
PyVista
trimesh
sphere_small
25.6 µs
bunny_decimated
25.5 µs
10.76 ms
17.4 µs
bunny
25.3 µs
48.20 ms
57.9 µs
dragon
23.5 µs
570.53 ms
3.00 ms
happy_buddha
23.5 µs
930.56 ms
758.6 µs
lucy
159.0 µs
16.850 s
41.56 ms
fit_line
dragon (871 414 faces) · time relative to ordito, log scale · a red cross is a run that left no timeValues
Library
Median
Relative to ordito
ordito (CUDA)
88.0 µs
1x
PyVista
15.81 ms
180x
trimesh
out of memory
All inputs
Input
ordito (CUDA)
PyVista
trimesh
sphere_small
122.6 µs
bunny_decimated
77.3 µs
1.59 ms
479.20 ms
bunny
126.1 µs
2.64 ms
10.306 s
dragon
88.0 µs
15.81 ms
out of memory
happy_buddha
129.0 µs
19.72 ms
out of memory (predicted)
lucy
225.4 µs
962.55 ms
out of memory (predicted)
half_space_mask
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
36.7 µs
1x
MeshLib
153.4 µs
4.2x
PyVista
566.30 ms
15416x
All inputs
Input
ordito (CUDA)
MeshLib
PyVista
sphere_small
41.2 µs
bunny_decimated
33.0 µs
38.5 µs
10.67 ms
bunny
33.3 µs
126.6 µs
47.81 ms
dragon
36.7 µs
153.4 µs
566.30 ms
happy_buddha
38.6 µs
289.6 µs
913.28 ms
lucy
145.4 µs
2.54 ms
16.689 s
principal_axes
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
149.1 µs
1x
MeshLib
621.2 µs
4.2x
PyVista
8.53 ms
57x
All inputs
Input
ordito (CUDA)
MeshLib
PyVista
sphere_small
160.9 µs
bunny_decimated
146.8 µs
19.7 µs
205.3 µs
bunny
128.4 µs
59.5 µs
721.6 µs
dragon
149.1 µs
621.2 µs
8.53 ms
happy_buddha
164.9 µs
774.2 µs
10.69 ms
lucy
368.6 µs
29.05 ms
349.02 ms
fit_plane
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
134.2 µs
1x
MeshLib
614.8 µs
4.6x
trimesh
9.10 ms
68x
PyVista
16.15 ms
120x
MeshLab
28.83 ms
215x
All inputs
Input
ordito (CUDA)
MeshLab
MeshLib
PyVista
trimesh
sphere_small
143.0 µs
bunny_decimated
135.8 µs
359.4 µs
17.7 µs
2.45 ms
171.4 µs
bunny
108.4 µs
1.44 ms
83.6 µs
3.75 ms
784.0 µs
dragon
134.2 µs
28.83 ms
614.8 µs
16.15 ms
9.10 ms
happy_buddha
156.4 µs
40.30 ms
816.5 µs
20.26 ms
11.37 ms
lucy
358.4 µs
1.348 s
28.78 ms
960.31 ms
351.28 ms
vector_angle
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
21.5 µs
1x
trimesh
7.71 ms
358x
All inputs
Input
ordito (CUDA)
trimesh
sphere_small
20.6 µs
bunny_decimated
20.3 µs
96.1 µs
bunny
19.7 µs
435.0 µs
dragon
21.5 µs
7.71 ms
happy_buddha
26.8 µs
9.82 ms
lucy
265.6 µs
312.62 ms
radial_sort
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
186.4 µs
1x
trimesh
23.72 ms
127x
All inputs
Input
ordito (CUDA)
trimesh
sphere_small
170.6 µs
bunny_decimated
122.2 µs
230.5 µs
bunny
185.8 µs
1.15 ms
dragon
186.4 µs
23.72 ms
happy_buddha
185.2 µs
30.70 ms
lucy
2.95 ms
1.064 s
radius_outlier_mask
sphere_med (81 920 faces) · radius_scale=2.0 · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
186.7 µs
1x
Open3D
14.40 ms
77x
All inputs
Input
ordito (CUDA)
Open3D
sphere_small radius_scale=2.0
135.3 µs
748.0 µs
sphere_small radius_scale=4.0
179.6 µs
950.0 µs
sphere_med radius_scale=2.0
186.7 µs
14.40 ms
sphere_med radius_scale=4.0
302.2 µs
15.91 ms
point_duplicate_mask
sphere_large (327 680 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
53.3 µs
1x
MeshLib
7.21 ms
135x
Open3D
25.01 ms
469x
All inputs
Input
ordito (CUDA)
MeshLib
Open3D
sphere_small
46.9 µs
296.1 µs
210.2 µs
sphere_med
49.1 µs
2.03 ms
3.98 ms
sphere_large
53.3 µs
7.21 ms
25.01 ms
farthest_point_sample
sphere_med (81 920 faces) · count=64 · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
695.3 µs
1x
PyTorch3D (CUDA)
1.75 ms
2.5x
Open3D
2.26 ms
3.3x
All inputs
Input
ordito (CUDA)
Open3D
PyTorch3D (CUDA)
sphere_small count=64
83.5 µs
149.4 µs
244.0 µs
sphere_small count=1024
1.00 ms
2.26 ms
3.29 ms
sphere_med count=64
695.3 µs
2.26 ms
1.75 ms
sphere_med count=1024
10.12 ms
36.01 ms
27.32 ms
convex_hull
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
1.86 ms
1x
Open3D
49.37 ms
27x
SciPy
61.31 ms
33x
trimesh
79.55 ms
43x
MeshLab
417.44 ms
224x
All inputs
Input
ordito (CUDA)
MeshLab
Open3D
SciPy
trimesh
sphere_small
1.26 ms
bunny_decimated
1.19 ms
5.53 ms
2.46 ms
2.57 ms
4.78 ms
bunny
1.40 ms
22.21 ms
8.32 ms
9.10 ms
13.67 ms
dragon
1.86 ms
417.44 ms
49.37 ms
61.31 ms
79.55 ms
happy_buddha
2.86 ms
569.32 ms
74.43 ms
86.21 ms
121.12 ms
lucy
3.49 ms
15.489 s
1.446 s
1.609 s
2.525 s
convex_subset_mask
dragon (871 414 faces) · n_directions=32 · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
204.9 µs
1x
Open3D
49.26 ms
240x
trimesh
79.13 ms
386x
MeshLab
423.88 ms
2069x
All inputs
Input
ordito (CUDA)
MeshLab
Open3D
trimesh
sphere_small n_directions=32
86.3 µs
sphere_small n_directions=256
74.4 µs
bunny_decimated n_directions=32
75.6 µs
5.89 ms
2.42 ms
4.72 ms
bunny_decimated n_directions=256
93.6 µs
5.83 ms
2.47 ms
4.58 ms
bunny n_directions=32
84.3 µs
22.37 ms
8.46 ms
13.61 ms
bunny n_directions=256
140.4 µs
22.12 ms
8.39 ms
13.41 ms
dragon n_directions=32
204.9 µs
423.88 ms
49.26 ms
79.13 ms
dragon n_directions=256
227.7 µs
425.03 ms
48.87 ms
79.38 ms
happy_buddha n_directions=32
226.4 µs
573.16 ms
73.45 ms
123.15 ms
happy_buddha n_directions=256
272.0 µs
572.48 ms
75.94 ms
126.01 ms
lucy n_directions=32
749.4 µs
15.519 s
1.444 s
2.524 s
lucy n_directions=256
3.29 ms
15.537 s
1.446 s
2.531 s
convex_subset
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
336.4 µs
1x
Open3D
50.26 ms
149x
trimesh
79.76 ms
237x
MeshLab
431.68 ms
1283x
All inputs
Input
ordito (CUDA)
MeshLab
Open3D
trimesh
sphere_small
113.9 µs
bunny_decimated
126.8 µs
5.81 ms
2.49 ms
4.69 ms
bunny
154.6 µs
22.38 ms
8.43 ms
13.61 ms
dragon
336.4 µs
431.68 ms
50.26 ms
79.76 ms
happy_buddha
339.4 µs
569.03 ms
74.23 ms
123.53 ms
lucy
2.28 ms
15.633 s
1.456 s
2.512 s
convex_superset_mask
dragon (871 414 faces) · subdivisions=1 · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
261.1 µs
1x
SciPy
60.31 ms
231x
All inputs
Input
ordito (CUDA)
SciPy
sphere_small subdivisions=1
199.6 µs
sphere_small subdivisions=3
713.5 µs
bunny_decimated subdivisions=1
157.5 µs
2.60 ms
bunny_decimated subdivisions=3
407.7 µs
2.57 ms
bunny subdivisions=1
170.1 µs
9.04 ms
bunny subdivisions=3
492.4 µs
9.06 ms
dragon subdivisions=1
261.1 µs
60.31 ms
dragon subdivisions=3
791.4 µs
60.21 ms
happy_buddha subdivisions=1
303.4 µs
87.23 ms
happy_buddha subdivisions=3
935.0 µs
86.63 ms
lucy subdivisions=1
1.57 ms
1.597 s
lucy subdivisions=3
14.43 ms
1.596 s
centroid
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
23.0 µs
1x
NumPy
4.52 ms
196x
All inputs
Input
ordito (CUDA)
NumPy
sphere_small
35.4 µs
bunny_decimated
33.6 µs
148.2 µs
bunny
30.2 µs
451.3 µs
dragon
23.0 µs
4.52 ms
happy_buddha
41.6 µs
5.98 ms
lucy
146.2 µs
155.09 ms
covariance
dragon (871 414 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
64.0 µs
1x
NumPy
10.21 ms
159x
All inputs
Input
ordito (CUDA)
NumPy
sphere_small
50.2 µs
bunny_decimated
58.9 µs
315.5 µs
bunny
43.4 µs
765.8 µs
dragon
64.0 µs
10.21 ms
happy_buddha
57.3 µs
12.33 ms
lucy
305.7 µs
401.79 ms
estimate_normals_knn
sphere_med (81 920 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
952.3 µs
1x
MeshLib
1.64 ms
1.7x
PyTorch3D (CUDA)
6.94 ms
7.3x
Open3D
14.93 ms
16x
MeshLab
125.65 ms
132x
All inputs
Input
ordito (CUDA)
MeshLab
MeshLib
Open3D
PyTorch3D (CUDA)
sphere_small
383.6 µs
7.46 ms
298.9 µs
848.1 µs
2.69 ms
sphere_med
952.3 µs
125.65 ms
1.64 ms
14.93 ms
6.94 ms
outlier_probability
sphere_med (81 920 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
855.9 µs
1x
MeshLab
9.75 ms
11x
All inputs
Input
ordito (CUDA)
MeshLab
sphere_small
346.7 µs
733.4 µs
sphere_med
855.9 µs
9.75 ms
statistical_outlier_mask
sphere_med (81 920 faces) · time relative to ordito, log scaleValues
Library
Median
Relative to ordito
ordito (CUDA)
850.9 µs
1x
Open3D
15.75 ms
19x
All inputs
Input
ordito (CUDA)
Open3D
sphere_small
337.1 µs
901.5 µs
sphere_med
850.9 µs
15.75 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: