Skip to content

(Checking how ASV benchmarks look without any code changes) - #1710

Draft
Sevans711 wants to merge 1 commit into
mainfrom
sevans/asv-benchmarks-baseline
Draft

(Checking how ASV benchmarks look without any code changes)#1710
Sevans711 wants to merge 1 commit into
mainfrom
sevans/asv-benchmarks-baseline

Conversation

@Sevans711

Copy link
Copy Markdown
Collaborator

Not intended to be merged to main, just trying to check how ASV benchmarks look currently when the code is unchanged.

There's probably a better solution than having a draft PR for this, but this is the simplest/fastest way I could think of right now. I already attempted but struggled to generate ASV benchmark runs on my local machine with the same output format as what the run-benchmark label produces via github CI.

I originally created this with the intention of determining whether the reported benchmark performance degradation in #1705 is actually caused by the code changes there or not. Maybe this should be closed soon after that check, or maybe it should be open for a longer-term basis to repeat checks like this in the future? For example, it might have been useful to have something like this available for initially discovering #1605.

@Sevans711 Sevans711 added the run-benchmark Run ASV benchmark workflow label Aug 26, 2026
@cmdupuis3

Copy link
Copy Markdown
Collaborator

I did this too, actually. But an easier way to get the benchmarks running is to push your branch, then run ASV benchmarks directly in the Actions tab. That way you don't have to mess with a PR to get them running.

@github-actions

github-actions Bot commented Aug 26, 2026

Copy link
Copy Markdown

ASV Benchmarking

Benchmark Comparison Results

Benchmarks that have improved:

Change Before [c832ff1] After [3204ef7] Ratio Benchmark (Parameter)
- 424±10μs 377±10μs 0.89 mpas_ocean.PointInPolygon.time_face_search_lonlat('480km')

Benchmarks that have stayed the same:

