apache / apache/tvm

[Bug] [ONNX Frontend] SparseConvolution and ScatterDense operators unsupported during import

Open
#20,049 0 comments 0 reactions 0 assignees View on GitHub
needs-triage type: bug
Dominant language
Python
Stars
13.7k
Forks
4k
Avg merge
2d 1h
Merged PRs (30d)
112

Description

## Expected behavior

I am trying to import NVIDIA BEVFusion ONNX models into TVM.

[testcase.zip](https://github.com/user-attachments/files/30374145/testcase.zip)

The ONNX models contain two custom sparse operators:

- SparseConvolution
- ScatterDense

I expect the TVM ONNX frontend to either:

1. Directly import these operators into corresponding Relax operators,
or
2. Provide a recommended extension mechanism for lowering these
operators into TVM-compatible representations.

## Actual behavior

Importing the ONNX models fails because the TVM ONNX frontend does not
recognize these operators.

Error:

OpNotImplemented:
The following operators are not supported for frontend ONNX:
SparseConvolution, ScatterDense

## Environment

- TVM: TVM v0.25.dev0
- OS: Ubuntu 22.04
- Python: 3.11

## Model information

Example:

testcase

[testcase.zip](https://github.com/user-attachments/files/30374155/testcase.zip)

.onnx

Graph structure:

Input
|
SparseConvolution x21
|
Add
|
Relu
|
ScatterDense
|
Output

The operators are custom ONNX operators generated by NVIDIA sparse
convolution implementation.

## Questions

1. Should SparseConvolution and ScatterDense be added as new Relax
operators?

2. Does TVM have an existing recommended extension mechanism for
importing non-standard ONNX sparse operators?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with testcase.zip and reproduce the ONNX frontend import failure for the model containing SparseConvolution and ScatterDense. Read the frontend's handling of unsupported operators and existing Relax import or extension paths; completion is not defined because the issue leaves open whether to add Relax operators or recommend an extension mechanism.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
compilers, machine-learning
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.