Repository navigation
v0.28.11 — Direct-write trackedRefs (ML OOM fix, 253× improvement)
Fixed
- Core: eliminate intermediate trackedRefs copies in pass encoders — Pass encoders
write ResourceRefs directly to parent CommandEncoder's slice. No per-pass intermediate
storage, no copy at End(). Encoder pre-allocates capacity 64.
Benchmark (Born ML pattern)
| Scenario | allocs/op | B/op |
|---|---|---|
| Baseline (no bind) | 14 | 1.9 KB |
| 100 SetBindGroup | 21 | 5.8 KB |
| 1000 SetBindGroup | 25 | 49 KB |
For Born ML (10K dispatches/step, 312 encoders): ~15 MB heap vs 3.8 GB (253× improvement).
Matches Rust wgpu where trackers live in the command encoder throughout recording.