make TMVA NN in PrForward stateless (for master)
(copy&paste from !590 (merged))
The codegenerated TMVA MLP reader classes have some float *fWeights[5] to store the intermediate node values during the network evaluation. These are not threadsafe. Once making them local c-arrays std::arrays in the evaluation function helgrind is happy (test done in https://gitlab.cern.ch/pseyfert/tmva-threadsafety).
to be done/note:
-
check with @raaij that was the only reason for the mutex in the future branch -
check if I didn't break the computation -
remove mutex from PrForwardTool in future branch once this is made its way there -
check that the removal of two unused networks is okay for master