Commit Graph

214 Commits

Author SHA1 Message Date
Nathaniel Simard 36d4bcd705
[Refactor - Breaking] Refactor cube operations with better names & Support subgroup operations (#1839) 2024-05-31 17:07:21 -04:00
Guillaume Lagrange e4836241e1
Fix `DataSerialize` conversion for elements of the same type (#1832) 2024-05-28 18:12:44 -04:00
Nathaniel Simard 912ffb4a81
Fix wasm examples (#1824) 2024-05-28 17:51:20 -04:00
Jonathan Richard 8de05e1419
Add configurable application logger to learner builder (#1774)
* refactor: add TracingSubscriberLogger trait and FileTracingSubscriberLogger struct

* Remove unused log module and renames, fmt

* Renamed tracing subscriber logger

* renamed to application logger installer

* book learner configuration update update

* fix typo

* unused import
2024-05-16 16:25:33 -04:00
Ahmed Yarub Hani Al Nuaimi 10737527d8
#1747 Upgrade Rust dependencies (#1748)
* #1747
Upgrade Rust dependencies

* Revert upgrade for tch

The update of tch on windows gives an error:

INTEL MKL ERROR: The specified module could not be found. mkl_vml_avx2.1.dll.
Intel MKL FATAL ERROR: cannot load mkl_vml_avx2.1.dll or mkl_vml_def.1.dll.

* Keep only .cargo/config.toml file which works with rust > 1.75

---------

Co-authored-by: Sylvain Benner <sylvain@benner.online>
2024-05-10 16:25:19 -04:00
Nathaniel Simard 5d959e2884
[Fusion] Support multi-precision fusion (#1718) 2024-05-02 18:22:56 -04:00
github-actions[bot] bb24f1be2a
Combined PRs (#1708)
* Bump serde from 1.0.198 to 1.0.199

Bumps [serde](https://github.com/serde-rs/serde) from 1.0.198 to 1.0.199.
- [Release notes](https://github.com/serde-rs/serde/releases)
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.198...v1.0.199)

---
updated-dependencies:
- dependency-name: serde
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump serial_test from 3.1.0 to 3.1.1

Bumps [serial_test](https://github.com/palfrey/serial_test) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/palfrey/serial_test/releases)
- [Commits](https://github.com/palfrey/serial_test/compare/v3.1.0...v3.1.1)

---
updated-dependencies:
- dependency-name: serial_test
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump hashbrown from 0.14.3 to 0.14.5

Bumps [hashbrown](https://github.com/rust-lang/hashbrown) from 0.14.3 to 0.14.5.
- [Changelog](https://github.com/rust-lang/hashbrown/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rust-lang/hashbrown/compare/v0.14.3...v0.14.5)

---
updated-dependencies:
- dependency-name: hashbrown
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump tokenizers from 0.15.2 to 0.19.1

Bumps [tokenizers](https://github.com/huggingface/tokenizers) from 0.15.2 to 0.19.1.
- [Release notes](https://github.com/huggingface/tokenizers/releases)
- [Changelog](https://github.com/huggingface/tokenizers/blob/main/RELEASE.md)
- [Commits](https://github.com/huggingface/tokenizers/compare/v0.15.2...v0.19.1)

---
updated-dependencies:
- dependency-name: tokenizers
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>

* Bump flate2 from 1.0.28 to 1.0.29

Bumps [flate2](https://github.com/rust-lang/flate2-rs) from 1.0.28 to 1.0.29.
- [Release notes](https://github.com/rust-lang/flate2-rs/releases)
- [Commits](https://github.com/rust-lang/flate2-rs/compare/1.0.28...1.0.29)

---
updated-dependencies:
- dependency-name: flate2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-04-29 07:52:56 -04:00
Sylvain Benner 1f8b5d3efb
[guide] Remove ambiguity lib vs. executable (#1649) 2024-04-26 15:42:02 -04:00
Guillaume Lagrange b7ab19ac71
Fix inverted epoch - iteration counts in valid progress (#1699) 2024-04-26 15:26:09 -04:00
Guillaume Lagrange ce2429eb10
Refactor element type to be decoupled from runtime (#1693) 2024-04-26 08:53:55 -04:00
Nathaniel Simard 886a1de235
Refactor/burn compute (#1580) 2024-04-23 13:05:15 -04:00
Sylvain Benner e303e31c8b
Bump next version of Burn to 0.14.0 (#1618) 2024-04-12 17:14:45 -04:00
Guillaume Lagrange 0cbe9a927d
Add learner training report summary (#1591)
* 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()
2024-04-11 12:32:25 -04:00
Guillaume Lagrange f3e0aa6689
Add multi-label classification dataset and metric (#1572)
* Add multilabel classification dataset

- Add MultiLabel annotation support
- Refactor de/serialize annotation with AnnotationRaw
- Add ImageFolderDataset::with_items methods

* Fix custom-image-classification example deps

* Add image_folder_dataset_multilabel test

* Do not change class names order when provided

* Add hamming score and multi-label classification output

* Add new_classification_with_items test

* Fix clippy suggestions

* Implement default trait for hamming score

* Remove de/serialization and use AnnotationRaw as type

* Fix clippy

* Fix metric backend phantom data
2024-04-05 13:16:46 -04:00
Louis Fortier-Dubois f5159b6d22
Refactor: split JitKernel and SourceKernel (#1569)
* refactor execute_dynamic into Execution

* minor change

* extension cfg

* jitkernel and sourcekernel

* add todo statement

* cleanup and docs

* update book

* fix server dependancy on compiler

* refactor into shader information

* refactor to compile shader once

* clippy

* clippy

* clippy

* fix doc

* fix doc

* fmt

* rename feature flag

* refactor

* All broked

* compile at the right time

* todo done

* all dynamic

* all dynamic in template too

* fmt

* fix ci

---------

Co-authored-by: nathaniel <nathaniel.simard.42@gmail.com>
2024-04-05 12:58:10 -04:00
Nathaniel Simard 1239d9bfa3
[Breaking] Make Tensor, Module, Optimizer !Sync + Refactor Autodiff (#1575) 2024-04-04 16:01:17 -04:00
Nathaniel Simard b0c5986d16
Feat/lazy init (#1539) 2024-04-02 10:13:35 -04:00
Nathaniel Simard efc3b2d243
[Breaking] add runtime options in wgpu init methods (#1505) 2024-03-28 12:44:38 -04:00
Alex Errant 5f7fd5952a
remove exit (#1543) 2024-03-27 16:36:59 -05:00
Nathaniel Simard b429cc39c1
Splitted the JIT stuff from the Wgpu stuff (#1417) 2024-03-06 11:23:53 -05:00
Guillaume Lagrange 4efc683df4
Upgrade to candle 0.4.1 (#1382)
* Fix python main entrypoint in book example

* Remove candle windows safeguards (#1178)

* Bump candle-core from 0.3.3 to 0.4.1

* Remove windows current known issue
2024-02-29 11:29:11 -06:00
Yu Sun 330552afb4
docs(book-&-examples): modify book and examples with new `prelude` module (#1372) 2024-02-28 13:25:25 -05:00
Louis Fortier-Dubois 576bb44bc8
Feat/autodiff/checkpoint ops (#1358) 2024-02-26 17:19:09 -05:00
Sylvain Benner 4427768570
[refactor] Move burn crates to their own crates directory (#1336) 2024-02-20 13:57:55 -05:00
Dilshod Tadjibaev 44266d5fd4
Make all struct CamelCase (#1316) 2024-02-15 13:00:37 -06:00
Dilshod Tadjibaev dfb739c89a
Rename GELU to Gelu (#1311)
* Rename GELU to Gelu

This is to follow Rust naming convention
2024-02-15 10:39:06 -06:00
Nathaniel Simard dfc65abd52
[Refactor] Just-In-Time Backend (#1280) 2024-02-12 12:15:07 -05:00
github-actions[bot] 03bbc64031
Combined PRs (#1295)
Combined PRs ➡️📦⬅️
 The following pull requests have been successfully combined on this PR:

Closes Bump thiserror from 1.0.56 to 1.0.57 #1293 Bump thiserror from 1.0.56 to 1.0.57
Closes Bump tokenizers from 0.15.1 to 0.15.2 #1292 Bump tokenizers from 0.15.1 to 0.15.2
Closes Bump bytemuck from 1.14.1 to 1.14.3 #1291 Bump bytemuck from 1.14.1 to 1.14.3
Closes Bump indicatif from 0.17.7 to 0.17.8 #1290 Bump indicatif from 0.17.7 to 0.17.8
2024-02-12 10:42:15 -05:00
Guillaume Lagrange 8f753b3aae
Update TORCH_CUDA_VERSION usage (#1284) 2024-02-10 12:01:45 -05:00
Guillaume Lagrange 88f5a3e88c
Add `burn::data::network::downloader` (#1283) 2024-02-10 11:54:33 -05:00
Nathaniel Simard a9b6dbc177
Enable burn fusion by default (#1223) 2024-02-08 11:28:02 -05:00
yurzhang 419e53bc42
Support signed value for `Tensor::arange` (#1238) 2024-02-07 09:33:01 -05:00
Guillaume Lagrange 57ee2ce717
Add `ImageFolderDataset` (#1232) 2024-02-02 16:32:38 -05:00
Sylvain Benner 4aa13d6b25
Bump Burn version to 0.13 (#1211) 2024-01-31 16:01:20 -05:00
Joshua Ferguson 4a70a0f8bc
renaming FloatTensor Ops, Primitives, and maybe functions (#1174) 2024-01-27 10:04:50 -05:00
Guillaume Lagrange b9bd42959b
Add vision/mnist dataset (#1176) 2024-01-25 16:16:39 -05:00
Dilshod Tadjibaev 0368409eb3
Add support for loading PyTorch `.pt` (weights/states) files directly to model's record (#1085) 2024-01-25 10:20:09 -05:00
unrenormalizable 4ca3e31601
Fixing jupyter nbs + ONNX IR (#1170) 2024-01-24 13:32:01 -05:00
Nathaniel Simard eaa4dc3207
Feat/recorder/custom device (#1165) 2024-01-23 13:05:41 -05:00
Sylvain Benner 9063701b53
Remove annoying cargo warning (#1108)
Package level profiles are ignored when workspace is enabled so
these lines are useless.

This commit removes them completely as panic, lto and rpath cannot be overridden from the workspace root.

Source: https://doc.rust-lang.org/cargo/reference/profiles.html#overrides

```
The precedence for which value is used is done in the following order (first match wins):

[profile.dev.package.name] — A named package.
[profile.dev.package."*"] — For any non-workspace member.
[profile.dev.build-override] — Only for build scripts, proc macros, and their dependencies.
[profile.dev] — Settings in Cargo.toml.
Default values built-in to Cargo.
Overrides cannot specify the panic, lto, or rpath settings.
```
2024-01-20 09:09:20 -05:00
Aasheesh Singh e3355524a2
Example/regression (#1150) 2024-01-19 21:28:38 -05:00
Nathaniel Simard ebb2306a6b
[burn-fusion] support multiple concurrent optimization streams (#1149) 2024-01-18 13:15:43 -05:00
Guillaume Lagrange 6079f98950
Fix missing ticks in Burn book and remove unused example dependency (#1144)
* Add missing ticks for triu and tril ops

* Removed example unused dependency
2024-01-16 09:03:17 -05:00
Guillaume Lagrange 535458e7b9
Add example for custom CSV dataset (#1129) 2024-01-11 09:24:25 -05:00
Nathaniel Simard f0e10f1499
Refactor/fusion optimization (#1104) 2024-01-06 14:22:50 -05:00
Kirill Mavreshko 97297538b1
Remove _devauto fuctions (#518) (#1110) 2024-01-06 13:36:34 -05:00
Sylvain Benner a4de93a39f
Fix import and type redefinitions in mnist example crate (#1100)
* Remove the double import for WgpuDevice
* Prioritize wgpu backend over the default ndarray when wgpu feature is set

This fixes `cargo bench --festures wgpu` as `--no-default-features` cannot be
used.
2024-01-02 12:47:44 -05:00
Nathaniel Simard b0a2b30ed1
Fix/wgpu/fusion (#1093)
* Fix fusion

* Real fix

* Fix
2023-12-22 16:53:19 -05:00
Kirill Mavreshko 1fd07fcb4a
Explicit device tensors (#1081) 2023-12-20 17:49:59 -05:00
Nathaniel Simard 042454a9db
Example: Update Text Classification (#1044)
* Example: Update Text Classification

* cargo fmt

---------

Co-authored-by: louisfd <louisfd94@gmail.com>
2023-12-18 08:42:07 -05:00