Skip to content

[TMVA] Python module compatibility problems #15309

@guitargeek

Description

@guitargeek

Description

There are several known compatibility problems of PyMVA and SOFIE with common Python modules that need to be fixed:

1. Collisions of openblas because of SOFIE vs. NumPy

SOFIE can load an openblas version that is different from the one built in to NumPy, which can cause crashes for example on AlmaLinux 9 (the TMVA_SOFIE_RSofieReader.C tutorial test is deactivated for this reason).

Fixed by #18065

2. TensorFlow 2.16 compatibility for Python 3.12 support

PyMVA doesn't work with TensorFlow>=2.16 because of the change from Keras 2 to Keras 3 in TensorFlow (that the motivation for this version check in requirements.txt). TensorFlow 2.16 support is important, because it's the first version that supports Python 3.12.

Couldn't be addressed because we're not sure whether support for the newer TensorFlow versions is needed

3. Collisions of openblas because of tmva-cpu vs NumPy

The TMVA CPU backend (activated with tmva-cpu has the same problem as stated in 1., because it also uses openblas. That's the reason why tmva-cpu is deactivated on alma9.

Fixed by #18065

4. Collisions of std::regexp because of cppyy vs {torch, xgboost}

Collisions of std::regexp that comes with cppyy with the std::regexp in XGBoost or PyTorch. This is more of a cppyy issue (or an issue of the other modules), but mostly affects PyMVA tutorials, because that's where ROOT is imported together with machine learning libraries. When this is fixed, 872886b and 1bf3d5a can be reverted.

Fixed by PyTorch 2.7 and XGBoost 2.1

Related issues:

Metadata

Metadata

Assignees

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions