relax
relax copied to clipboard
Temp repo for prototyping relax(relay next), the effort will be upstreamed. We use the wiki pages on this repo to host design docs.
I am new to using and developing Relax and I am well aware of the ongoing efforts to develop more tutorials, but I would like to make an observation about...
I ran the Hexagon CI tests on Relax [HEAD](https://github.com/tlc-pack/relax/commit/4329af78eb1dc4c4ff8a61d3bf39aa4034e9cb2a). I expected all tests to pass since they are not using Relax at all. However, 5 tests failed according to CI...
For the fast prototyping, I'm planning to implement following functionalities in Python and convert them into C++ once it becomes mature. - [x] Tuning pass - [ ] Extend the...
CI docker image [tlcpack/ci-cpu:v0.82](https://github.com/tlc-pack/relax/blob/relax/Jenkinsfile#L50) does not have torch installed. This blocks PR https://github.com/tlc-pack/relax/pull/135 in which I wanted to add a test using torch. See [failure logs here](https://jenkins.tvm.octoml.ai/blue/organizations/jenkins/tlcpack-relax/detail/PR-135/12/pipeline).
## Motivation: Currently, training in TVM is still an open problem with different implementations/frameworks: Relay's higher-order differentiation [pass](https://github.com/apache/tvm/blob/64e94abcbb9578bf2ace2e6e1e1e618bd09d2605/python/tvm/relay/transform/transform.py#L792), TE [auto-differentiation](https://discuss.tvm.apache.org/t/rfc-bring-in-tensor-expression-autodiff/5987), [Tsunami](https://www.tvmcon.org/wp-content/uploads/2022/01/16-14_58LT-Altan_Haan-Tsunami__Training_in_TVM_with_Relay.pdf), and [PyTorch AOTAutograd](https://www.youtube.com/watch?v=KpH0qPMGGTI). However, there is no de-facto way...
Like we briefly discussed durning the open development meeting, I think it would be great to start our brainstorming what we want to enable in Relax. I sketched some of...
This thread outlines the list of type and shape invariants in Relax, and hopes to generate discussions about checked_type_ of `call_packed`, introducing `ObjectType`, and adding `ret_shape` to `relax::Function`. ## General...
**Core infrastructure: ExprVisitor / ExprMutator** - For simple rewriting passes (e.g., FMA-rewrite, CallTIR-rewrite), one can get the post-written Call directly from the old Call. ```cpp class EwiseFMARewriter : public ExprMutator...
- [x] Call external packed function (e.g., cudnn) - [x] Minimum build - [ ] Annotate and rewrite cc @ZihengJiang
Talking about my own experience debugging some of the passes. It would be very helpful to support a printer which allows printout and highlight a fragment of the IR ##...