Skip to content

Conversation

@fuhlig1
Copy link
Member

@fuhlig1 fuhlig1 commented Apr 6, 2020

Merge request against the proper branch.

Checklist:

fuhlig1 added 2 commits April 6, 2020 12:24
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.
@fuhlig1 fuhlig1 added this to the v18.4 milestone Apr 6, 2020
@fuhlig1 fuhlig1 requested review from MohammadAlTurany and rbx April 6, 2020 11:05
@dennisklein
Copy link
Member

#944 was fine, too. You can click on the edit button in the top and change the base branch since a couple of months (which I did there).

@rbx
Copy link
Member

rbx commented Apr 6, 2020

Yeah, let's reopen that, then don't need to duplicate existing comments.

@fuhlig1 fuhlig1 closed this Apr 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants