Project

General

Profile

Bug #6394

Verify that association query objects are created outside tight loops

Added by Gianluca Petrillo almost 7 years ago. Updated over 4 years ago.

Status:
Closed
Priority:
Normal
Category:
Other
Target version:
-
Start date:
09/22/2014
Due date:
10/24/2014
% Done:

100%

Estimated time:
(Total: 14.00 h)
Occurs In:
Experiment:
LArSoft
Co-Assignees:
Duration: 33

Description

Query objects (e.g. FindMany) do a lot of work on creation.
They should be created outside tight loops and with as input all the objects we want the associations of.


Subtasks

Bug #7048: FindManyP() usage in DataScanner moduleClosedKazuhiro Terao

Bug #7049: FindManyP() usage in ShowerCheater, ShowerFinder and ShowerReco modulesClosedGianluca Petrillo

Bug #7050: FindManyP() usage in Track3DKalmanSPS, Track3Dreco and TrackAna modulesClosedEric Church

Bug #7051: FindManyP() usage in Calorimetry moduleClosedWesley Ketchum

Bug #7052: FindManyP() usage in AggregateVertex, VertexCheater, TrackCheater and EventMaker modulesClosedBrian Rebel

Bug #7053: FindManyP() usage in EventDisplay libraryRejectedBrian Rebel

Bug #7054: FindManyP() usage in ShowerAngleCluster moduleRejectedKazuhiro Terao

Bug #7055: FindManyP() usage in PrimaryVertexFinder moduleClosedJonathan Asaadi

Bug #7057: FindManyP() usage in TrackStitcher moduleClosedEric Church

Bug #7058: FindManyP() usage in LineMerger moduleClosedGianluca Petrillo

Bug #7059: FindManyP() usage in ClusterPCA moduleClosedGianluca Petrillo

Bug #7060: FindManyP() usage in CosmicTracker moduleClosedGianluca Petrillo

History

#1 Updated by Gianluca Petrillo almost 7 years ago

  • Assignee set to Gianluca Petrillo

#2 Updated by Lynn Garren almost 7 years ago

  • Status changed from New to Assigned

#3 Updated by Gianluca Petrillo over 6 years ago

  • Category set to Other
  • % Done changed from 0 to 10
  • Estimated time set to 80.00 h

The following classes contain FindMany/FindManyP objects inside loops:

larreco
  1. ClusterPCA
  2. LineMerger
  3. ShowerAngleCluster
  4. EventMaker
  5. ShowerCheater
  6. ShowerFinder
  7. ShowerReco
  8. TrackAna
  9. CosmicTracker
  10. Track3DKalman
  11. Track3Dreco
  12. TrackAna
  13. TrackCheater
  14. TrackStitcher
  15. AggregateVertex
  16. PrimaryVertexFinder
  17. VertexCheater
larana
  1. Calorimetry
lareventdisplay
  1. AnalysisBaseDrawer
  2. RecoBaseDrawer
uboonecode
  1. AnalysisTree
  2. DataScanner

I will address a very few of them personally.
The authors will be contacted to fix the code.

#4 Updated by Gianluca Petrillo over 6 years ago

  • Experiment LArSoft added
  • Experiment deleted (-)

At a second look, AnalysisBaseDrawer is actually fine.

Single issues have been opened and assigned to the authors, to better track the different components.

#5 Updated by Gianluca Petrillo over 5 years ago

  • Status changed from Assigned to Closed

Closing for lack of activity.
I consider the degree of solution we reached to be satisfactory.
No place with relevant issues persists. The remaining few instances would not be a problem as they are not in tight loops.
Furthermore, upstream optimization of the query objects would dramatically mitigate such problems if they existed.

Also available in: Atom PDF