Skip to content

[Perf #478] LinearSVC: close liblinear-scale fit gap on Iris and Digits #479

Description

@godofecht

Parent: #478

Current canonical v2 losses are real and large: Iris is ~0.613x end-to-end (Flow fit 1.580 ms vs sklearn 0.863 ms; prediction is already much faster), and Digits is ~0.216x (Flow fit 1650.7 ms vs sklearn 356.8 ms). The bottleneck is therefore overwhelmingly fit/solver work, not API overhead.

Audit and profile the LinearSVC training implementation against sklearn/liblinear. Attribute time to coordinate/gradient updates, multiclass strategy, convergence checks, memory layout, repeated dot products, allocation/copies and stopping criteria. Preserve canonical accuracy/parity.

Acceptance: dedicated fit flame/profile breakdown; operation-count comparison against sklearn/liblinear where practical; no avoidable per-sample/per-feature allocation; scaled 100/1k/10k+ sample benchmarks; Iris and Digits end-to-end >=0.95x first, target >=1.05x; prediction must not regress; learned weight/intercept state parity must be reported.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions