-
Notifications
You must be signed in to change notification settings - Fork 4.6k
Description
This issue is a simplified version of SegmentLinking#75, meant to list and keep track of the various upcoming developments for the LST algorithm that were either brought up during the PR #45117 review or planned by the development team. The order of the tasks below roughly corresponds to their priority/timescale, as estimated by the developers.
-
Integrate accumulated algorithm developments held back during integration PR review (Devel changes that need to be rebased SegmentLinking/cmssw#117).
More details
-
Update LST README, printouts and minor fixes:
- Covered partially by Improvements to the README SegmentLinking/cmssw#55. A follow up to accommodate the developments made in Total removal of sdl/SDL SegmentLinking/cmssw#72 will be needed.
-
Deal with the configurability of the pT threshold:
-
-
LST in HLT
More details
-
Changes in LST conditions data
More details
- CMSSW Integration of LST #45117 (comment):
I would prefer if the possibility of overriding the conditions data settingLST_BASEorTRACKLOOPERDIRwould be disabled when building this code inside CMSSW. - Remove lst_INF
- CMSSW Integration of LST #45117 (comment):
LSTESData::geometryDataDirneeds a check thatgetenv("CMSSW_SEARCH_PATH")is not null.
- CMSSW Integration of LST #45117 (comment):
-
LST workflow
More details
- CMSSW Integration of LST #45117 (comment):
Respect new relval_Run4.py structure. - CMSSW Integration of LST #45117 (comment):
Decide if we want different workflows for different backends. - CMSSW Integration of LST #45117 (comment):
Implement a "GPU vs CPU" workflow. - CMSSW Integration of LST #45117 (comment):
Fill seed stop info when LST runs (expected by DQM/validation).
- CMSSW Integration of LST #45117 (comment):
-
Make general-purpose functions widely available in CMSSW
More details
-
The plan would be to move all general-purpose functions (work started in More work on Constants and removal of vector copies SegmentLinking/cmssw#71):
- Follow up PR with general functions.
- Follow up PR moving LST to use those and delete custom implementations.
-
Rewrite the loops in the kernels using uniform_elements, independent_groups, independent_group_elements, etc.
More details
-
CMSSW Integration of LST #45117 (comment):
Experiment withmake_workdiv. -
CMSSW Integration of LST #45117 (comment):
No need to set the grid size to 1, the alpaka execution will run the blocks one after the other automatically. You can set the grid size to 1 - the difference will be in how the kernel are executed over the elements. Either way, I think whatever approach you choose should be documented. -
CMSSW Integration of LST #45117 (review)
Links to specific comments
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
-
-
Rewrite kernels with proper, concrete dimensions instead of templated types
More details
-
CMSSW Integration of LST #45117 (review):
Links to specific comments
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
- CMSSW Integration of LST #45117 (comment)
-
-
Improvements to the data format interface between LST and CMSSW
More details
-
CMSSW Integration of LST #45117 (review):
Define the LST inputs as PortableCollections, and pass them (or their Views) to the LST algorithm.Links to specific comments
- CMSSW Integration of LST #45117 (comment):
Fill a host SoA directly inLSTPhase2OTHitsInputProducer, copy it to device, and avoid the 6 intermediate copies of thestd::vectors.
- CMSSW Integration of LST #45117 (comment):
-
CMSSW Integration of LST #45117 (review):
Define the LST output as PortableCollections, and pass them (or their Views) to the LST algorithm.Links to specific comments
- CMSSW Integration of LST #45117 (comment):
Performance-wise best would be to move them inLSTProducer::produce(), that would require theLST::hits()etc to either return a mutable reference, or a value that was moved-from in thehits()method itself. - CMSSW Integration of LST #45117 (comment):
Eventually (or ideally) we'd want to issue thealpaka::memcpy()calls to copy the data from device to host inacquire(), and have the destination host memory accessed only inproduce().
- CMSSW Integration of LST #45117 (comment):
-
-
Construct LST condition data from the existing EventSetup info
-
Improvements in storing and using "magic numbers
More details
-
Miscellaneous improvements
More details
- CMSSW Integration of LST #45117 (comment):
Try std::binary_search(data, data + ndata, search_val) from C++20. - CMSSW Integration of LST #45117 (comment):
Review uint4 usage.
- CMSSW Integration of LST #45117 (comment):
-
Improvements to ESProducer
More details
- CMSSW Integration of LST #45117 (comment):
Make it more clear which members are on the device memory and which are on the host memory. Suggest to consider moving all data that are used only in host code into a separate ES data product.
- CMSSW Integration of LST #45117 (comment):