v0.11.0
The main feature of Burn v0.11.0 is automatic kernel fusion, which is still in active development but already usable. Many enhancement and new features have been added throughout the framework, for better efficiency and reliability.
Warnings:
- There are some breaking changes, see below.
- The organization has been renamed from burn-rs to tracel-ai.
Changes
Overall changes
-
[Breaking] Refactor backend names @nathanielsimard
-
[Breaking] Updated the feature flags of burn to improve usability @nathanielsimard
-
Update of Burn's Readme @nathanielsimard @louisfd
Burn Fusion
-
Innovative automatic kernel fusion algorithm @nathanielsimard
-
Relative computation graph cache @nathanielsimard
Burn Core
-
GroupNorm module @dcvz
-
Allow for int and bool constant tensors in modules @nathanielsimard
-
Quiet softmax in transformers @wbrickner
Burn Tensor
-
New operators in tensor API: unsqueeze_dim, narrow, stack, chunk, tril, triu @dcvz
-
Recip operation support on all backends @gzsombor
-
Implement DoubleEndedIterator for DimIter @wcshds
Burn Compute
- Major Autotune refactor @louisfd
Burn Import
-
ONNX Support for Gather @CohenAriel
-
ONNX Support for Cos, Exp, Gelu, Log, Neg @antimora
-
ONNX Support ConvTranspose2D @npatsakula, @antimora,
-
ONNX Support for Sqrt @edmondop
-
Support count_include_pad attr in avg_pool2d ONNX @antimora
Burn Train
- Add warmup consideration for estimated training time @nathanielsimard
Burn WGPU
-
New Matmul kernels @louisfd
-
New Reduce kernel @louisfd
-
Add Autotune capabilities to Matmul and Reduce @louisfd
-
Support of kernel fusion for element-wise operations @nathanielsimard @louisfd
Burn Candle
Backend Comparison
-
Custom Gelu benchmarks @nathanielsimard
-
Persistence of results in json @louisfd
Bugfixes
-
Allow arbitrary precision threshold for float equality assertion @meteor-lsw
-
Update serde_rusqlite to the new version with MIT/Apache2 license @antimora
-
Fix SQLite database tests on Windows @syl20bnr
-
Fix max_dim and min_dim tensor operations @gzsombor
-
Fix inplace double binary broadcasting in the LibTorch backend @nathanielsimard
Documentation
-
Add Python details in the Book's getting started @antimora
Continuous Integration
-
Add test coverage @Luni-4
-
Speedup typos check @Luni-4
-
Dependency checks @Luni-4
-
Vulnerability checks @Luni-4
Thanks
Thanks to all aforemetioned contributors.