Skip to content

[TMVA][SOFIE] Add ONNX InstanceNormalization operator#21331

Open
gluonparticle wants to merge 1 commit intoroot-project:masterfrom
gluonparticle:sofie-instance-norm
Open

[TMVA][SOFIE] Add ONNX InstanceNormalization operator#21331
gluonparticle wants to merge 1 commit intoroot-project:masterfrom
gluonparticle:sofie-instance-norm

Conversation

@gluonparticle
Copy link

InstanceNormalization Operator for SOFIE Inference Engine

Why

InstanceNormalization is widely used in modern computer vision models (e.g., Style Transfer, GANs).
Supporting this operator in the SOFIE ONNX parser expands the range of physics-adjacent ML models that can be converted to high-performance C++.


What

  • ROperator_InstanceNormalization.hxx
    New template implementing the $N, C, H, W$ normalization logic.

  • RModelParser_ONNX.cxx
    Registered the operator and added epsilon attribute parsing.

  • test_InstanceNormalization.cxx
    Added a unit test to verify the correctness of emitted C++ code.


Testing

  • Local build verified with -Ddev=ON using GCC 15.2.1.
  • Unit test test_instancenorm passed with [SUCCESS].

This commit implements the InstanceNormalization operator for the SOFIE inference engine.

- Implements ROperator_InstanceNormalization for C++ code generation.
- Updates RModelParser_ONNX to support operator registration and epsilon attribute parsing.
- Adds a unit test to verify generated code logic.
- Follows ROOT coding conventions and passes build with dev=ON.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant

Comments