Skip to content
Snippets Groups Projects

Draft: HLT1 lines to handle Error Banks from each subdetector

Closed Alessandro Scarabotto requested to merge error_banks_line into master

HLT1 line which checks error banks inside a specific subdetector, if an error bank is found the event is flagged. Lines are now general and can be used for any subdetector HLT1ErrorBanks+subdetector name.

Test made using mep files took 23/05/2022 (/group/hlt/data_hlt1/2022-05-23/LHCb_BU_29.mep) At the moment using only Muon and Calo raw banks as input:

Screenshot_2022-06-09_at_19.45.03

Screenshot_2022-06-09_at_19.45.12

Details on the code:

TO DO (in another MR):

  • add functionality to run on Rich1, Rich2 and HCal banks
  • make monitoring plots for each line (show error bank types: subdetector specific and DAQ errors)
  • if DAQ error = 90, 91 or 94 : read TELL40 + failing link numbers from raw bank and make it available to shifter (who can make an action, for example detach the failing link). Each TELL40 has 24 links.

Replaces !766 (closed)

FYI: @raaij @dovombru @mfontana

Edited by Andre Gunther

Merge request reports

Approval is optional

Closed by Roel AaijRoel Aaij 1 year ago (Jan 2, 2024 9:52am UTC)

Merge details

  • The changes were not merged into master.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • 26 PROPERTY(post_scaler_t, "post_scaler", "Post-scaling factor", float) post_scaler;
    27 PROPERTY(pre_scaler_hash_string_t, "pre_scaler_hash_string", "Pre-scaling hash string", std::string);
    28 PROPERTY(post_scaler_hash_string_t, "post_scaler_hash_string", "Post-scaling hash string", std::string);
    29 };
    30
    31 struct error_banks_line_t : public SelectionAlgorithm, Parameters, Line<error_banks_line_t, Parameters> {
    32 __device__ static bool select(const Parameters& ps, std::tuple<const bool> input);
    33
    34 __device__ static unsigned offset(const Parameters& parameters, const unsigned event_number)
    35 {
    36 return event_number * parameters.dev_raw_input_offsets[0];
    37 }
    38
    39 __device__ static unsigned input_size(const Parameters& parameters, const unsigned)
    40 {
    41 return parameters.dev_raw_input_offsets[0];
    • Resolved by Daniel Hugo Campora Perez

      I'm not sure it's the best approach to do this on the device, because there is no math at all. Doing this on the host would mean doing the loop over the raw banks and the check for error banks on the host and copying the resulting mask to the device to be used as input to a trivial line.

      The throughput doesn't seem to be affected, so this may be academic. What do you think @dcampora?

  • Roel Aaij requested review from @raaij

    requested review from @raaij

  • added 1 commit

    • 1223f3b3 - remove hardcoded banks in Provider.

    Compare with previous version

  • mentioned in issue Moore#448 (closed)

  • mentioned in issue Moore#449 (closed)

  • added 152 commits

    Compare with previous version

  • added 56 commits

    Compare with previous version

  • added 1 commit

    Compare with previous version

  • added 28 commits

    • 08ecc767 - Sort banks in MDF events
    • b51a7720 - Adapt selections to direct use of ODIN
    • d8f9e23b - Update integration algorithms to include bank sizes
    • 8a28a19b - WIP: Use ODIN::data instead of ODIN in device memory
    • ab135d93 - Also build host libraries with ODIN_WITHOUT_GAUDI
    • 8a4eb83c - Fixed formatting
    • 7d568c11 - Propagate types
    • eb7fae60 - HLT1 line error banks (only CALO)
    • c3919e83 - add provider just for bank types
    • 17369dfa - creating new HLT1 line for error banks (with raw event model)
    • adcaf3d6 - rebased
    • 94c708fe - generalize HLT1ErrorBanks line (can be configured per subdetector).
    • 0e33470c - Fixed formatting
    • a92a746e - fix gpu build
    • e79c6b6f - Fixed formatting
    • 4e1f9b15 - remove filter (to be integrated in Saverio's MR)
    • 3347d78d - rebase hlt1 error banks line
    • 78f7f61d - Fixed formatting
    • 353493a4 - rebase cleanup
    • 314ee4e7 - cleanup
    • 9e41bc6e - GPU fix: binary search
    • 82c74bf4 - Fixed formatting
    • f794b8dd - make error bank list as std::array
    • e1a018a9 - Fixed formatting
    • a31a0a82 - remove hardcoded banks in Provider.
    • 133bb56b - move error banks sequence.
    • d3006c19 - add mdf reading.
    • 49165274 - fix build rebase.

    Compare with previous version

  • added 63 commits

    Compare with previous version

  • Dorothea Vom Bruch mentioned in merge request !927 (merged)

    mentioned in merge request !927 (merged)

  • added 41 commits

    Compare with previous version

  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Loading
  • Please register or sign in to reply
    Loading