You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tvm.apache.org by GitBox <gi...@apache.org> on 2022/12/13 07:49:31 UTC
[GitHub] [tvm] vvchernov opened a new issue, #13604: [Bug][TOPI][Relay] TOPI should never depend on Relay
vvchernov opened a new issue, #13604:
URL: https://github.com/apache/tvm/issues/13604
The issue origin is the problem described in the [PR](https://github.com/apache/tvm/pull/13596). During solution it became clear that topi and relay depend on each other. I've gotten the name of the issue from @junrushao statement: "Ideally, TOPI should never depend on Relay in the first place". Intuitively it looks correct. If you know any issues, docs, discussions which approve this TVM design, please reference on it here.
Nevertheless there are many imports of Relay from TOPI (see list below). But the majority of scripts use TIR and TE only (relay.Expr and different relay ops are used for op description in comments for the sake of clarity). Possibly it is a concept to use relay in topi for simplifying (and it should be separated from topi somehow for correct design) or somebody used it once and it became bad practice.
I do not think that it is small problem. If Junru Shao is right, it is problem in TVM design. It means that the list should be refactored step by step and relay using on topi side should be prohibited.
### Expected behavior
TOPI should not depend on Relay
### Actual behavior
There are many python scripts from tvm/topi/ where relay is imported explicitly:
adreno/conv2d_alter_op.py
armc_cpu/bitserial_conv2d.py
armc_cpu/conv2d_alter_op.py
armc_cpu/qnn_alter_op.py
bifrost/conv2d.py
cuda/conv2d_alter_op.py
cuda/conv3d_alter_op.py
cuda/sparse.py
cuda/tensorcore_alter_op.py
generic/conv2d.py
hexagon/conv2d_alter_op.py
hexagon/dense_alter_op.py
intel_graphics/conv2d_alter_op.py
mali/conv2d.py
nn/conv2d_transpose.py
nn/conv3d_transpose.py
sparse/utils.py
x86/conv2d_alter_op.py
x86/dense_alter_op.py
x86/math_alter_op.py
Possibly there are more scripts which imports relay implicitly through other imports. I did not check it.
### Environment
It is environment-independent issue
### Steps to reproduce
Details of particular problem reproducing can be seen in [PR](https://github.com/apache/tvm/pull/13596)
### Triage
* topi
* relay
* tune:meta_schedule
I add meta-scheduler as tag due to the particular issue appeared there. Possibly it is not directly related to this issue but it clarifies context and interections between TOPI and Relay
cc @junrushao @masahi @elvin-n @jwfromm
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@tvm.apache.org.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
[GitHub] [tvm] junrushao commented on issue #13604: [Bug][TOPI][Relay] TOPI should never depend on Relay
Posted by GitBox <gi...@apache.org>.
junrushao commented on issue #13604:
URL: https://github.com/apache/tvm/issues/13604#issuecomment-1349637142
To share some more context: the reason that most of those files are depending on relay at the moment is that they are expected to be used by a pass "AlterOpLayout", and thus they are engineered in a way less compatible with our underlying assumption
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@tvm.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [I] [Bug][TOPI][Relay] TOPI should never depend on Relay [tvm]
Posted by "tqchen (via GitHub)" <gi...@apache.org>.
tqchen closed issue #13604: [Bug][TOPI][Relay] TOPI should never depend on Relay
URL: https://github.com/apache/tvm/issues/13604
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@tvm.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org