Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DRAFT] Support custom GRU #11840

Closed
wants to merge 4 commits into from

Conversation

BalyshevArtem
Copy link
Contributor

This draft supports custom GRU, adds conversion in circle2cirlce as new pass, and adds new kernel in onert-micro

ONE-DCO-1.0-Signed-off-by: Artem Balyshev [email protected]

Artem Balyshev added 3 commits October 27, 2023 17:35
This commit adds optimization for While operation by checking condition graph and don't run it.

ONE-DCO-1.0-Signed-off-by: Artem Balyshev <[email protected]>
@BalyshevArtem BalyshevArtem added the DRAFT A draft issue or PR for sharing one's current working status and discussion. label Oct 31, 2023
@BalyshevArtem BalyshevArtem marked this pull request as draft October 31, 2023 10:35
@BalyshevArtem BalyshevArtem added PR/NO TEST Tell CI to not run test PR/NO MERGE Please don't merge. I'm still working on this :) labels Oct 31, 2023
@chunseoklee
Copy link
Contributor

@BalyshevArtem Can we extend this to multiple GRU layer pattern like While-while-while-strideslice ?

@BalyshevArtem
Copy link
Contributor Author

BalyshevArtem commented Nov 10, 2023

Can we extend this to multiple GRU layer pattern like While-while-while-strideslice ?

I think yes
Could you please provide tensorflow or tflite model to obtain such graph?

@chunseoklee
Copy link
Contributor

@BalyshevArtem Let's try to merge this PR into master. For this, we need to do :

  • extend to multiple GRU layer pattern like While-while-while-strideslice (skip if it can be merged w/o this extension)
  • value check for Custom GRU op

@@ -46,6 +46,8 @@ class Module final
public:
void add(std::unique_ptr<loco::Graph> &&g);

void remove(size_t idx);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it possible to make a copy of module without this idx subgraph and replace it?

@@ -34,6 +34,7 @@ class CircleOptimizer final
{
enum Algorithm
{
FuseUnrolledGRUAsCustomGRU,
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

plz add to bottom not on the top

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually, it is first draft, I will post new one with changes only in compiler part.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
DRAFT A draft issue or PR for sharing one's current working status and discussion. PR/NO MERGE Please don't merge. I'm still working on this :) PR/NO TEST Tell CI to not run test
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants