New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Avoid unnecessary introspection for MVAComputer #5975
Conversation
A new Pull Request was created by @wmtan for CMSSW_7_3_X. Avoid unnecessary introspection for MVAComputer It involves the following packages: CondFormats/PhysicsToolsObjects @apfeiffer1, @nclopezo, @cerminar, @cmsbuild, @diguida, @rcastello, @ggovi, @mmusich can you please review it and eventually sign? Thanks. |
+1 On Fri, Oct 24, 2014 at 1:52 AM, cmsbuild notifications@github.com wrote:
Thanks, |
+1 |
CondFormats/PhysicsToolsObjects -- Avoid unnecessary introspection for MVAComputer
Did you make sure this will not be merged in ROOT6 as Bill asked? |
NOTE: Do not merge this pull request into CMSSW_7_3_ROOT6_X, as there will be merge conflicts.
This pull request is for code commonality between CMSSW for ROOT 5 and ROOT 6.
In the ROOT6 IB, unnecessary introspection has been removed from MVAComputer, to save memory and increase performance, as this particular use of introspection causes run-time header parsing.
This pull request makes the equivalent change in the CMSSW ROOT 5 IB, for code commonality.
The introspection was used to invoke the copy constructor of classes derived from VarProcessor.
In less than an hour, I was able to replace this ugly introspection with a virtual clone() function, which can be called directly.