perf: try out new cliping numba kernel #3952
+77
−35
Draft
scverse-benchmark / benchmark
succeeded
Jan 30, 2026 in 1h 1m 31s
Benchmark
Benchmark run successful
Details
All benchmarks:
| Change | Before [4c7c5c0] | After [8b3f328] | Ratio | Benchmark (Parameter) |
|---|---|---|---|---|
| 308M | 308M | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('bmmc', 'counts') | |
| 308M | 307M | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('bmmc', 'counts-off-axis') | |
| 4.1G | 4.1G | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('lung93k', 'counts') | |
| 4.1G | 4.1G | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('lung93k', 'counts-off-axis') | |
| 368M | 367M | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('pbmc3k', 'counts') | |
| 367M | 367M | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('pbmc3k', 'counts-off-axis') | |
| 286M | 286M | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('pbmc68k_reduced', 'counts') | |
| 285M | 285M | 1.00 | preprocessing_counts.FastSuite.peakmem_calculate_qc_metrics('pbmc68k_reduced', 'counts-off-axis') | |
| 310M | 310M | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('bmmc', 'counts') | |
| 310M | 310M | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('bmmc', 'counts-off-axis') | |
| 4.44G | 4.44G | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('lung93k', 'counts') | |
| 4.44G | 4.44G | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('lung93k', 'counts-off-axis') | |
| 376M | 376M | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('pbmc3k', 'counts') | |
| 376M | 376M | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('pbmc3k', 'counts-off-axis') | |
| 285M | 285M | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('pbmc68k_reduced', 'counts') | |
| 285M | 284M | 1.00 | preprocessing_counts.FastSuite.peakmem_log1p('pbmc68k_reduced', 'counts-off-axis') | |
| 401M | 396M | 0.99 | preprocessing_counts.FastSuite.peakmem_normalize_total('bmmc', 'counts') | |
| 396M | 396M | 1.00 | preprocessing_counts.FastSuite.peakmem_normalize_total('bmmc', 'counts-off-axis') | |
| 4.96G | 4.96G | 1.00 | preprocessing_counts.FastSuite.peakmem_normalize_total('lung93k', 'counts') | |
| 4.96G | 4.96G | 1.00 | preprocessing_counts.FastSuite.peakmem_normalize_total('lung93k', 'counts-off-axis') | |
| 471M | 466M | 0.99 | preprocessing_counts.FastSuite.peakmem_normalize_total('pbmc3k', 'counts') | |
| 467M | 466M | 1.00 | preprocessing_counts.FastSuite.peakmem_normalize_total('pbmc3k', 'counts-off-axis') | |
| 285M | 285M | 1.00 | preprocessing_counts.FastSuite.peakmem_normalize_total('pbmc68k_reduced', 'counts') | |
| 285M | 285M | 1.00 | preprocessing_counts.FastSuite.peakmem_normalize_total('pbmc68k_reduced', 'counts-off-axis') | |
| 13.0±0.4ms | 13.5±0.3ms | 1.04 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('bmmc', 'counts') | |
| 12.6±0.4ms | 12.6±0.3ms | 1.00 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('bmmc', 'counts-off-axis') | |
| 2.15±0.01s | 2.14±0.01s | 1.00 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('lung93k', 'counts') | |
| 1.66±0s | 1.67±0s | 1.00 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('lung93k', 'counts-off-axis') | |
| 38.4±0.7ms | 38.4±0.5ms | 1.00 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('pbmc3k', 'counts') | |
| 29.2±0.7ms | 28.3±0.5ms | 0.97 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('pbmc3k', 'counts-off-axis') | |
| 5.00±0.02ms | 4.95±0.04ms | 0.99 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('pbmc68k_reduced', 'counts') | |
| 4.95±0.02ms | 4.95±0.01ms | 1.00 | preprocessing_counts.FastSuite.time_calculate_qc_metrics('pbmc68k_reduced', 'counts-off-axis') | |
| 1.55±0.1ms | 1.56±0.1ms | 1.01 | preprocessing_counts.FastSuite.time_log1p('bmmc', 'counts') | |
| 1.61±0.08ms | 1.61±0.05ms | 1.00 | preprocessing_counts.FastSuite.time_log1p('bmmc', 'counts-off-axis') | |
| 692±7ms | 692±6ms | 1.00 | preprocessing_counts.FastSuite.time_log1p('lung93k', 'counts') | |
| 690±0.7ms | 690±4ms | 1.00 | preprocessing_counts.FastSuite.time_log1p('lung93k', 'counts-off-axis') | |
| 7.40±0.04ms | 7.44±0.06ms | 1.01 | preprocessing_counts.FastSuite.time_log1p('pbmc3k', 'counts') | |
| 7.49±0.4ms | 7.51±0.5ms | 1.00 | preprocessing_counts.FastSuite.time_log1p('pbmc3k', 'counts-off-axis') | |
| 393±4μs | 390±1μs | 0.99 | preprocessing_counts.FastSuite.time_log1p('pbmc68k_reduced', 'counts') | |
| 392±4μs | 391±5μs | 1.00 | preprocessing_counts.FastSuite.time_log1p('pbmc68k_reduced', 'counts-off-axis') | |
| 2.84±0.05ms | 2.88±0.07ms | 1.02 | preprocessing_counts.FastSuite.time_normalize_total('bmmc', 'counts') | |
| 7.21±0.2ms | 7.36±0.5ms | 1.02 | preprocessing_counts.FastSuite.time_normalize_total('bmmc', 'counts-off-axis') | |
| 588±0.8ms | 600±4ms | 1.02 | preprocessing_counts.FastSuite.time_normalize_total('lung93k', 'counts') | |
| 2.79±0s | 2.94±0.02s | 1.05 | preprocessing_counts.FastSuite.time_normalize_total('lung93k', 'counts-off-axis') | |
| 9.71±0.5ms | 9.48±0.1ms | 0.98 | preprocessing_counts.FastSuite.time_normalize_total('pbmc3k', 'counts') | |
| 35.7±1ms | 36.5±0.7ms | 1.02 | preprocessing_counts.FastSuite.time_normalize_total('pbmc3k', 'counts-off-axis') | |
| 597±80μs | 577±40μs | 0.97 | preprocessing_counts.FastSuite.time_normalize_total('pbmc68k_reduced', 'counts') | |
| 552±2μs | 550±2μs | 1.00 | preprocessing_counts.FastSuite.time_normalize_total('pbmc68k_reduced', 'counts-off-axis') | |
| 422M | 422M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_cells('pbmc3k', 'counts') | |
| 422M | 422M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_cells('pbmc3k', 'counts-off-axis') | |
| 296M | 296M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_cells('pbmc68k_reduced', 'counts') | |
| 296M | 297M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_cells('pbmc68k_reduced', 'counts-off-axis') | |
| 422M | 422M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_genes('pbmc3k', 'counts') | |
| 422M | 422M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_genes('pbmc3k', 'counts-off-axis') | |
| 296M | 295M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_genes('pbmc68k_reduced', 'counts') | |
| 296M | 296M | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_filter_genes('pbmc68k_reduced', 'counts-off-axis') | |
| 1.1G | 1.1G | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_scrublet('pbmc3k', 'counts') | |
| 1.1G | 1.1G | 1.00 | preprocessing_counts.PreprocessingCountsSuite.peakmem_scrublet('pbmc3k', 'counts-off-axis') | |
| 513M | 525M | 1.02 | preprocessing_counts.PreprocessingCountsSuite.peakmem_scrublet('pbmc68k_reduced', 'counts') | |
| 523M | 514M | 0.98 | preprocessing_counts.PreprocessingCountsSuite.peakmem_scrublet('pbmc68k_reduced', 'counts-off-axis') | |
| 65.0±4ms | 65.8±4ms | 1.01 | preprocessing_counts.PreprocessingCountsSuite.time_filter_cells('pbmc3k', 'counts') | |
| 89.6±0.7ms | 89.8±1ms | 1.00 | preprocessing_counts.PreprocessingCountsSuite.time_filter_cells('pbmc3k', 'counts-off-axis') | |
| 9.34±0.6ms | 10.4±0.9ms | ~1.11 | preprocessing_counts.PreprocessingCountsSuite.time_filter_cells('pbmc68k_reduced', 'counts') | |
| 10.3±0.8ms | 10.9±0.6ms | 1.06 | preprocessing_counts.PreprocessingCountsSuite.time_filter_cells('pbmc68k_reduced', 'counts-off-axis') | |
| 59.7±4ms | 59.3±3ms | 0.99 | preprocessing_counts.PreprocessingCountsSuite.time_filter_genes('pbmc3k', 'counts') | |
| 83.9±3ms | 85.2±3ms | 1.02 | preprocessing_counts.PreprocessingCountsSuite.time_filter_genes('pbmc3k', 'counts-off-axis') | |
| 11.1±0.5ms | 13.2±2ms | ~1.18 | preprocessing_counts.PreprocessingCountsSuite.time_filter_genes('pbmc68k_reduced', 'counts') | |
| 9.53±0.6ms | 11.1±1ms | ~1.16 | preprocessing_counts.PreprocessingCountsSuite.time_filter_genes('pbmc68k_reduced', 'counts-off-axis') | |
| 2.71±0.3s | 2.56±0.08s | 0.94 | preprocessing_counts.PreprocessingCountsSuite.time_scrublet('pbmc3k', 'counts') | |
| 5.58±4s | 2.57±0.2s | ~0.46 | preprocessing_counts.PreprocessingCountsSuite.time_scrublet('pbmc3k', 'counts-off-axis') | |
| 549±8ms | 548±20ms | 1.00 | preprocessing_counts.PreprocessingCountsSuite.time_scrublet('pbmc68k_reduced', 'counts') | |
| 547±6ms | 548±10ms | 1.00 | preprocessing_counts.PreprocessingCountsSuite.time_scrublet('pbmc68k_reduced', 'counts-off-axis') | |
| 459M | 458M | 1.00 | preprocessing_log.HVGSuite.peakmem_highly_variable_genes('cell_ranger') | |
| 458M | 458M | 1.00 | preprocessing_log.HVGSuite.peakmem_highly_variable_genes('seurat') | |
| 459M | 468M | 1.02 | preprocessing_log.HVGSuite.peakmem_highly_variable_genes('seurat_v3') | |
| 31.5±0.4ms | 31.4±0.4ms | 1.00 | preprocessing_log.HVGSuite.time_highly_variable_genes('cell_ranger') | |
| 35.1±0.2ms | 35.2±0.2ms | 1.00 | preprocessing_log.HVGSuite.time_highly_variable_genes('seurat') | |
| - | 96.8±0.3ms | 80.0±0.3ms | 0.83 | preprocessing_log.HVGSuite.time_highly_variable_genes('seurat_v3') |
| 560M | 561M | 1.00 | preprocessing_log.PreprocessingSuite.peakmem_pca('pbmc3k', 'off-axis') | |
| 583M | 578M | 0.99 | preprocessing_log.PreprocessingSuite.peakmem_pca('pbmc3k', None) | |
| 488M | 493M | 1.01 | preprocessing_log.PreprocessingSuite.peakmem_pca('pbmc68k_reduced', 'off-axis') | |
| 491M | 495M | 1.01 | preprocessing_log.PreprocessingSuite.peakmem_pca('pbmc68k_reduced', None) | |
| n/a | n/a | n/a | preprocessing_log.PreprocessingSuite.peakmem_regress_out('pbmc3k', 'off-axis') | |
| n/a | n/a | n/a | preprocessing_log.PreprocessingSuite.peakmem_regress_out('pbmc3k', None) | |
| 347M | 344M | 0.99 | preprocessing_log.PreprocessingSuite.peakmem_regress_out('pbmc68k_reduced', 'off-axis') | |
| 348M | 348M | 1.00 | preprocessing_log.PreprocessingSuite.peakmem_regress_out('pbmc68k_reduced', None) | |
| 1.29G | 1.29G | 1.00 | preprocessing_log.PreprocessingSuite.peakmem_scale('pbmc3k', 'off-axis') | |
| 1.48G | 1.48G | 1.00 | preprocessing_log.PreprocessingSuite.peakmem_scale('pbmc3k', None) | |
| 337M | 336M | 1.00 | preprocessing_log.PreprocessingSuite.peakmem_scale('pbmc68k_reduced', 'off-axis') | |
| 334M | 334M | 1.00 | preprocessing_log.PreprocessingSuite.peakmem_scale('pbmc68k_reduced', None) | |
| 1.93±0.02s | 1.95±0.01s | 1.01 | preprocessing_log.PreprocessingSuite.time_pca('pbmc3k', 'off-axis') | |
| 2.14±0.01s | 2.15±0.01s | 1.00 | preprocessing_log.PreprocessingSuite.time_pca('pbmc3k', None) | |
| 180±10ms | 107±60ms | ~0.59 | preprocessing_log.PreprocessingSuite.time_pca('pbmc68k_reduced', 'off-axis') | |
| 168±40ms | 160±30ms | 0.95 | preprocessing_log.PreprocessingSuite.time_pca('pbmc68k_reduced', None) | |
| n/a | n/a | n/a | preprocessing_log.PreprocessingSuite.time_regress_out('pbmc3k', 'off-axis') | |
| n/a | n/a | n/a | preprocessing_log.PreprocessingSuite.time_regress_out('pbmc3k', None) | |
| 17.9±1ms | 16.8±1ms | 0.94 | preprocessing_log.PreprocessingSuite.time_regress_out('pbmc68k_reduced', 'off-axis') | |
| 16.5±0.4ms | 17.1±0.8ms | 1.04 | preprocessing_log.PreprocessingSuite.time_regress_out('pbmc68k_reduced', None) | |
| 504±3ms | 496±1ms | 0.98 | preprocessing_log.PreprocessingSuite.time_scale('pbmc3k', 'off-axis') | |
| 560±2ms | 552±3ms | 0.99 | preprocessing_log.PreprocessingSuite.time_scale('pbmc3k', None) | |
| 4.80±0.3ms | 5.02±0.4ms | 1.05 | preprocessing_log.PreprocessingSuite.time_scale('pbmc68k_reduced', 'off-axis') | |
| 4.73±0.08ms | 4.72±0.1ms | 1.00 | preprocessing_log.PreprocessingSuite.time_scale('pbmc68k_reduced', None) | |
| 285M | 285M | 1.00 | tools.ToolsSuite.peakmem_diffmap | |
| 291M | 291M | 1.00 | tools.ToolsSuite.peakmem_leiden | |
| 362M | 362M | 1.00 | tools.ToolsSuite.peakmem_rank_genes_groups | |
| 444M | 444M | 1.00 | tools.ToolsSuite.peakmem_umap | |
| 15.2±0.3ms | 14.4±0.4ms | 0.95 | tools.ToolsSuite.time_diffmap | |
| 18.6±0.4ms | 18.0±0.3ms | 0.97 | tools.ToolsSuite.time_leiden | |
| 62.2±0.5ms | 62.8±0.5ms | 1.01 | tools.ToolsSuite.time_rank_genes_groups | |
| 1.02±0s | 1.02±0s | 1.00 | tools.ToolsSuite.time_umap |
Loading