[FR]: Export graphs in NHWC format
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 2.4k
- Forks
- 315
- Avg merge
- 4d 11h
- Merged PRs (30d)
- 16
Description
Proposal Summary
Currently, Olive relies on Transformer optimizer within ORT to convert ops like conv and groupnorm from NCHW to NHWC. This can be done for a select category of models (like unet, decoder).
But this is a common problem across many different models, and it would be great to have a general solution that works irrespective of model category.
NHWC format is the most common format used by GPUs and other accelerators as the channels in the inner dimension can be accumulated upon. Thus having this ability to export models with channels last would be widely used.
What component(s) does this request affect?
- OliveModels
- OliveSystems
- OliveEvaluator
- Metrics
- Engine
- Passes
- Other
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
The issue names no files or tests; begin by locating Olive's model export flow and its integration with the ONNX Runtime Transformer optimizer. Review how NCHW-to-NHWC conversion currently handles convolution and group normalization for UNet and decoder models. Done means a general export path that supports channels-last graphs across model categories, with validation for representative models.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100