-
Notifications
You must be signed in to change notification settings - Fork 99
Improve fairparamlist #944
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
Conversation
|
Okay. I reopen this one to comment of the comments. Thanks for information that it is meanwhile possible to changes the branch after creating the pull request. I was not aware of the possibility. |
Previously the parameters were stored in a TList. While this is okay for a small number of entries which are accessed by the function FindObject with the name of the object as argument this be becomes very slow when the list is large. Since for each entry of the list a search has to be performed this is time consuming when the list is long. To improve the performance a more suitable data structure (THashTable) was choosed to speed up the searching. The new data strcuture speeds up the initilization a CBM parameter container with roughly 101000 parameters by a factor of 5 from 145s to 27s. Since it is unavoidable to remove the searching it becomes obvious to limit the number of parameters in a parameter container to a small number.
For the proper functioning of the macro it is necessary to request the paramter container before calling the Init fucntion of the FairRun class. If this isn't done the parameter container is not properly filled but is only default constructed. Add comments to make intention of the macro more clear.
Remove data memmber fLogger* which is a remainder of old times. Use THashTable instead of THashTable*. Bump version of the ClassDef counter.
3731af1 to
0d7099f
Compare
|
Failing test should be unrelated. @dennisklein Is there a way o restart a test run on a specific node or is it needed to start the CI on all test machines? |
|
Only a restart per test stage is possible. but we have only one stage, that means effectively to restart all. |
Improve performance of FairParamList.
Detailed description is found in the commit message.
devbranch