* Fix ONNX where op dim_inference for scalar inputs
* Rewrite ONNX Where codegen to support scalars
* ONNX Where: Add tests for all_scalar inputs
---------
Co-authored-by: Guillaume Lagrange <lagrange.guillaume.1@gmail.com>
* Nonzero should return an empty vec for zero tensors
* Add nonzero empty test
* Add missing import
---------
Co-authored-by: Nathaniel Simard <nathaniel.simard.42@gmail.com>
This fixes the compile error when burn is compiled with only the `dataset` and `vision` feature enabled
burn = { default-features = false, features = ["dataset", "vision"] }
Ratatui asserts that gauges don't have a progress greater than 1.0
This can happen if a dataset reports a lower len() than it actually provides.
This change prevents a panic when the `Progress::items_processed` is greater than the `Progress::items_total`
* Rename CI workflow back to test.yml
* Static job names in test workflow
This allows to have static status check names
* Remove need for a cache-version matrix variable
- Calculate result of broadcasting in dim_inference
- keep Shape info when converting from Argument to TensorType
- Remove a few sources of Dim = 0 Tensors, create Scalars instead
- Clean up dim_inference a bit
* Fix target convert in batcher
* Align hidden code in training and update loss to use config
* Align imports with example
* Remove unused import and fix guide->crate
* Migrate to xtask-common crate
* Fix example crate name for simple-regression
* Refactor CI workflows
* Flatten linux workflows
* Install grcov and typos from binaries
Although xtask-common support auto-installation of these tools via cargo
it is a lot faster to install them via the distributed binaries
* [CI] Update Rust caches on failure
* [CI] Add shell bash to jobs steps
* [CI] Try cache all crates
* Fix no-std tests not executing
* [CI] Add CARGO_INCREMENTAL 0
* Exclude tch and cuda from tests and merge crates and examples steps
* Fix some typos found with typos cli
* Add Windows and MacOS jobs
* Only test no-std with default rust target
* Fix syntax in composite action setup-windows
* Enable incremental build
* Upate cargo alias for xtask
* Bump to github action checkout v4
* Revert to tch 0.15 and disable WGPU on windows
* Fix color in output
* Add Test command
* Test long output errorring
* Build and test workspace before additional builds and tests
* Disable wgpu tests on windows
* Remove tests- prefix in CI workflow jobs name
* Add Checks command
* Rename ci workflow jobs
* Execute windows and macos CI tests on rust stable only
* Rename integration test files with a test_ prefix
* Fix format
* Don't auto-correct "arange" with typos
* Fix typos in code
* Merge unit and integration tests steps
* Fix macos tests
* Fix coverage step
* Name publish-crate workflow
* Fix bad cache name for macos
* Reorganize commands and get rid of the ci command
* Fix dispatch to customized commands for Burn
* Update to last version of tracel-xtask
* Remove unnecessary shell bash in ci workflow
* Update cargo.lock
* Fix format
* Bump tracel-xtask
* Simplify dispatch of base commands using updated macro
* Update to last version of tracel-xtask
* Adapt legacy run_checks script with new xtask commands
* Run xtask in debug for faster compilation time
* Ditch build step in ci and enable coverage for stable linux only
* Freeze tracel-xtask to specific commit rev
* Update cargo.lock
* Update Step 6 of CONTRIBUTING guidelines about run-checks script
* Remove unneeded CI and CD paragraphgs in CONRIBUTING.md
* Change cache version
* Fix typos
* Use centralized actions and workflows
* Update to last version of tracel-xtask
* Update CONTRIBUTING file to mention integration tests
* Add custom build for thumbv6m-none-eabi
* Ignore onnx files for typos check
* Fix action and workflow paths in github workflows
* Fix custom builds on MacOS
* Bump tracel-xtask crate to last version
* Update Cargo.lock
* Update publish workflow to use reusable workflow in tracel repo
* Add --ci flag for build and test commands
* implemented muli-dim index for GatherNode
The `NodeCodegen` impl for `GatherNode` now performs gather in complete
accordance with the ONNX Gather spec.
- a `gather` function was added to the gather.rs file
- `gather()` is now called within the codegen instead of `tensor.select()`
- a test with two test cases have been added
- test axes 0 and 1
- both use 2D index tensors
* add gather_onnx to numeric api
Added int and float implementations of gather to the burn-tensor numeric
api:
- named the methods `gather_onnx` to not be confused with the current
`gather`
- these implementations follow the `Gather` ONNX spec
Updated the gather*.py variants and their onnx outputs
* modified files didn't end up in last commit
* tests passing for onnx gather
The implementation of gather for the ONNX `Gather` spec is tentatively
complete:
- py test models are updated
- onnx_tests are modified and passing: `gather`, `gather_scalar`, and
`gather_shape`
- node/gather tests are passing
NOTE: The two additional tests in crates/burn-import/src/burn/node/gather.rs that test
the actual functionality of gather are likely to be deleted, since they
are redundant to the tests in
crates/burn-import/onnx-tests/tests/onnx_tests.rs.
* inlined onnx gather within codegen
* rm gather_onnx from public api; rm unnecessary tests
* add comments to gather py models
* some codegen changes; formatting to appease run-checks
- Some necessary changes and improvements to the codegen inlined code
after translating from public api (removed in previous commit).
- Changed some formatting that run-checks complained about.
* simplify gather codegen; include 1d and 2d onnx tests
Modified the `Gather` codegen per requested changes:
- combined match statements on index
- remove use of `alloc::vec::Vec`
- use map -> collect instead of procedural
- include a 1d index gather onnx test
- remove superflous tests
* delete unused gather.onnx
* Made compatible with thumbv6m-none-eabi
* Added example of no_std on rp2040
* Added documentation on usage in no_std
* Rename rp2040 example and add README.md
* working version
* cleanup
* wip
* working version of gather
* testsetsetser
* Revert "testsetsetser"
This reverts commit f37b329697.
* Reapply "testsetsetser"
This reverts commit f8ada0044e.
* Revert "testsetsetser"
This reverts commit f37b329697.
* Revert "working version of gather"
This reverts commit f5047c27c8.
* Revert "wip"
This reverts commit abaaa2dd55.
* Revert "Merge branch 'main' into index-cpa-to-cubecl"
This reverts commit 05bed8ea74, reversing
changes made to 94954fc32c.
* Revert "cleanup"
This reverts commit 94954fc32c.
* Revert "working version"
This reverts commit a06933f029.
* gather test
* fix
* fix clippy
* cleanup