Skip to content

Backport PR #4062 on branch 1.12.x (perf: numba based aggregations for sparse data)#4064

Merged
ilan-gold merged 1 commit intoscverse:1.12.xfrom
meeseeksmachine:auto-backport-of-pr-4062-on-1.12.x
Apr 16, 2026
Merged

Backport PR #4062 on branch 1.12.x (perf: numba based aggregations for sparse data)#4064
ilan-gold merged 1 commit intoscverse:1.12.xfrom
meeseeksmachine:auto-backport-of-pr-4062-on-1.12.x

Conversation

@meeseeksmachine
Copy link
Copy Markdown
Contributor

Backport PR #4062: perf: numba based aggregations for sparse data

@lumberbot-app lumberbot-app bot added this to the 1.12.2 milestone Apr 16, 2026
@ilan-gold ilan-gold enabled auto-merge (squash) April 16, 2026 15:02
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 16, 2026

Codecov Report

❌ Patch coverage is 97.22222% with 1 line in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (1.12.x@f2268d9). Learn more about missing BASE report.
⚠️ Report is 1 commits behind head on 1.12.x.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
src/scanpy/get/_aggregated.py 96.77% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff            @@
##             1.12.x    #4064   +/-   ##
=========================================
  Coverage          ?   78.48%           
=========================================
  Files             ?      119           
  Lines             ?    12624           
  Branches          ?        0           
=========================================
  Hits              ?     9908           
  Misses            ?     2716           
  Partials          ?        0           
Flag Coverage Δ
hatch-test.low-vers 77.78% <97.22%> (?)
hatch-test.pre 78.36% <97.22%> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

Files with missing lines Coverage Δ
src/scanpy/get/_kernels.py 100.00% <100.00%> (ø)
src/scanpy/get/_aggregated.py 93.30% <96.77%> (ø)

@ilan-gold ilan-gold merged commit ca8f391 into scverse:1.12.x Apr 16, 2026
12 checks passed
@scverse-benchmark
Copy link
Copy Markdown

scverse-benchmark bot commented Apr 16, 2026

Benchmark changes

Change Before [f2268d9] <1.12.1> After [39a29de] Ratio Benchmark (Parameter)
- 4.91G 4.05G 0.82 preprocessing_counts.Agg.peakmem_agg('mean')
- 4.91G 4.05G 0.82 preprocessing_counts.Agg.peakmem_agg('sum')
- 5.83G 4.06G 0.7 preprocessing_counts.Agg.peakmem_agg('var')
- 884±2ms 640±2ms 0.72 preprocessing_counts.Agg.time_agg('count_nonzero')
- 550±2ms 90.2±0.5ms 0.16 preprocessing_counts.Agg.time_agg('mean')
- 547±0.7ms 89.0±1ms 0.16 preprocessing_counts.Agg.time_agg('sum')
- 1.37±0s 132±2ms 0.1 preprocessing_counts.Agg.time_agg('var')
- 453±3μs 387±4μs 0.85 preprocessing_counts.FastSuite.time_log1p('pbmc68k_reduced', 'counts-off-axis')

Comparison: https://github.com/scverse/scanpy/compare/f2268d9ef44ae4cd8811a0d7d7c8e7c0690b5f43..39a29de5342434e4b9317adcbf63603010bd763c
Last changed: Thu, 16 Apr 2026 17:11:40 +0000

More details: https://github.com/scverse/scanpy/pull/4064/checks?check_run_id=71665939915

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants