tracel-ai / burn

Burn is a new comprehensive dynamic Deep Learning Framework built using Rust with extreme flexibility, compute efficiency and portability as its primary goals.

Home Page:https://burn.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Example "image-classification-web" does not build

wamli opened this issue · comments

Describe the bug
Trying to build the example image-classification-web either from main branch or from release/0.13 fails with the following error:

error[E0599]: no variant or associated item named `default` found for enum `kernel::matmul::base::MatmulStrategy` in the current scope
   --> crates/burn-jit/src/ops/float_ops.rs:149:42
    |
149 |         matmul(lhs, rhs, MatmulStrategy::default())
    |                                          ^^^^^^^ variant or associated item not found in `MatmulStrategy`
    |
   ::: crates/burn-jit/src/kernel/matmul/base.rs:11:1
    |
11  | pub enum MatmulStrategy {
    | ----------------------- variant or associated item `default` not found for this enum
    |
    = help: items from traits can only be used if the trait is implemented and in scope
    = note: the following trait defines an item `default`, perhaps you need to implement it:
            candidate #1: `std::default::Default`

To Reproduce
Steps to reproduce the behavior:

  1. Go to 'examples/image-classification-web'
  2. execute ./build-for-web.sh

--> See the build process fail with the error mentioned above.

Expected behavior
Successfull build

Desktop (please complete the following information):

  • OS: Ubuntu 22.04
  • rustc: 1.79.0
  • cargo: 1.79.0

Additional context
There is a default() defined in feature autotune as

#[cfg(not(feature = "autotune"))]
impl Default for MatmulStrategy {
    fn default() -> Self {
        MatmulStrategy::Tiling2d(Tiling2dConfig::default())
    }
}

However, the autotune feature as well as other default features do not seem to be activated. This may be due to core-jits membership in the workspace.

Thanks for flagging! I'll look into it.

Thanks! Your PR fixes the problem.