Skip to content

Ship the rust autodiff/gpu components to enable std::autodiff & std::offload #276

Description

@ZuseZ4

Comment:

Hi! I'm a Rust compiler dev working on the Rust modules for automatic differentiation and gpu support in the Rust standard library. Those are experimental modules, so for the foreseeable future they will be only on nightly Rust, until enough users had a chance to test them and we are happy with the results.

Most of the researchers I work with prefer to call their Rust code from Python, e.g. https://github.com/ChemAI-Lab/molpipx/. It would be nice to be able to distribute those packages via conda/pypi/.. and I was told this would be the right repository to ask, since we need nightly, not stable Rust.

Both modules are a bit special, since their implementation relies on libEnzyme for autodiff, and libOffload for gpu support. As of today we build libEnzyme in the Rust CI for Linux (x86_64, Aarch64), Apple (Aarch64), and Windows (mingw-llvm-{x86_64, Aarch64}). You could already download those, but for convenience we are just adding rustup support, so you can run rustup install autodiff. Over the next days we will then do the same for libOffload.

It seems like your setup is already quite modularized, would you be open to adding two more components to enable the autodiff and gpu offload module? Happy to look into the code myself, but I wanted to get some confirmation first.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions