I am confused about why we haven’t defined the RNN operators(e.g., LSTM, GRU) in Relay IR, from the code now each frontend unrolled these operators to lots of basic operators, from below posts I have known they can be unrolled because the length of these cell are fixed at the compiled time.
How to use Relay Control Flow? - Questions - Apache TVM Discuss
Auto-scheduling for lstm operator - Questions - Apache TVM Discuss
BYOC can’t map these RNN operators, because they are unrolled. So I want to know why don’t we defined these operators in Relay and do the unroll thing in a pass, so BYOC can offload them to external tools? And the unroll logic only need to be implemented once instead of each frontend.
@masahi, @junrushao, @jroesch, @jwfromm, @haichen
Thanks.