Remove rob set caching from DataProviderTools
I remove the rob sets that prevent repeat decoding from the DataProvidersTools, in the trigger 'views' system we want to use identifiableContainer caches to avoid repeat decoding based on the per hash level. Currently we are seeing inconsistent results and believe the rob set caching is causing conflict.
@oda @goetz @stsuno @sutt @zgrout Can we remove this rob set check? Do you foresee any problems in other areas?
Merge request reports
Activity
Hi @abarton,
I checked the SCT changes. You simply removed all the rob set check. This looks fine.
But I remembered my bug of the seeded mode of the TGC decoder in Run 1. I had worked on TGC.
You don't need to understand this problem. But the point is that the seeded mode is complicated. I didn't understand the seeded mode fully and my implementation of the TGC decoder was wrong. The bug of TGC was discovered and fixed (the seeded mode of the TGC decoder was correctly implemented). Then, the implementations of MDT, CSC, RPC were found to be wrong too.
Are you sure the implementation is correct? Your removal of the rob set check means you may decode the same rob multiple times, right? Does it waste some CPU time? Ot, is it unavoidable?
Cheers, Susumu
Are you sure the implementation is correct?
No, not yet, we are trying to identify the sources of inconsistent output we are seeing and it seems this rob set is conflicting with our other checks. If there are no complaints, we can remove them and investigate further, we can also see the performance effects and reimplement optimizations later if needed (in a way that is more compatible with views).
Your removal of the rob set check means you may decode the same rob multiple times, right?
We have a new mechanism in the idc to avoid duplicate hash element decoding. I don't know how this compares in terms of efficiency to avoiding rdos but this should give use more granularity.
Edited by Adam Edward Bartonadded InnerDetector master review-pending-level-1 labels
CI Result FAILUREAthena AthSimulation externals cmake make required tests optional tests Full details available at NICOS MR-26692-2019-09-23-02-28
Athena: number of compilation errors 0, warnings 0
AthSimulation: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 3500]added 219 commits
-
ec3499fc...18da00e2 - 218 commits from branch
atlas:master
- 28158666 - Remove rob set caching from DataProviderTools
-
ec3499fc...18da00e2 - 218 commits from branch
CI Result FAILUREAthena AthSimulation externals cmake make required tests optional tests Full details available at NICOS MR-26692-2019-09-23-20-41
Athena: number of compilation errors 0, warnings 0
AthSimulation: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 3517]This merge request affects 5 packages:
- InnerDetector/InDetEventCnv/BCM_RawDataByteStreamCnv
- InnerDetector/InDetEventCnv/PixelRawDataByteStreamCnv
- InnerDetector/InDetEventCnv/SCT_RawDataByteStreamCnv
- InnerDetector/InDetEventCnv/TRT_RawDataByteStreamCnv
- Trigger/TrigValidation/TrigUpgradeTest
Adding @oda ,@hartj ,@kzoch ,@ibragimo ,@jpanduro as watchers
added Trigger label
CI Result SUCCESSAthena AthSimulation externals cmake make required tests optional tests Full details available at NICOS MR-26692-2019-09-24-15-35
Athena: number of compilation errors 0, warnings 0
AthSimulation: number of compilation errors 0, warnings 0
For experts only: Jenkins output [CI-MERGE-REQUEST-CC7 3547]added review-approved label and removed review-pending-level-1 label
mentioned in commit 1de014b3
added sweep:ignore label
mentioned in merge request !26836 (merged)
109 #endif 110 } else { 111 StatusCode sc = m_decoder->fillCollection(&**rob_it, rdoCont); 112 if (sc != StatusCode::SUCCESS) { 113 if (DecodeErrCount < 100) { 96 StatusCode sc = m_decoder->fillCollection(&**rob_it, rdoCont); 97 if (sc != StatusCode::SUCCESS) { 98 if (m_DecodeErrCount < 100) { 114 99 if (msgLvl(MSG::INFO)) msg(MSG::INFO) << "Problem with BCM ByteStream Decoding!" << endmsg; 115 } else if (100 == DecodeErrCount) { 100 } else if (100 == m_DecodeErrCount) { 116 101 if (msgLvl(MSG::INFO)) msg(MSG::INFO) << "Too many Problems with BCM Decoding. Turning message off." << endmsg; 117 } 118 DecodeErrCount++; 102 } 103 m_DecodeErrCount++;