Skip to content

Smarter compiler / support non-static ops in eager mode #286

Description

@sebffischer

I really dislike that some code becomes much less ergonomic because of the static shape restriction.

What we can actually do is:

  1. Support non-static ops in eager mode.
  2. Crate a smarter jit(). The way torch inductor handles some ops is via graph breaks. I.e. if I were to do something like jit(\(x) mean(unique(x)), then it could factor this out into two exectuables, the eager one that just calls unique() and then the second executable that calls the mean.

Of course, we still suffer from re-compiles, but I currently don't really see how we can easily get around this. IREE is the best option but does not have enough adoption.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions