[v640][tmva][sofie] Run PyTorch ONNX export in a separate process in tutorial#22634
Merged
Conversation
User-facing code like tutorials should be nicely formatted, in particular avoiding non-standard indentations with three spaces that can annoy users when copy-pasting code. (cherry picked from commit e46f77c)
Keras and PyTorch still cause some warnings in a few places where they use deprecated features from their dependencies. We need a mechanism to silence these warnings to that our tests will run with warnings as errors, while also making sure we catch when the warnings don't happen anymore, so we can remove the boilerplate code for warnings silencing. (cherry picked from commit 18a30fa)
In particular, replace `raiseError` which is only available in pytest fixtures. (cherry picked from commit 945cb26)
The tutorial exported a PyTorch model to ONNX and then parsed it with SOFIE in the same process. `torch.onnx` and ROOT's SOFIE ONNX parser are both linked against protobuf, but generally against different versions, so loading them into one process causes a symbol clash and aborts. Move the model creation, training and ONNX export into a small standalone script that runs in its own Python process via subprocess, before ROOT is imported, so the two protobuf copies are never loaded together. The parent detects success by the presence of the generated .onnx file and raises a RuntimeError if it is missing. (cherry picked from commit ce08cbb)
8b2ca6f
into
root-project:v6-40-00-patches
31 of 34 checks passed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Backport of: