Skip to content

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

Draft
Sevans711 wants to merge 4 commits into
mainfrom
sevans/asv-benchmarks-baseline
Draft

(Checking how ASV benchmarks look without any code changes)#1710
Sevans711 wants to merge 4 commits 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 stayed the same:

Change Before [38b33d8] After [36c40f3] Ratio Benchmark (Parameter)
6.02±0.05ms 5.68±0.04ms 0.94 bench_connectivity.Connectivity.time_edge_face('120km')
2.04±0.02ms 2.02±0.01ms 0.99 bench_connectivity.Connectivity.time_edge_face('480km')
4.60±0.02ms 4.57±0.01ms 0.99 bench_connectivity.Connectivity.time_edge_node('120km')
1.58±0.02ms 1.60±0.02ms 1.01 bench_connectivity.Connectivity.time_edge_node('480km')
4.61±0.05ms 4.64±0.04ms 1.01 bench_connectivity.Connectivity.time_face_edge('120km')
1.59±0.02ms 1.62±0.02ms 1.02 bench_connectivity.Connectivity.time_face_edge('480km')
6.87±0.09ms 6.80±0.06ms 0.99 bench_connectivity.Connectivity.time_face_face('120km')
2.50±0.03ms 2.50±0.02ms 1.00 bench_connectivity.Connectivity.time_face_face('480km')
68.6±3μs 68.6±4μs 1.00 bench_connectivity.Connectivity.time_face_node('120km')
67.0±1μs 67.1±0.8μs 1.00 bench_connectivity.Connectivity.time_face_node('480km')
483±9μs 481±8μs 1.00 bench_connectivity.Connectivity.time_n_nodes_per_face('120km')
418±10μs 422±9μs 1.01 bench_connectivity.Connectivity.time_n_nodes_per_face('480km')
6.06±0.02ms 6.24±0.2ms 1.03 bench_connectivity.Connectivity.time_node_edge('120km')
2.07±0.01ms 2.06±0.01ms 0.99 bench_connectivity.Connectivity.time_node_edge('480km')
80.3±1ms 78.9±1ms 0.98 bench_connectivity.Connectivity.time_node_face('120km')
5.12±0.02ms 5.11±0.03ms 1.00 bench_connectivity.Connectivity.time_node_face('480km')
8.64±0.04ms 8.55±0.07ms 0.99 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
2.85±0.02ms 2.80±0.05ms 0.98 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
10.5±10s 10.1±10ms ~0.00 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
2.21±0.02ms 2.20±0.03ms 0.99 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.99M 1.99M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
2M 2M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
2.16M 2.16M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
38.3k 38.2k 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
335M 335M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
365M 365M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
337M 336M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
336M 336M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
1.21±0.02μs 1.25±0.05μs 1.03 geometry_kernels.AccucrossKernels.time_accucross
2.71±0.05μs 2.68±0.03μs 0.99 geometry_kernels.AccucrossKernels.time_accucross_pair
446±10ns 461±5ns 1.03 geometry_kernels.EFTPrimitives.time_acc_sqrt_re
436±9ns 451±20ns 1.03 geometry_kernels.EFTPrimitives.time_diff_of_products
391±10ns 396±10ns 1.01 geometry_kernels.EFTPrimitives.time_two_prod
411±20ns 391±7ns 0.95 geometry_kernels.EFTPrimitives.time_two_sum
686±20ns 671±10ns 0.98 geometry_kernels.GCAConstLatIntersection.time_accux_constlat_kernel
771±20ns 737±20ns 0.96 geometry_kernels.GCAConstLatIntersection.time_gca_const_lat_intersection
822±10ns 861±50ns 1.05 geometry_kernels.GCAConstLatIntersection.time_try_gca_const_lat_intersection
877±20ns 816±10ns 0.93 geometry_kernels.GCAGCAIntersection.time_accux_gca_kernel
947±10ns 952±20ns 1.01 geometry_kernels.GCAGCAIntersection.time_gca_gca_intersection
1.08±0.01μs 1.09±0.04μs 1.01 geometry_kernels.GCAGCAIntersection.time_try_gca_gca_intersection
52.8±0.5μs 52.0±0.5μs 0.98 geometry_kernels.OrientPredicates.time_on_minor_arc
1.18±0.07μs 1.11±0.02μs 0.94 geometry_kernels.OrientPredicates.time_orient3d_on_sphere
3.07±0ms 3.07±0ms 1.00 geometry_samebody.SameBodyConstLat.time_accux_dispatch
1.18±0ms 1.17±0ms 1.00 geometry_samebody.SameBodyConstLat.time_accux_kernel
2.32±0.01ms 2.32±0.01ms 1.00 geometry_samebody.SameBodyConstLat.time_fp64_dispatch
150±2μs 153±8μs 1.02 geometry_samebody.SameBodyConstLat.time_fp64_kernel
29.5±0.07ms 29.3±0ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_accux_dispatch
6.31±0.01ms 6.31±0ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_accux_kernel
23.7±0ms 24.3±0.3ms 1.02 geometry_samebody_gcagca.SameBodyGcaGca.time_fp64_dispatch
896±2μs 875±3μs 0.98 geometry_samebody_gcagca.SameBodyGcaGca.time_fp64_kernel
872±10ms 870±6ms 1.00 import.Imports.timeraw_import_uxarray
292M 292M 1.00 import.Imports.track_peakmem_import_uxarray
2.75±0.03ms 2.71±0.06ms 0.99 mpas_ocean.CheckNorm.time_check_norm('120km')
2.24±0.02ms 2.24±0.02ms 1.00 mpas_ocean.CheckNorm.time_check_norm('480km')
1.19±0.02ms 1.20±0.02ms 1.00 mpas_ocean.ConnectivityConstruction.time_face_face_connectivity('120km')
592±20μs 596±10μs 1.01 mpas_ocean.ConnectivityConstruction.time_face_face_connectivity('480km')
716±10μs 720±9μs 1.01 mpas_ocean.ConnectivityConstruction.time_n_nodes_per_face('120km')
647±20μs 622±10μs 0.96 mpas_ocean.ConnectivityConstruction.time_n_nodes_per_face('480km')
5.53±0.05ms 5.41±0.01ms 0.98 mpas_ocean.ConstructFaceLatLon.time_cartesian_averaging('120km')
4.06±0.04ms 4.01±0.05ms 0.99 mpas_ocean.ConstructFaceLatLon.time_cartesian_averaging('480km')
101±0.4ms 100±0.7ms 1.00 mpas_ocean.ConstructFaceLatLon.time_welzl('120km')
10.9±0.1ms 10.6±0.3ms 0.97 mpas_ocean.ConstructFaceLatLon.time_welzl('480km')
18.2±0.05ms 18.2±0.02ms 1.00 mpas_ocean.ConstructTreeStructures.time_ball_tree('120km')
1.07±0.03ms 1.05±0.01ms 0.98 mpas_ocean.ConstructTreeStructures.time_ball_tree('480km')
10.6±0.03ms 10.6±0.02ms 1.00 mpas_ocean.ConstructTreeStructures.time_kd_tree('120km')
733±20μs 718±10μs 0.98 mpas_ocean.ConstructTreeStructures.time_kd_tree('480km')
615±30ms 601±7ms 0.98 mpas_ocean.CrossSections.time_const_lat('120km', 1)
304±8ms 299±2ms 0.98 mpas_ocean.CrossSections.time_const_lat('120km', 2)
160±8ms 159±2ms 1.00 mpas_ocean.CrossSections.time_const_lat('120km', 4)
545±20ms 540±2ms 0.99 mpas_ocean.CrossSections.time_const_lat('480km', 1)
273±4ms 271±0.8ms 0.99 mpas_ocean.CrossSections.time_const_lat('480km', 2)
142±4ms 138±2ms 0.98 mpas_ocean.CrossSections.time_const_lat('480km', 4)
355M 355M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 1)
355M 355M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 2)
355M 355M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 4)
338M 338M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 1)
338M 338M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 2)
338M 338M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 4)
25.8±0.6ms 25.6±0.5ms 0.99 mpas_ocean.DualMesh.time_dual_mesh_construction('120km')
3.51±0.05ms 3.45±0.07ms 0.98 mpas_ocean.DualMesh.time_dual_mesh_construction('480km')
14.5±0.3ms 14.9±0.2ms 1.03 mpas_ocean.FaceAreas.time_face_areas('120km')
4.60±0.08ms 4.51±0.1ms 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')
729k 729k 1.00 mpas_ocean.FaceAreas.track_peakmem_face_areas('480km')
950±20ms 945±4ms 0.99 mpas_ocean.GeoDataFrame.time_to_geodataframe('120km', False)
56.3±1ms 53.8±1ms 0.96 mpas_ocean.GeoDataFrame.time_to_geodataframe('120km', True)
85.0±0.5ms 85.4±0.9ms 1.01 mpas_ocean.GeoDataFrame.time_to_geodataframe('480km', False)
5.97±0.06ms 5.85±0.2ms 0.98 mpas_ocean.GeoDataFrame.time_to_geodataframe('480km', True)
15.1±0.2ms 14.8±0.1ms 0.98 mpas_ocean.Gradient.time_gradient('120km')
2.20±0.06ms 2.20±0.01ms 1.00 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')
3.43M 3.43M 1.00 mpas_ocean.Gradient.track_peakmem_gradient('120km')
218k 218k 1.00 mpas_ocean.Gradient.track_peakmem_gradient('480km')
350M 350M 1.00 mpas_ocean.GradientColdStartRss.peakmem_gradient('120km')
330M 329M 1.00 mpas_ocean.GradientColdStartRss.peakmem_gradient('480km')
399±20μs 388±6μs 0.97 mpas_ocean.HoleEdgeIndices.time_construct_hole_edge_indices('120km')
222±8μs 205±4μs 0.92 mpas_ocean.HoleEdgeIndices.time_construct_hole_edge_indices('480km')
604±30μs 560±5μs 0.93 mpas_ocean.Integrate.time_integrate('120km')
516±20μs 495±8μs 0.96 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')
184±2ms 184±1ms 1.00 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'exclude')
185±1ms 185±0.9ms 1.00 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'include')
186±1ms 184±1ms 0.99 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'split')
14.2±0.3ms 13.8±0.07ms 0.97 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'exclude')
14.3±0.5ms 14.3±0.2ms 0.99 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'include')
14.4±0.5ms 13.9±0.2ms 0.97 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'split')
238±0.8ms 237±0.5ms 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)
494±2ms 493±3ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('120km', 5.0)
13.3±0.1ms 12.9±0.04ms 0.97 mpas_ocean.NeighborhoodBuild.time_build('480km', 1.0)
25.1±0.06ms 25.1±0.08ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('480km', 15.0)
16.1±0.2ms 16.1±0.04ms 1.00 mpas_ocean.NeighborhoodBuild.time_build('480km', 5.0)
232±0.6ms 232±0.3ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('120km', 1.0)
1.25±0s 1.25±0.01s 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('120km', 15.0)
487±2ms 486±0.9ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('120km', 5.0)
12.6±0.04ms 12.6±0.03ms 1.00 mpas_ocean.NeighborhoodBuild.time_query_radius('480km', 1.0)
24.2±0.07ms 24.4±0.1ms 1.01 mpas_ocean.NeighborhoodBuild.time_query_radius('480km', 15.0)
15.6±0.04ms 15.7±0.03ms 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)
45.5±0.6ms 45.0±0.4ms 0.99 mpas_ocean.NeighborhoodDask.time_mean('120km', 'grid_chunks')
22.7±0.02ms 23.0±0.4ms 1.01 mpas_ocean.NeighborhoodDask.time_mean('120km', 'numpy')
41.2±0.7ms 41.8±1ms 1.01 mpas_ocean.NeighborhoodDask.time_mean('120km', 'time_chunks')
12.2±0.2ms 12.4±0.3ms 1.01 mpas_ocean.NeighborhoodDask.time_mean('480km', 'grid_chunks')
745±30μs 706±10μs 0.95 mpas_ocean.NeighborhoodDask.time_mean('480km', 'numpy')
8.86±0.2ms 8.73±0.06ms 0.99 mpas_ocean.NeighborhoodDask.time_mean('480km', 'time_chunks')
5.84M 5.83M 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('120km', 'grid_chunks')
2.75M 2.75M 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('120km', 'numpy')
5.68M 5.68M 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('120km', 'time_chunks')
646k 685k 1.06 mpas_ocean.NeighborhoodDask.track_peakmem_mean('480km', 'grid_chunks')
177k 177k 1.00 mpas_ocean.NeighborhoodDask.track_peakmem_mean('480km', 'numpy')
532k 529k 0.99 mpas_ocean.NeighborhoodDask.track_peakmem_mean('480km', 'time_chunks')
12.5±0.07s 12.4±0.02s 0.99 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('120km', 'mean')
13.0±0.01s 13.0±0.02s 1.00 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('120km', 'median')
226±0.8ms 227±0.2ms 1.00 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('480km', 'mean')
234±0.5ms 234±0.6ms 1.00 mpas_ocean.NeighborhoodReduce.time_dataset_reduce('480km', 'median')
1.30±0s 1.30±0s 1.00 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('120km', 'mean')
1.50±0s 1.50±0s 0.99 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('120km', 'median')
25.2±0.2ms 25.4±0.2ms 1.00 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('480km', 'mean')
26.7±0.1ms 26.8±0.4ms 1.01 mpas_ocean.NeighborhoodReduce.time_neighborhood_reduce('480km', 'median')
40.2±0.03ms 40.2±0.09ms 1.00 mpas_ocean.NeighborhoodReduce.time_reduce('120km', 'mean')
233±0.6ms 233±0.2ms 1.00 mpas_ocean.NeighborhoodReduce.time_reduce('120km', 'median')
685±40μs 625±20μs 0.91 mpas_ocean.NeighborhoodReduce.time_reduce('480km', 'mean')
2.09±0.04ms 2.02±0.03ms 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.4k 19.4k 1.00 mpas_ocean.NeighborhoodReduce.track_peakmem_reduce('480km', 'mean')
19.9k 19.9k 1.00 mpas_ocean.NeighborhoodReduce.track_peakmem_reduce('480km', 'median')
413±10μs 398±5μs 0.96 mpas_ocean.PointInPolygon.time_face_search_lonlat('120km')
417±20μs 382±20μs 0.92 mpas_ocean.PointInPolygon.time_face_search_lonlat('480km')
372±10μs 365±7μs 0.98 mpas_ocean.PointInPolygon.time_face_search_xyz('120km')
369±10μs 354±8μs 0.96 mpas_ocean.PointInPolygon.time_face_search_xyz('480km')
239±1ms 235±2ms 0.98 mpas_ocean.RemapDownsample.time_bilinear_remapping
297±8ms 299±2ms 1.01 mpas_ocean.RemapDownsample.time_inverse_distance_weighted_remapping
15.8±0.1ms 15.7±0.08ms 1.00 mpas_ocean.RemapDownsample.time_nearest_neighbor_remapping
1.37±0.01s 1.36±0.01s 0.99 mpas_ocean.RemapUpsample.time_bilinear_remapping
36.9±0.4ms 37.6±0.8ms 1.02 mpas_ocean.RemapUpsample.time_inverse_distance_weighted_remapping
12.6±0.08ms 12.7±0.1ms 1.01 mpas_ocean.RemapUpsample.time_nearest_neighbor_remapping
9.80±0.04ms 9.76±0.1ms 1.00 mpas_ocean.ZonalAverage.time_zonal_average('120km')
5.56±0.05ms 5.46±0.04ms 0.98 mpas_ocean.ZonalAverage.time_zonal_average('480km')
357M 357M 1.00 mpas_ocean.ZonalAveragePeakMem.peakmem_zonal_average('120km')
340M 340M 1.00 mpas_ocean.ZonalAveragePeakMem.peakmem_zonal_average('480km')
6.92±0.04ms 6.73±0.05ms 0.97 quad_hexagon.QuadHexagon.time_open_dataset
5.75±0.04ms 5.79±0.03ms 1.01 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
73k 73k 1.00 quad_hexagon.QuadHexagon.track_peakmem_open_grid

@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.

@dylannelson

Copy link
Copy Markdown
Member

Leaving a note here in case it gets solved and disappears in the above benchmark run, we have been seeing a *1000 or so speedup on a test even when nothing changes, it appears as "no change". Very odd:

image

This appears in this PR and others as well (at the time of writing).

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.

3 participants