microsoft / microsoft/onnxruntime
[Feature Request] Increase type-support for comparison operators in the CPUExecutionProvider
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 21.9k
- Forks
- 4.2k
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 184
Description
### Describe the feature request
[Currently](https://github.com/microsoft/onnxruntime/blob/main/docs/OperatorKernels.md) type support for ```Equal```, ```Less```, ```Greater```, ```LessOrEqual``` and ```GreaterOrEqual``` is really limited in the ```CPUExecutionProvider```. Some of the types that are missing are ```uint```-s, ```int8``` and ```int16```.
### Describe scenario use case
This feature is part of the onnx specs, and some of the types are only missing in the ```CPUExecutionProvider```. In addition, operators returning ```Tensor(bool)``` are important in mask-indexing.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with docs/OperatorKernels.md and the CPUExecutionProvider entry point to compare the documented type support for Equal, Less, Greater, LessOrEqual, and GreaterOrEqual. Done means the missing unsigned integer, int8, and int16 cases are supported by the provider and boolean tensor results work for mask-indexing; the issue does not name implementation files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- backend, machine-learning
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100