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

[WebNN] Support negative steps for slice #22871

Merged
merged 5 commits into from
Nov 26, 2024
Merged

Conversation

shiyi9801
Copy link
Contributor

@shiyi9801 shiyi9801 commented Nov 18, 2024

Slice with negative steps can be emulated by reverse+slice.

@shiyi9801
Copy link
Contributor Author

@Honry @fdwr PTAL, thanks :)

@shiyi9801
Copy link
Contributor Author

It suddenly occurred to me that maybe other negative steps can also be supported with reverse+slice... I'll figure it out tomorrow

@guschmue guschmue added the ep:WebNN WebNN execution provider label Nov 18, 2024
@shiyi9801 shiyi9801 changed the title [WebNN] Support slice steps == -1 [WebNN] Support negative steps for slice Nov 19, 2024
@shiyi9801
Copy link
Contributor Author

Updated. @Honry @fdwr PTAL, thanks!

Copy link
Contributor

@Honry Honry left a comment

Choose a reason for hiding this comment

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

Thanks @shiyi9801, LGTM % a nit.

Copy link
Contributor

@Honry Honry left a comment

Choose a reason for hiding this comment

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

👍

guschmue
guschmue previously approved these changes Nov 20, 2024
@guschmue
Copy link
Contributor

/azp run ONNX Runtime Web CI Pipeline,Windows GPU CI Pipeline,Linux Android Emulator QNN CI Pipeline

@guschmue
Copy link
Contributor

/azp run Linux CPU CI Pipeline,Linux CPU Minimal Build E2E CI Pipeline,Linux GPU CI Pipeline,Linux GPU TensorRT CI Pipeline,Linux OpenVINO CI Pipeline,Linux QNN CI Pipeline,MacOS CI Pipeline,Windows ARM64 QNN CI Pipeline,Windows CPU CI Pipeline

@guschmue
Copy link
Contributor

/azp run Windows GPU TensorRT CI Pipeline,onnxruntime-binary-size-checks-ci-pipeline,orttraining-linux-ci-pipeline,orttraining-linux-gpu-ci-pipeline,orttraining-ortmodule-distributed,Windows x64 QNN CI Pipeline,Big Models

Copy link

Azure Pipelines successfully started running 2 pipeline(s).

@guschmue
Copy link
Contributor

/azp run Windows GPU CUDA CI Pipeline,Windows GPU DML CI Pipeline,Windows GPU Doc Gen CI Pipeline

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

Copy link

Azure Pipelines successfully started running 4 pipeline(s).

Copy link

Azure Pipelines successfully started running 9 pipeline(s).

fdwr
fdwr previously approved these changes Nov 21, 2024
Copy link
Contributor

@fdwr fdwr left a comment

Choose a reason for hiding this comment

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

👍

fdwr
fdwr previously approved these changes Nov 21, 2024
@shiyi9801
Copy link
Contributor Author

Hi @fdwr @guschmue Sorry I added an extra ";" in last commit, please help approve again, thanks!

Copy link
Contributor

@fdwr fdwr left a comment

Choose a reason for hiding this comment

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

👍

@fdwr
Copy link
Contributor

fdwr commented Nov 26, 2024

/azp run ONNX Runtime Web CI Pipeline,Windows GPU CI Pipeline,Linux Android Emulator QNN CI Pipeline

@fdwr
Copy link
Contributor

fdwr commented Nov 26, 2024

/azp run Linux CPU CI Pipeline,Linux CPU Minimal Build E2E CI Pipeline,Linux GPU CI Pipeline,Linux GPU TensorRT CI Pipeline,Linux OpenVINO CI Pipeline,Linux QNN CI Pipeline,MacOS CI Pipeline,Windows ARM64 QNN CI Pipeline,Windows CPU CI Pipeline

@fdwr
Copy link
Contributor

fdwr commented Nov 26, 2024

/azp run Windows GPU CUDA CI Pipeline,Windows GPU DML CI Pipeline,Windows GPU Doc Gen CI Pipeline

@fdwr
Copy link
Contributor

fdwr commented Nov 26, 2024

/azp run Windows GPU TensorRT CI Pipeline,onnxruntime-binary-size-checks-ci-pipeline,orttraining-linux-ci-pipeline,orttraining-linux-gpu-ci-pipeline,orttraining-ortmodule-distributed,Windows x64 QNN CI Pipeline,Big Models

Copy link

Azure Pipelines successfully started running 2 pipeline(s).

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

Copy link

Azure Pipelines successfully started running 4 pipeline(s).

Copy link

Azure Pipelines successfully started running 9 pipeline(s).

@fdwr fdwr merged commit afbb539 into microsoft:main Nov 26, 2024
77 checks passed
guschmue pushed a commit that referenced this pull request Dec 2, 2024
Slice with negative steps can be emulated by reverse+slice.
fdwr pushed a commit that referenced this pull request Dec 10, 2024
A follow-up of [[WebNN] Support negative steps for
slice](#22871 (comment)).
Slice op is emulated by reverse+slice when steps < 0 so
`SliceOpBuilder::HasSupportedInputsImpl()` should also check the
supported data types of reverse.

---------

Co-authored-by: Wanming Lin <wanming.lin@intel.com>
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
Slice with negative steps can be emulated by reverse+slice.
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
A follow-up of [[WebNN] Support negative steps for
slice](microsoft#22871 (comment)).
Slice op is emulated by reverse+slice when steps < 0 so
`SliceOpBuilder::HasSupportedInputsImpl()` should also check the
supported data types of reverse.

---------

Co-authored-by: Wanming Lin <wanming.lin@intel.com>
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
Slice with negative steps can be emulated by reverse+slice.
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
A follow-up of [[WebNN] Support negative steps for
slice](microsoft#22871 (comment)).
Slice op is emulated by reverse+slice when steps < 0 so
`SliceOpBuilder::HasSupportedInputsImpl()` should also check the
supported data types of reverse.

---------

Co-authored-by: Wanming Lin <wanming.lin@intel.com>
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
Slice with negative steps can be emulated by reverse+slice.
ankitm3k pushed a commit to intel/onnxruntime that referenced this pull request Dec 11, 2024
A follow-up of [[WebNN] Support negative steps for
slice](microsoft#22871 (comment)).
Slice op is emulated by reverse+slice when steps < 0 so
`SliceOpBuilder::HasSupportedInputsImpl()` should also check the
supported data types of reverse.

---------

Co-authored-by: Wanming Lin <wanming.lin@intel.com>
tarekziade pushed a commit to tarekziade/onnxruntime that referenced this pull request Jan 10, 2025
A follow-up of [[WebNN] Support negative steps for
slice](microsoft#22871 (comment)).
Slice op is emulated by reverse+slice when steps < 0 so
`SliceOpBuilder::HasSupportedInputsImpl()` should also check the
supported data types of reverse.

---------

Co-authored-by: Wanming Lin <wanming.lin@intel.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ep:WebNN WebNN execution provider
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants