• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

f-dangel / curvlinops / 23986024830
91%

Build:
DEFAULT BRANCH: main
Ran 04 Apr 2026 07:44PM UTC
Jobs 1
Files 49
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

04 Apr 2026 07:32PM UTC coverage: 91.171% (-0.2%) from 91.385%
23986024830

push

github

web-flow
[OPT] Make `HessianLinearOperator` compile-friendly and benchmark (#286)

* [ADD] Compile-friendly HessianLinearOperator with benchmark

Replace `cached_property` with eager `_init_mp()` in
`CurvatureLinearOperator` and all subclasses to eliminate
`torch.compile` graph breaks for `HessianLinearOperator`.

Add `trace_gradient_and_loss` and `make_compiled_gradient_and_loss`
to `curvlinops.examples`: uses `make_fx` to capture `autograd.grad`
backward as explicit forward ops, then compiles. Benchmark measures
both eager and compiled matvec/memory for compilable operators
(stored in same JSON). Compiled gradient reference enables fair
comparison.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* [REF] Remove defensive guards in compiled visualization

The compiled reference and operator data must always be present.
Remove None guards so missing data crashes instead of silently
producing empty plots.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* [DOC] Overlay eager/compiled bars with opacity; add reference axis

Plot compiled bars on top of eager bars with alpha=0.7 instead of
side-by-side. Use add_gradient_reference for the eager reference
(adds secondary axis showing multiples of gradient time). Compiled
gradient reference shown as dotted line.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* [REF] Use torch.testing.assert_close instead of custom recursive comparison

Replaces hand-rolled _assert_allclose with torch.testing.assert_close
which handles nested structures (tuples, dicts, lists) and catches
length mismatches.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* [TST] Use two batches of different size in Hessian compile test

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* [REF] Extract _setup_problem in compile tests

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* [REF] Move data-to-device into compiled... (continued)

35 of 44 new or added lines in 6 files covered. (79.55%)

30 existing lines in 6 files now uncovered.

2406 of 2639 relevant lines covered (91.17%)

0.91 hits per line

Uncovered Changes

Lines Coverage ∆ File
9
77.27
-4.99% curvlinops/examples/__init__.py

Coverage Regressions

Lines Coverage ∆ File
11
77.27
-4.99% curvlinops/examples/__init__.py
8
94.59
0.7% curvlinops/_empirical_risk.py
7
90.54
-1.41% curvlinops/computers/_base.py
2
97.44
0.02% curvlinops/computers/kfac_hooks.py
1
98.67
0.14% curvlinops/computers/ekfac_hooks.py
1
98.11
0.0% curvlinops/kfac.py
Jobs
ID Job ID Ran Files Coverage
1 23986024830.1 04 Apr 2026 07:44PM UTC 49
91.17
GitHub Action Run
Source Files on build 23986024830
  • Tree
  • List 49
  • Changed 13
  • Source Changed 0
  • Coverage Changed 13
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • f95d3924 on github
  • Prev Build on main (#23660084504)
  • Next Build on main (#23988044085)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc