Skip to content

Conversation

@fuhlig1
Copy link
Member

@fuhlig1 fuhlig1 commented Apr 6, 2020

Improve performance of FairParamList.
Detailed description is found in the commit message.

@fuhlig1 fuhlig1 added this to the v18.4 milestone Apr 6, 2020
@fuhlig1 fuhlig1 requested a review from MohammadAlTurany April 6, 2020 10:49
@dennisklein dennisklein changed the base branch from master to dev April 6, 2020 10:52
@fuhlig1 fuhlig1 closed this Apr 6, 2020
@dennisklein dennisklein mentioned this pull request Apr 6, 2020
@fuhlig1 fuhlig1 reopened this Apr 6, 2020
@fuhlig1
Copy link
Member Author

fuhlig1 commented Apr 6, 2020

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.

fuhlig1 added 3 commits April 6, 2020 14:56
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.
@fuhlig1 fuhlig1 force-pushed the improve_fairparamlist branch from 3731af1 to 0d7099f Compare April 6, 2020 12:58
@fuhlig1
Copy link
Member Author

fuhlig1 commented Apr 7, 2020

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?

@dennisklein
Copy link
Member

Only a restart per test stage is possible. but we have only one stage, that means effectively to restart all.

@dennisklein dennisklein merged commit 05d1a5e into FairRootGroup:dev Apr 7, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants