Skip to content

PSA: Integration with IREE for multi-target and whole model compilation #373

@nicolasvasilache

Description

@nicolasvasilache

Hi everyone,

Some of us have been doing a recent push to better integrate some of our findings with IREE recently.

The ongoing prototype integration is currently split across 3 branches:

  • iree-llvm-sandbox/iree-integration is the branch where the integration with IREE happens. It depends on:
  • iree/sandbox branch, which sees the following restructurings:
    • the LinalgExt dialect is folded back into iree/llvm-external-projects where it was originally forked from
    • the transform dialect is transitioning through iree/llvm-external-projects so that IREE can canary such transforms in a larger scaler system while upstreaming to MLIR core is occurring (see Alex's RFC)
  • iree-llvm-fork/sandbox is the source of truth for IREE + sandbox

With this setup we are currently able to compile and run IREE with transformations specified in by the transformation dialect. As a consequence, iree-llvm-sandbox/iree-integration compiles with IREE and exposes a simple parallel nevergrad-based search.

In the near-future, we are hoping to extend more of these mechanisms to better iterate with IREE itself (and not just a minimal Numpy API). This should give us a few interesting opportunities:

  • compile and run on different devices (mobile, NVIDIA-GPU, mobile GPU) via IREE's AoT (and not just the current JIT CPU)
  • extend search to be able to execute and time on those different devices
  • start saving and shipping known good transformations with IREE for different devices.

These will open up new exciting work areas.

Until the transition is complete however, some rough edges are expected.

Thanks for reading!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions