Samsung / ONE

On-device Neural Engine

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[luci/service] Non constant begin/size for `CircleSlice` shape inference

seanshpark opened this issue · comments

There exist some cases where begin/size is not constant for CircleSlice Op.
If this Op itself has it's own shape, we can reuse this shape for this case.
Let's make a fix for this.

For our internal model, CircleSlice unknown shape

  • circledump shows T(2:24) FLOAT32 (1, 1, 1) (-1, -1, -1)
  • which makes succeeding Op (CircleConcatenation) fail in assertion check.

We can...
1/ leave the code as-is
2/ use ownshape only if ownshape has no unknown dimension

-> we can go with 2/ as characteristics are the same and will continue if own shape are all known.
-> but this will not fix our internal model

2/ use ownshape only if ownshape has no unknown dimension

I think this approach is a bit risky. If begin and size are not constant, that may indicate slice op's shape is dynamic, i.e., we should set dimensions to unknown. Can I look at the target model?

we should set dimensions to unknown.

yes, for the model, it's dynamic shape.

Can I look at the target model?

I've pinged you from internal repo.

With short discussion with @jinevening , when begin, size is not constant,
output would be dynamic shape. for this, current patch is needless.