godofecht / godofecht/flow-scikit
[Perf #478] Audit and consolidate shared hot primitives: dot, squared distance, RBF, reductions and row partitioning
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2
- Forks
- 0
- Avg merge
- 4h 33m
- Merged PRs (30d)
- 9
Description
Parent: #478. Related: #479 #480 #482 #483 #484 #485 #487 #488.
Several current losses share low-level primitives: dense dot products, squared distances/RBF kernels, feature/class reductions, centroid accumulation and sample partitioning. Audit whether estimator implementations duplicate slower scalar versions instead of using one optimized primitive layer.
Deliverables: call-site inventory; microbenchmarks by shape/layout; contiguous/strided variants; allocation/copy audit; vectorization evidence; shared implementations where semantics match; estimator-specific fallbacks only when justified.
Acceptance: every canonical hot loop maps to an identified primitive or documented estimator-specific kernel; duplicated implementations are eliminated where possible; primitive benchmarks become regressions; fixes can be attributed back to affected estimator issues.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with parent #478 and related issues #479, #480, #482, #483, #484, #485, #487, and #488, then inventory estimator call sites for the listed primitives. Run microbenchmarks across shapes and layouts and audit allocations, copies, and vectorization. Done means canonical hot loops map to identified primitives, duplicates are removed where semantics match, and benchmark regressions document remaining estimator-specific kernels.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python, scikit-learn
- Domain
- machine-learning, performance
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100