* fix: make vulkan feature opt-in for guide example
The guide example had `burn/vulkan` in its default features, which
caused `cargo build` to fail on macOS without the Vulkan SDK installed.
Workspace feature unification forced all workspace members to build
with the spirv feature, triggering a panic in cubecl-wgpu's build script.
Move vulkan to a non-default opt-in feature, matching the pattern used
by other examples (mnist, text-classification, server).
* skip burn-cuda tests on macOS
CUDA is not available on macOS. Gate the entire test module with
cfg(not(target_os = "macos")) to avoid test failures.
* fix burn-wgpu dtype test on macOS
Without the `metal` feature flag, wgpu still uses Metal at runtime on
macOS. The fallback test branch assumed a non-Metal GPU and asserted
F64 support, which Metal doesn't provide. Add a macOS-specific branch
that matches actual Metal runtime capabilities.
* enable vulkan by default on non-macOS for guide example
Use platform-conditional dependency to keep vulkan enabled by default
on Linux/Windows where it works without extra setup, while excluding
it on macOS where the Vulkan SDK is required.
* add comment for vulkan feature in guide example
* Fix all kernels to work with optimized tensors
* Remove test code from guide
* Clean up guide features
* Update cubecl
* Fix split analysis
* Update cubecl
* Manually reformat
* Fix name
* Use unreachable instead of panic for destructure
* Use wildcard for candle
* Move `decompose_linear` to utils
* Flip test condition for candle
* run all benchmarks
* only run selected benchmarks + add cuda backend in benches
* Can now use custom training strategy with single device
* WIP custom example
* Add an example of a custom training strategy
* remove leftover changes from benches branch
* remove unnecessary generic
* fix typo in docs
* lockfile
* Update train result
* Fix mean_dims example result
* Add persistent renderer config + display summary in examples
* Send summary on train end event + display on drop
* Update summary builder doc
* Move distribution to module
* Add new TensorData with serialization support
* Implement display and from for TensorData
* Add missing Cargo.lock
* Add missing bytemuck feature
* Add zeros, ones, full and random TensorData methods
* Refactor Data -> TensorData usage
* Fix tests
Since TensorData is not generic over the element type anymore no type inference can be done by the compiler. We must explicitly cast the expected results to the expected backend type.
* Remove commented line
* Fix import
* Add record-backward-compat
* Remove dim const generic from TensorData
* Support NestedValue de/serialization with TensorData
* Fix burn-jit tests
* Remove eprinln
* Refactor onnx import to use TensorData
* Fix tch from_data
* Fix nested value serialization for u8
* Fix missing import
* Fix reduce min onnx test
* Fix deprecated attribute
* Remove shape getter
* Remove strict assert in tests
* Add tensor data as_bytes
* Add tensor check for rank mismatch
* Fix typo (dimensions plural)
* Fix error message
* Update book examples with from_data and fix Display impl for TensorData
* Add deprecation note
* Add training report summary
* Fix LossMetric batch size state
* Add NumericEntry de/serialize
* Fix clippy suggestion
* Compact recorder does not use compression (anymore)
* Add learner summary expected results tests
* Add summary to learner builder and automatically display in fit
- Add LearnerSummaryConfig
- Keep track of summary metrics names
- Add model field when displaying from learner.fit()