Skip to content

Commit 8af2860

Browse files
author
miranov25
committed
feat(groupby): Phase 3 v4 (Numba) — 33–36× faster than v2 on tiny groups
- Weighted Numba kernel (XtWX/XtWY), robust pivoting - Bench: 4k×5 → v2=0.401s, v4=0.013s (~31×); 12k×5 → v2=1.174s, v4=0.033s (~35.5×) - 19/19 tests passing; API/schema unchanged
1 parent 225437c commit 8af2860

File tree

3 files changed

+431
-0
lines changed

3 files changed

+431
-0
lines changed
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
2+
======================================================================
3+
PHASE 3: Backend benchmark (v2/v3/v4 comparison)
4+
======================================================================
5+
Data: 12000 groups × 5 rows = 60000 total | n_jobs=4
6+
Warm-ups: 2 Repeats: 5
7+
8+
loky : 1.174s (runs: 1.143, 1.174, 1.193, 1.166, 1.174)
9+
v3 : 3.974s (runs: 3.974, 4.003, 4.010, 3.962, 3.924)
10+
v4 : 0.033s (runs: 0.034, 0.033, 0.033, 0.033, 0.033)
11+
12+
Speedups (relative to loky):
13+
loky : 1.00×
14+
v3 : 0.30×
15+
v4 : 35.50×
16+
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
2+
======================================================================
3+
PHASE 3: Backend benchmark (v2/v3/v4 comparison)
4+
======================================================================
5+
Data: 4000 groups × 5 rows = 20000 total | n_jobs=4
6+
Warm-ups: 2 Repeats: 5
7+
8+
loky : 0.416s (runs: 0.398, 0.426, 0.416, 0.424, 0.402)
9+
v3 : 1.339s (runs: 1.382, 1.348, 1.339, 1.329, 1.322)
10+
v4 : 0.013s (runs: 0.012, 0.012, 0.042, 0.013, 0.013)
11+
12+
Speedups (relative to loky):
13+
loky : 1.00×
14+
v3 : 0.31×
15+
v4 : 33.07×
16+

0 commit comments

Comments
 (0)