Change Before [c832ff1] After [3204ef7] Ratio Benchmark (Parameter)
195±1ms 194±1ms 0.99 bench_connectivity.Connectivity.time_edge_face('120km')
11.8±0.1ms 11.7±0.1ms 0.99 bench_connectivity.Connectivity.time_edge_face('480km')
191±0.7ms 192±1ms 1.01 bench_connectivity.Connectivity.time_edge_node('120km')
10.8±0.06ms 10.9±0.1ms 1.01 bench_connectivity.Connectivity.time_edge_node('480km')
191±0.9ms 192±1ms 1.00 bench_connectivity.Connectivity.time_face_edge('120km')
11.2±0.07ms 11.1±0.05ms 1.00 bench_connectivity.Connectivity.time_face_edge('480km')
898±10ms 875±3ms 0.97 bench_connectivity.Connectivity.time_face_face('120km')
57.2±0.05ms 55.6±0.4ms 0.97 bench_connectivity.Connectivity.time_face_face('480km')
66.8±4μs 68.7±3μs 1.03 bench_connectivity.Connectivity.time_face_node('120km')
68.9±3μs 63.4±2μs 0.92 bench_connectivity.Connectivity.time_face_node('480km')
410±10μs 413±8μs 1.01 bench_connectivity.Connectivity.time_n_nodes_per_face('120km')
353±10μs 349±3μs 0.99 bench_connectivity.Connectivity.time_n_nodes_per_face('480km')
193±0.5ms 194±0.5ms 1.00 bench_connectivity.Connectivity.time_node_edge('120km')
11.1±0.06ms 11.1±0.1ms 1.00 bench_connectivity.Connectivity.time_node_edge('480km')
78.3±2ms 78.2±1ms 1.00 bench_connectivity.Connectivity.time_node_face('120km')
5.18±0.04ms 5.15±0.03ms 0.99 bench_connectivity.Connectivity.time_node_face('480km')
8.83±0.4ms 8.78±0.2ms 0.99 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
2.72±0.07ms 2.74±0.05ms 1.00 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
10.2±10s 10.4±10ms ~0.00 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
2.27±0.03ms 2.17±0.06ms 0.96 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
57.3k 57.3k 1.00 face_bounds.FaceBounds.track_nbytes_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
12.3k 12.3k 1.00 face_bounds.FaceBounds.track_nbytes_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
123k 123k 1.00 face_bounds.FaceBounds.track_nbytes_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
128 128 1.00 face_bounds.FaceBounds.track_nbytes_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
1.27M 1.27M 1.00 face_bounds.FaceBounds.track_nbytes_grid_with_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
50.1k 50.1k 1.00 face_bounds.FaceBounds.track_nbytes_grid_with_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
1.48M 1.48M 1.00 face_bounds.FaceBounds.track_nbytes_grid_with_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
712 712 1.00 face_bounds.FaceBounds.track_nbytes_grid_with_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
1.96M 1.96M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
1.97M 1.97M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
2.13M 2.13M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
409M 410M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
439M 441M 1.01 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
411M 411M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
410M 411M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
1.23±0.03μs 1.20±0.02μs 0.98 geometry_kernels.AccucrossKernels.time_accucross
2.81±0.06μs 2.76±0.03μs 0.98 geometry_kernels.AccucrossKernels.time_accucross_pair
446±20ns 436±20ns 0.98 geometry_kernels.EFTPrimitives.time_acc_sqrt_re
431±10ns 441±20ns 1.02 geometry_kernels.EFTPrimitives.time_diff_of_products
386±5ns 401±20ns 1.04 geometry_kernels.EFTPrimitives.time_two_prod
391±10ns 386±9ns 0.99 geometry_kernels.EFTPrimitives.time_two_sum
1.55±0.03μs 1.52±0.05μs 0.98 geometry_kernels.GCAConstLatIntersection.time_accux_constlat_kernel
1.19±0.02μs 1.13±0.04μs 0.95 geometry_kernels.GCAConstLatIntersection.time_gca_const_lat_intersection
1.98±0.03μs 1.98±0.05μs 1.00 geometry_kernels.GCAConstLatIntersection.time_try_gca_const_lat_intersection
1.74±0.04μs 1.68±0.04μs 0.97 geometry_kernels.GCAGCAIntersection.time_accux_gca_kernel
1.43±0.02μs 1.41±0.02μs 0.99 geometry_kernels.GCAGCAIntersection.time_gca_gca_intersection
2.19±0.04μs 2.19±0.02μs 1.00 geometry_kernels.GCAGCAIntersection.time_try_gca_gca_intersection
52.6±2μs 53.1±0.8μs 1.01 geometry_kernels.OrientPredicates.time_on_minor_arc
1.14±0.03μs 1.20±0.05μs 1.06 geometry_kernels.OrientPredicates.time_orient3d_on_sphere
2.71±0.1ms 2.59±0.01ms 0.95 geometry_samebody.SameBodyConstLat.time_accux_dispatch
1.17±0ms 1.17±0ms 1.01 geometry_samebody.SameBodyConstLat.time_accux_kernel
1.74±0.02ms 1.72±0.01ms 0.99 geometry_samebody.SameBodyConstLat.time_fp64_dispatch
146±0.9μs 146±3μs 1.00 geometry_samebody.SameBodyConstLat.time_fp64_kernel
32.7±0.2ms 32.7±0.08ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_accux_dispatch
10.2±0.02ms 10.3±0.03ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_accux_kernel
26.7±0.2ms 26.9±0.2ms 1.01 geometry_samebody_gcagca.SameBodyGcaGca.time_fp64_dispatch
4.85±0.03ms 4.86±0.03ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_fp64_kernel
11.8±0.08s 12.2±0.1s 1.04 import.Imports.timeraw_import_uxarray
370M 367M 0.99 import.Imports.track_peakmem_import_uxarray
2.75±0.07ms 2.78±0.01ms 1.01 mpas_ocean.CheckNorm.time_check_norm('120km')
2.24±0.02ms 2.28±0.02ms 1.02 mpas_ocean.CheckNorm.time_check_norm('480km')
827±10ms 817±9ms 0.99 mpas_ocean.ConnectivityConstruction.time_face_face_connectivity('120km')
53.3±0.8ms 53.6±0.4ms 1.01 mpas_ocean.ConnectivityConstruction.time_face_face_connectivity('480km')
678±9μs 665±20μs 0.98 mpas_ocean.ConnectivityConstruction.time_n_nodes_per_face('120km')
588±10μs 585±20μs 1.00 mpas_ocean.ConnectivityConstruction.time_n_nodes_per_face('480km')
5.42±0.05ms 5.43±0.02ms 1.00 mpas_ocean.ConstructFaceLatLon.time_cartesian_averaging('120km')
4.02±0.02ms 3.95±0.04ms 0.98 mpas_ocean.ConstructFaceLatLon.time_cartesian_averaging('480km')
99.2±0.1ms 99.8±0.2ms 1.01 mpas_ocean.ConstructFaceLatLon.time_welzl('120km')
10.7±0.07ms 10.5±0.3ms 0.98 mpas_ocean.ConstructFaceLatLon.time_welzl('480km')
18.2±0.03ms 18.2±0.03ms 1.00 mpas_ocean.ConstructTreeStructures.time_ball_tree('120km')
1.06±0.04ms 1.08±0.02ms 1.03 mpas_ocean.ConstructTreeStructures.time_ball_tree('480km')
10.6±0.02ms 10.6±0.03ms 1.00 mpas_ocean.ConstructTreeStructures.time_kd_tree('120km')
702±30μs 732±20μs 1.04 mpas_ocean.ConstructTreeStructures.time_kd_tree('480km')
588±4ms 579±0.8ms 0.99 mpas_ocean.CrossSections.time_const_lat('120km', 1)
293±0.7ms 293±3ms 1.00 mpas_ocean.CrossSections.time_const_lat('120km', 2)
153±2ms 150±3ms 0.98 mpas_ocean.CrossSections.time_const_lat('120km', 4)
527±2ms 526±2ms 1.00 mpas_ocean.CrossSections.time_const_lat('480km', 1)
267±2ms 262±2ms 0.98 mpas_ocean.CrossSections.time_const_lat('480km', 2)
137±1ms 136±0.8ms 1.00 mpas_ocean.CrossSections.time_const_lat('480km', 4)
429M 430M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 1)
429M 429M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 2)
429M 429M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 4)
412M 412M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 1)
412M 412M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 2)
412M 412M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 4)
24.9±0.08ms 25.1±0.1ms 1.01 mpas_ocean.DualMesh.time_dual_mesh_construction('120km')
3.40±0.08ms 3.37±0.06ms 0.99 mpas_ocean.DualMesh.time_dual_mesh_construction('480km')
61.4±0.4ms 61.4±0.1ms 1.00 mpas_ocean.FaceAreas.time_face_areas('120km')
8.04±5000ms 7.92±5ms 0.98 mpas_ocean.FaceAreas.time_face_areas('480km')
229k 229k 1.00 mpas_ocean.FaceAreas.track_nbytes_face_areas('120km')
14.3k 14.3k 1.00 mpas_ocean.FaceAreas.track_nbytes_face_areas('480km')
2.12M 2.12M 1.00 mpas_ocean.FaceAreas.track_peakmem_face_areas('120km')
817k 817k 1.00 mpas_ocean.FaceAreas.track_peakmem_face_areas('480km')
937±2ms 947±6ms 1.01 mpas_ocean.GeoDataFrame.time_to_geodataframe('120km', False)
52.4±0.7ms 51.9±1ms 0.99 mpas_ocean.GeoDataFrame.time_to_geodataframe('120km', True)
84.5±0.3ms 83.2±0.6ms 0.98 mpas_ocean.GeoDataFrame.time_to_geodataframe('480km', False)
5.55±0.1ms 5.53±0.2ms 1.00 mpas_ocean.GeoDataFrame.time_to_geodataframe('480km', True)
177±6ms 174±0.4ms 0.98 mpas_ocean.Gradient.time_gradient('120km')
12.3±0.1ms 12.2±0.1ms 0.99 mpas_ocean.Gradient.time_gradient('480km')
457k 457k 1.00 mpas_ocean.Gradient.track_nbytes_gradient('120km')
28.7k 28.7k 1.00 mpas_ocean.Gradient.track_nbytes_gradient('480km')
5.08M 5.08M 1.00 mpas_ocean.Gradient.track_peakmem_gradient('120km')
328k 328k 1.00 mpas_ocean.Gradient.track_peakmem_gradient('480km')
424M 424M 1.00 mpas_ocean.GradientColdStartRss.peakmem_gradient('120km')
403M 403M 1.00 mpas_ocean.GradientColdStartRss.peakmem_gradient('480km')
363±1μs 360±5μs 0.99 mpas_ocean.HoleEdgeIndices.time_construct_hole_edge_indices('120km')
206±10μs 200±8μs 0.97 mpas_ocean.HoleEdgeIndices.time_construct_hole_edge_indices('480km')
558±20μs 559±10μs 1.00 mpas_ocean.Integrate.time_integrate('120km')
496±30μs 505±30μs 1.02 mpas_ocean.Integrate.time_integrate('480km')
18.4M 18.4M 1.00 mpas_ocean.Integrate.track_nbytes_integrate('120km')
1.2M 1.2M 1.00 mpas_ocean.Integrate.track_nbytes_integrate('480km')
180±2ms 182±1ms 1.01 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'exclude')
186±5ms 184±4ms 0.99 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'include')
184±3ms 180±0.5ms 0.98 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'split')
13.4±0.2ms 13.3±0.3ms 1.00 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'exclude')
13.3±0.07ms 13.3±0.1ms 1.00 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'include')
14.0±0.1ms 13.3±0.2ms 0.95 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'split')
237±0.5ms 237±0.4ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('120km', 1.0)
1.27±0s 1.27±0s 1.00 mpas_ocean.NeighborhoodBuild.time_build('120km', 15.0)
490±2ms 490±1ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('120km', 5.0)
13.0±0.03ms 12.9±0.02ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('480km', 1.0)
24.7±0.03ms 24.6±0.1ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('480km', 15.0)
16.1±0.04ms 16.0±0.02ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('480km', 5.0)
233±0.5ms 233±0.3ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('120km', 1.0)
1.25±0s 1.25±0s 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('120km', 15.0)
484±0.9ms 484±2ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('120km', 5.0)
12.6±0.01ms 12.6±0.05ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('480km', 1.0)
24.2±0.09ms 24.1±0.06ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('480km', 15.0)
15.6±0.03ms 15.6±0.02ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('480km', 5.0)
1.19 1.19 1.00 mpas_ocean.NeighborhoodBuild.track_mean_neighbors('120km', 1.0)
612.76 612.76 1.00 mpas_ocean.NeighborhoodBuild.track_mean_neighbors('120km', 15.0)
74.17 74.17 1.00 mpas_ocean.NeighborhoodBuild.track_mean_neighbors('120km', 5.0)
1.0 1.0 1.00 mpas_ocean.NeighborhoodBuild.track_mean_neighbors('480km', 1.0)
37.29 37.29 1.00 mpas_ocean.NeighborhoodBuild.track_mean_neighbors('480km', 15.0)
6.57 6.57 1.00 mpas_ocean.NeighborhoodBuild.track_mean_neighbors('480km', 5.0)
728k 728k 1.00 mpas_ocean.NeighborhoodBuild.track_nbytes_neighbors('120km', 1.0)
141M 141M 1.00 mpas_ocean.NeighborhoodBuild.track_nbytes_neighbors('120km', 15.0)
17.4M 17.4M 1.00 mpas_ocean.NeighborhoodBuild.track_nbytes_neighbors('120km', 5.0)
43k 43k 1.00 mpas_ocean.NeighborhoodBuild.track_nbytes_neighbors('480km', 1.0)
563k 563k 1.00 mpas_ocean.NeighborhoodBuild.track_nbytes_neighbors('480km', 15.0)
123k 123k 1.00 mpas_ocean.NeighborhoodBuild.track_nbytes_neighbors('480km', 5.0)
5.72M 5.72M 1.00 mpas_ocean.NeighborhoodBuild.track_peakmem_build('120km', 1.0)
145M 145M 1.00 mpas_ocean.NeighborhoodBuild.track_peakmem_build('120km', 15.0)
21.5M 21.5M 1.00 mpas_ocean.NeighborhoodBuild.track_peakmem_build('120km', 5.0)
362k 362k 1.00 mpas_ocean.NeighborhoodBuild.track_peakmem_build('480km', 1.0)
825k 825k 1.00 mpas_ocean.NeighborhoodBuild.track_peakmem_build('480km', 15.0)
384k 384k 1.00 mpas_ocean.NeighborhoodBuild.track_peakmem_build('480km', 5.0)
48.7±0.9ms 48.0±0.9ms 0.99 mpas_ocean.NeighborhoodDask.time_mean('120km', 'grid_chunks')
22.5±0.07ms 22.5±0.06ms 1.00 mpas_ocean.NeighborhoodDask.time_mean('120km', 'numpy')
44.3±2ms 43.9±1ms 0.99 mpas_ocean.NeighborhoodDask.time_mean('120km', 'time_chunks')
14.4±0.4ms 14.5±0.1ms 1.01 mpas_ocean.NeighborhoodDask.time_mean('480km', 'grid_chunks')
725±20μs 702±30μs 0.97 mpas_ocean.NeighborhoodDask.time_mean('480km', 'numpy')
12.6±0.5ms 11.6±0.5ms 0.92 mpas_ocean.NeighborhoodDask.time_mean('480km', 'time_chunks')
5.76M 5.84M 1.01 mpas_ocean.NeighborhoodDask.track_peakmem_mean('120km', 'grid_chunks')
2.75M 2.75M 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('120km', 'numpy')
5.69M 5.69M 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('120km', 'time_chunks')
686k 695k 1.01 mpas_ocean.NeighborhoodDask.track_peakmem_mean('480km', 'grid_chunks')
177k 177k 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('480km', 'numpy')
536k 544k 1.01 mpas_ocean.NeighborhoodDask.track_peakmem_mean('480km', 'time_chunks')
12.6±0.2s 12.3±0.01s 0.97 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('120km', 'mean')
13.1±0.08s 12.9±0.01s 0.99 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('120km', 'median')
228±2ms 226±0.3ms 0.99 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('480km', 'mean')
234±1ms 232±0.5ms 0.99 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('480km', 'median')
1.30±0s 1.31±0s 1.00 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('120km', 'mean')
1.50±0s 1.51±0s 1.01 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('120km', 'median')
25.2±0.1ms 25.1±0.03ms 1.00 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('480km', 'mean')
26.7±0.02ms 26.6±0.03ms 1.00 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('480km', 'median')
40.3±0.1ms 40.3±0.08ms 1.00 mpas_ocean.NeighborhoodReduce.time_reduce('120km', 'mean')
233±1ms 232±0.1ms 1.00 mpas_ocean.NeighborhoodReduce.time_reduce('120km', 'median')
628±30μs 587±40μs 0.93 mpas_ocean.NeighborhoodReduce.time_reduce('480km', 'mean')
1.98±0.02ms 1.93±0.01ms 0.97 mpas_ocean.NeighborhoodReduce.time_reduce('480km', 'median')
239k 239k 1.00 mpas_ocean.NeighborhoodReduce.track_peakmem_reduce('120km', 'mean')
245k 245k 1.00 mpas_ocean.NeighborhoodReduce.track_peakmem_reduce('120km', 'median')
19.7k 19.7k 1.00 mpas_ocean.NeighborhoodReduce.track_peakmem_reduce('480km', 'mean')
20.2k 20.2k 1.00 mpas_ocean.NeighborhoodReduce.track_peakmem_reduce('480km', 'median')
405±8μs 387±10μs 0.95 mpas_ocean.PointInPolygon.time_face_search_lonlat('120km')
370±10μs 358±20μs 0.97 mpas_ocean.PointInPolygon.time_face_search_xyz('120km')
353±3μs 354±10μs 1.00 mpas_ocean.PointInPolygon.time_face_search_xyz('480km')
234±1ms 231±0.7ms 0.99 mpas_ocean.RemapDownsample.time_bilinear_remapping
290±5ms 285±2ms 0.98 mpas_ocean.RemapDownsample.time_inverse_distance_weighted_remapping
15.5±0.07ms 15.6±0.08ms 1.01 mpas_ocean.RemapDownsample.time_nearest_neighbor_remapping
1.38±0s 1.36±0.01s 0.99 mpas_ocean.RemapUpsample.time_bilinear_remapping
36.2±0.4ms 35.0±2ms 0.97 mpas_ocean.RemapUpsample.time_inverse_distance_weighted_remapping
12.3±0.1ms 12.4±0.2ms 1.01 mpas_ocean.RemapUpsample.time_nearest_neighbor_remapping
10.1±0.2ms 9.75±0.08ms 0.97 mpas_ocean.ZonalAverage.time_zonal_average('120km')
5.73±0.07ms 5.73±0.3ms 1.00 mpas_ocean.ZonalAverage.time_zonal_average('480km')
431M 430M 1.00 mpas_ocean.ZonalAveragePeakMem.peakmem_zonal_average('120km')
414M 413M 1.00 mpas_ocean.ZonalAveragePeakMem.peakmem_zonal_average('480km')
6.98±0.05ms 6.74±0.03ms 0.96 quad_hexagon.QuadHexagon.time_open_dataset
5.84±0.08ms 5.80±0.02ms 0.99 quad_hexagon.QuadHexagon.time_open_grid
408 408 1.00 quad_hexagon.QuadHexagon.track_nbytes_open_dataset
392 392 1.00 quad_hexagon.QuadHexagon.track_nbytes_open_grid
73.8k 73.8k 1.00 quad_hexagon.QuadHexagon.track_peakmem_open_dataset
72.8k 72.8k 1.00 quad_hexagon.QuadHexagon.track_peakmem_open_grid

Benchmarks that have got worse:

Change Before [c832ff1] After [3204ef7] Ratio Benchmark (Parameter)
+ 38.3k 47.3k 1.24 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))

@Sevans711

Copy link
Copy Markdown
Collaborator Author

I did this too, actually. But an easier way to get the benchmarks running is to push your branch, then run ASV benchmarks directly in the Actions tab. That way you don't have to mess with a PR to get them running.

Ah, that makes sense! Does that lead to a nice comment with the benchmark results too? I suppose even if there isn't a comment it's definitely less noisy than making a draft PR

@cmdupuis3

Copy link
Copy Markdown
Collaborator

Nah, you'd have to dig. I've been mostly looking at total time though, so for me it doesn't matter.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

run-benchmark Run ASV benchmark workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants