Skip to content

Connectivity peakmem benchmarks - #1661

Draft
cmdupuis3 wants to merge 7 commits into
UXARRAY:mainfrom
cmdupuis3:cmd/connectivity_peakmem
Draft

Connectivity peakmem benchmarks#1661
cmdupuis3 wants to merge 7 commits into
UXARRAY:mainfrom
cmdupuis3:cmd/connectivity_peakmem

Conversation

@cmdupuis3

@cmdupuis3 cmdupuis3 commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

Closes #1660

Overview

Two sets of memory benchmarks, tracking allocations in isolation and total peakmem usage.

ConnectivityTracemalloc results from Derecho:

Resolution edge_face edge_node face_face n_nodes_per_face node_edge node_face
480km 204k 980k 888k 24.8k 127k 747k
120km 3.05M 15.5M 14.8M 239k 1.9M 11.9M
30km 68.2M 577M 351M 5.25M 41.9M 249M
15km 273M 2.31G 1.41G 21M 168M 996M
7.5km 1.09G 5.68G 5.29G 83.9M 671M 3.98G
3.75km 4.36G timeout timeout 336M 2.68G 15.9G

(face_edge is a flat 11.4k, face_node is a flat 2.54k)

PR Checklist

General

  • An issue is created and linked
  • Added appropriate labels (if your uxarray repo permissions allow it)
  • Filled out Overview and Expected Usage (if applicable) sections

Testing & Benchmarking

  • Adequate tests are created if there is new functionality
  • Tests are not too basic (such as simply calling a function and nothing else)
  • Tests cover all major paths in your new functions
  • If this PR could affect performance, ran ASV benchmarks and confirmed they show expected behavior (add a new benchmark if necessary)

Documentation

  • Docstrings have been added to all new functions
  • Docstrings have been updated with any function changes

AI Disclosure

AI Usage: Claude Opus 5

  • I take responsibility for all AI-generated content in my PR.
  • I have tested all AI-generated content in my PR.

@cmdupuis3 cmdupuis3 self-assigned this Aug 8, 2026
@cmdupuis3 cmdupuis3 added the benchmarking Related to benchmarks, memory usage, and/or time profiling label Aug 8, 2026
@cmdupuis3 cmdupuis3 added the run-benchmark Run ASV benchmark workflow label Aug 21, 2026
@github-actions

Copy link
Copy Markdown

ASV Benchmarking

Benchmark Comparison Results

Benchmarks that have improved:

Change Before [ab39109] After [77cca15] Ratio Benchmark (Parameter)
- 2.56±0.04s 99.4±0.3ms 0.04 mpas_ocean.ConstructFaceLatLon.time_welzl('120km')
- 160±0.8ms 10.7±0.2ms 0.07 mpas_ocean.ConstructFaceLatLon.time_welzl('480km')
- 609±20μs 538±10μs 0.88 mpas_ocean.Integrate.time_integrate('120km')
- 547±40μs 464±6μs 0.85 mpas_ocean.Integrate.time_integrate('480km')

Benchmarks that have stayed the same:

Change Before [ab39109] After [77cca15] Ratio Benchmark (Parameter)
1.50±0.03ms 1.45±0.05ms 0.97 bench_connectivity.Connectivity.time_edge_face('120km')
710±10μs 704±10μs 0.99 bench_connectivity.Connectivity.time_edge_face('480km')
212±9ms 200±0.4ms 0.94 bench_connectivity.Connectivity.time_edge_node('120km')
11.0±0.1ms 10.9±0.05ms 1.00 bench_connectivity.Connectivity.time_edge_node('480km')
388±7μs 371±10μs 0.96 bench_connectivity.Connectivity.time_face_edge('120km')
362±10μs 365±10μs 1.01 bench_connectivity.Connectivity.time_face_edge('480km')
703±4ms 683±3ms 0.97 bench_connectivity.Connectivity.time_face_face('120km')
45.5±0.3ms 44.4±0.4ms 0.98 bench_connectivity.Connectivity.time_face_face('480km')
60.1±10μs 58.7±1μs 0.98 bench_connectivity.Connectivity.time_face_node('120km')
62.7±1μs 61.3±3μs 0.98 bench_connectivity.Connectivity.time_face_node('480km')
421±30μs 408±30μs 0.97 bench_connectivity.Connectivity.time_n_nodes_per_face('120km')
334±20μs 329±10μs 0.98 bench_connectivity.Connectivity.time_n_nodes_per_face('480km')
1.35±0.02ms 1.29±0.02ms 0.96 bench_connectivity.Connectivity.time_node_edge('120km')
401±10μs 396±20μs 0.99 bench_connectivity.Connectivity.time_node_edge('480km')
77.5±0.8ms 76.0±0.2ms 0.98 bench_connectivity.Connectivity.time_node_face('120km')
5.11±0.01ms 5.11±0.05ms 1.00 bench_connectivity.Connectivity.time_node_face('480km')
15.5M 15.5M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_edge_face('120km')
980k 980k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_edge_face('480km')
15.5M 15.5M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_edge_node('120km')
980k 980k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_edge_node('480km')
15.5M 15.5M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_face_edge('120km')
980k 980k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_face_edge('480km')
19.3M 19.3M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_face_face('120km')
1.2M 1.2M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_face_face('480km')
2.54k 2.54k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_face_node('120km')
2.54k 2.54k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_face_node('480km')
239k 239k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_n_nodes_per_face('120km')
24.6k 24.8k 1.01 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_n_nodes_per_face('480km')
15.5M 15.5M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_node_edge('120km')
980k 980k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_node_edge('480km')
11.9M 11.9M 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_node_face('120km')
747k 747k 1.00 bench_connectivity.ConnectivityChainTracemalloc.track_peakmem_node_face('480km')
3.05M 3.05M 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_edge_face('120km')
204k 204k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_edge_face('480km')
15.5M 15.5M 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_edge_node('120km')
980k 980k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_edge_node('480km')
11.2k 11.2k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_face_edge('120km')
11.2k 11.4k 1.02 bench_connectivity.ConnectivityTracemalloc.track_peakmem_face_edge('480km')
14.7M 14.8M 1.01 bench_connectivity.ConnectivityTracemalloc.track_peakmem_face_face('120km')
888k 888k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_face_face('480km')
2.54k 2.54k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_face_node('120km')
2.54k 2.54k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_face_node('480km')
239k 239k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_n_nodes_per_face('120km')
24.6k 24.8k 1.01 bench_connectivity.ConnectivityTracemalloc.track_peakmem_n_nodes_per_face('480km')
1.9M 1.9M 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_node_edge('120km')
127k 127k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_node_edge('480km')
11.9M 11.9M 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_node_face('120km')
747k 747k 1.00 bench_connectivity.ConnectivityTracemalloc.track_peakmem_node_face('480km')
9.06±0.7ms 8.97±0.4ms 0.99 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
2.86±0.07ms 2.85±0.1ms 1.00 face_bounds.FaceBounds.time_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
10.2±10s 10.7±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.02ms 2.16±0.01ms 0.95 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.98M 1.98M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
1.99M 1.98M 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
2.15M 2.15M 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.3k 1.00 face_bounds.FaceBounds.track_peakmem_face_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
336M 336M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/mpas/QU/oQU480.231010.nc'))
369M 369M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/scrip/outCSne8/outCSne8.nc'))
337M 337M 1.00 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/geoflow-small/grid.nc'))
337M 339M 1.01 face_bounds.FaceBoundsColdStartRss.peakmem_open_and_bounds(PosixPath('/home/runner/work/uxarray/uxarray/test/meshfiles/ugrid/quad-hexagon/grid.nc'))
1.16±0.06μs 1.23±0.06μs 1.06 geometry_kernels.AccucrossKernels.time_accucross
2.76±0.02μs 2.76±0.04μs 1.00 geometry_kernels.AccucrossKernels.time_accucross_pair
431±20ns 446±10ns 1.03 geometry_kernels.EFTPrimitives.time_acc_sqrt_re
421±20ns 426±9ns 1.01 geometry_kernels.EFTPrimitives.time_diff_of_products
381±10ns 381±10ns 1.00 geometry_kernels.EFTPrimitives.time_two_prod
411±10ns 386±10ns 0.94 geometry_kernels.EFTPrimitives.time_two_sum
1.60±0.02μs 1.57±0.01μs 0.98 geometry_kernels.GCAConstLatIntersection.time_accux_constlat_kernel
1.15±0.03μs 1.15±0.04μs 1.00 geometry_kernels.GCAConstLatIntersection.time_gca_const_lat_intersection
1.96±0.01μs 1.89±0.02μs 0.97 geometry_kernels.GCAConstLatIntersection.time_try_gca_const_lat_intersection
1.71±0.02μs 1.64±0.02μs 0.96 geometry_kernels.GCAGCAIntersection.time_accux_gca_kernel
1.41±0.05μs 1.39±0.09μs 0.99 geometry_kernels.GCAGCAIntersection.time_gca_gca_intersection
2.23±0.04μs 2.20±0.05μs 0.98 geometry_kernels.GCAGCAIntersection.time_try_gca_gca_intersection
54.9±0.9μs 54.5±0.8μs 0.99 geometry_kernels.OrientPredicates.time_on_minor_arc
1.10±0.02μs 1.11±0.03μs 1.01 geometry_kernels.OrientPredicates.time_orient3d_on_sphere
2.72±0.1ms 2.60±0.01ms 0.96 geometry_samebody.SameBodyConstLat.time_accux_dispatch
1.18±0.01ms 1.17±0ms 0.99 geometry_samebody.SameBodyConstLat.time_accux_kernel
1.72±0.01ms 1.73±0.01ms 1.01 geometry_samebody.SameBodyConstLat.time_fp64_dispatch
148±1μs 146±0.3μs 0.99 geometry_samebody.SameBodyConstLat.time_fp64_kernel
32.2±0.06ms 32.1±0.01ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_accux_dispatch
10.2±0.01ms 10.3±0.01ms 1.01 geometry_samebody_gcagca.SameBodyGcaGca.time_accux_kernel
26.9±0.3ms 26.5±0.09ms 0.99 geometry_samebody_gcagca.SameBodyGcaGca.time_fp64_dispatch
4.84±0.02ms 4.86±0.01ms 1.00 geometry_samebody_gcagca.SameBodyGcaGca.time_fp64_kernel
811±4ms 816±7ms 1.01 import.Imports.timeraw_import_uxarray
293M 293M 1.00 import.Imports.track_peakmem_import_uxarray
2.68±0.02ms 2.71±0.03ms 1.01 mpas_ocean.CheckNorm.time_check_norm('120km')
2.29±0ms 2.25±0.02ms 0.98 mpas_ocean.CheckNorm.time_check_norm('480km')
846±20ms 837±7ms 0.99 mpas_ocean.ConnectivityConstruction.time_face_face_connectivity('120km')
54.9±0.9ms 54.1±0.8ms 0.98 mpas_ocean.ConnectivityConstruction.time_face_face_connectivity('480km')
667±8μs 659±10μs 0.99 mpas_ocean.ConnectivityConstruction.time_n_nodes_per_face('120km')
584±10μs 603±20μs 1.03 mpas_ocean.ConnectivityConstruction.time_n_nodes_per_face('480km')
5.42±0.04ms 5.43±0.03ms 1.00 mpas_ocean.ConstructFaceLatLon.time_cartesian_averaging('120km')
3.96±0.02ms 4.02±0.04ms 1.01 mpas_ocean.ConstructFaceLatLon.time_cartesian_averaging('480km')
18.2±0.02ms 18.2±0.03ms 1.00 mpas_ocean.ConstructTreeStructures.time_ball_tree('120km')
1.03±0.01ms 1.04±0.01ms 1.01 mpas_ocean.ConstructTreeStructures.time_ball_tree('480km')
10.6±0.01ms 10.6±0.02ms 1.00 mpas_ocean.ConstructTreeStructures.time_kd_tree('120km')
725±10μs 713±10μs 0.98 mpas_ocean.ConstructTreeStructures.time_kd_tree('480km')
582±4ms 582±1ms 1.00 mpas_ocean.CrossSections.time_const_lat('120km', 1)
297±4ms 296±2ms 1.00 mpas_ocean.CrossSections.time_const_lat('120km', 2)
156±1ms 151±0.8ms 0.97 mpas_ocean.CrossSections.time_const_lat('120km', 4)
536±2ms 527±2ms 0.98 mpas_ocean.CrossSections.time_const_lat('480km', 1)
268±1ms 270±0.6ms 1.01 mpas_ocean.CrossSections.time_const_lat('480km', 2)
139±2ms 137±0.5ms 0.99 mpas_ocean.CrossSections.time_const_lat('480km', 4)
356M 356M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 1)
356M 356M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 2)
356M 356M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('120km', 4)
339M 341M 1.01 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 1)
339M 339M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 2)
339M 339M 1.00 mpas_ocean.CrossSectionsPeakMem.peakmem_const_lat('480km', 4)
25.2±0.3ms 25.6±0.4ms 1.02 mpas_ocean.DualMesh.time_dual_mesh_construction('120km')
3.31±0.1ms 3.61±0.05ms 1.09 mpas_ocean.DualMesh.time_dual_mesh_construction('480km')
62.1±4ms 61.9±2ms 1.00 mpas_ocean.FaceAreas.time_face_areas('120km')
8.26±4000ms 8.39±0.1ms 1.02 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')
823k 823k 1.00 mpas_ocean.FaceAreas.track_peakmem_face_areas('480km')
950±3ms 957±1ms 1.01 mpas_ocean.GeoDataFrame.time_to_geodataframe('120km', False)
52.3±0.6ms 54.1±2ms 1.03 mpas_ocean.GeoDataFrame.time_to_geodataframe('120km', True)
84.9±1ms 83.5±0.3ms 0.98 mpas_ocean.GeoDataFrame.time_to_geodataframe('480km', False)
5.35±0.1ms 5.51±0.2ms 1.03 mpas_ocean.GeoDataFrame.time_to_geodataframe('480km', True)
174±0.4ms 173±0.3ms 1.00 mpas_ocean.Gradient.time_gradient('120km')
12.3±0.08ms 12.2±0.06ms 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')
354M 352M 0.99 mpas_ocean.GradientColdStartRss.peakmem_gradient('120km')
331M 331M 1.00 mpas_ocean.GradientColdStartRss.peakmem_gradient('480km')
371±10μs 377±5μs 1.01 mpas_ocean.HoleEdgeIndices.time_construct_hole_edge_indices('120km')
210±9μs 193±10μs 0.92 mpas_ocean.HoleEdgeIndices.time_construct_hole_edge_indices('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')
179±1ms 178±0.8ms 0.99 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'exclude')
182±1ms 178±1ms 0.98 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'include')
178±0.8ms 178±1ms 1.00 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('120km', 'split')
13.7±0.5ms 13.5±0.3ms 0.98 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'exclude')
13.7±0.6ms 13.3±0.1ms 0.97 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'include')
13.9±0.5ms 13.3±0.1ms 0.95 mpas_ocean.MatplotlibConversion.time_dataarray_to_polycollection('480km', 'split')
404±6μs 405±9μs 1.00 mpas_ocean.PointInPolygon.time_face_search_lonlat('120km')
401±10μs 387±10μs 0.97 mpas_ocean.PointInPolygon.time_face_search_lonlat('480km')
365±10μs 371±10μs 1.02 mpas_ocean.PointInPolygon.time_face_search_xyz('120km')
386±10μs 353±4μs 0.91 mpas_ocean.PointInPolygon.time_face_search_xyz('480km')
234±0.5ms 237±0.1ms 1.01 mpas_ocean.RemapDownsample.time_bilinear_remapping
291±2ms 289±3ms 1.00 mpas_ocean.RemapDownsample.time_inverse_distance_weighted_remapping
15.8±0.1ms 15.5±0.07ms 0.98 mpas_ocean.RemapDownsample.time_nearest_neighbor_remapping
1.38±0.01s 1.37±0.01s 1.00 mpas_ocean.RemapUpsample.time_bilinear_remapping
36.6±0.4ms 37.0±0.2ms 1.01 mpas_ocean.RemapUpsample.time_inverse_distance_weighted_remapping
12.6±0.2ms 12.7±0.2ms 1.01 mpas_ocean.RemapUpsample.time_nearest_neighbor_remapping
8.93±0.06ms 9.01±0.07ms 1.01 mpas_ocean.ZonalAverage.time_zonal_average('120km')
4.75±0.03ms 4.77±0.03ms 1.00 mpas_ocean.ZonalAverage.time_zonal_average('480km')
360M 358M 0.99 mpas_ocean.ZonalAveragePeakMem.peakmem_zonal_average('120km')
341M 341M 1.00 mpas_ocean.ZonalAveragePeakMem.peakmem_zonal_average('480km')
6.86±0.03ms 6.80±0.02ms 0.99 quad_hexagon.QuadHexagon.time_open_dataset
5.79±0.01ms 5.81±0.03ms 1.00 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.7k 73.5k 1.00 quad_hexagon.QuadHexagon.track_peakmem_open_dataset
73k 72.8k 1.00 quad_hexagon.QuadHexagon.track_peakmem_open_grid

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

Labels

benchmarking Related to benchmarks, memory usage, and/or time profiling run-benchmark Run ASV benchmark workflow

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add connectivity peakmem benchmarks

1 participant