Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Summerchain new KF #107

Closed
wants to merge 2 commits into from
Closed

Summerchain new KF #107

wants to merge 2 commits into from

Conversation

tschuh
Copy link

@tschuh tschuh commented Nov 2, 2021

This PR does:

  • adds set function in Settings for removalType_ and doMultipleMatches_
  • updates TrackBuilderChannel::channelId using now TTTrackRef instead of TTTrack
  • extends TrackBuilderChannel to assign TTStubs from found TTTracks to channel
  • fixes wrong ifndef define in TrackBuilderChannelRcd
  • extends L1FPGATrackProducer to manipulate Settings::removalType_ and Settings::doMultipleMatches_ via python config
  • trackFindingTracklet::ProducerKFin uses now TTTrackRefs to get channelIds via TrackBuilderChannel
  • ProducerTrackBuilderCannel construct TrackBuilderChannel with Setup which is needed to assign stubs to channel
  • adds new File Customize_cff.py which allows no manipulate TrackletTracksFromTrackletEmulation to run configured as summerchain with new KF or full chain with new KF
  • removes L1HybridsTracks anf TrackletTracksFromTrackletEmulation I had added in the past to configure full chain with new KF since I switched to the use of a customize function
  • adds a map of which DTC links are used in summer chain configuration as python config
  • adds seed type names, seeding layer Ids per seed type and projection layers per seed type as python config
  • fixes firmware parameter in Setup and renables according sanity check related to stub z uncertainty
  • fixes wrong stub phi position in function Setup::stubPos which is used to get bit accurate Stub positions after DTC
  • add printout of number of TTCluster to DTC analzyer end job summary
  • updates DTC test_cfg.py to new default geometry
  • updates default Demonstrator_cfi.py parameter to run summer chain demonstration
  • fixes Demonstrator to use new ipbb sim executable 'run_sim'
  • fixes Demonstrator to add links to fill the quads with 0 data as ipbb sim and h/w test does
  • adds new File ProducerIRin which transforms the TTDTC object in the same f/w near format as used in KF, KFin (output only atm), KFout which enables the use of Demonstrator to compare hybrid s/w with f/w
  • add new File ProducerTBout which transforms found TTTracks in the same f/w near format as used in ProducerIRin which serves as input of KFin in future and enables the use of Demonstrator to compare tracklet pattern reco s/w with f/w
  • add new File SummerChain_cfg.py which runs Demonstrator configured to summer chain IR to TB where the first event is the same event as used firmware-hls/reducedConfigPR mem prints

@tomalin
Copy link
Collaborator

tomalin commented Nov 2, 2021

Please clarify in more detail above what this is doing. The existing code is already capable of writing .txt files corresponding to the digitized input of the IR & output of the TB. I assume that ProducerTBout is solving issue #101 ?
I assumed SummerChain_cfg.py adds the functionality to check on the fly if ModelSim & CMSSW agree. But this means that the FW to be used must be specified somewhere?
What is meant by "adding the Summer Chain cfg" of the new KF?
This is a very big PR, touching 28 files, so we need a much more detailed understanding of it before merging. I recommend a talk in next L1TrkAlgo meeting.

@tomalin
Copy link
Collaborator

tomalin commented Nov 3, 2021

Proposal:

  1. Separate bug fixes into small PR, that we can approve quickly.
  2. Consider if ProducerTBout can obtain digi data directly from digi data in Tracklet pattern reco (e.g. where it writes this data to .txt file), rather than by digitizing floating point output of tracklet pattern reco from TTTracks.
  3. The setting of params such as "doMultipleMatches_" for comparison with FW may be duplicating the change Anders proposes in his PR. Check once that is merged.
  4. Eliminate SummerChain_cfg.py, by adding a python boolean "isSummerChain" to demonstrator_cfg.py.
  5. We should not have duplicate constants. So if these two items above are duplicating constants, they need a rethink: (a) "adds a map of which DTC links are used in summer chain configuration as python config" (b) "adds seed type names, seeding layer Ids per seed type and projection layers per seed type as python config".
  6. Give talk(s) at L1TrkAlgo explaining need for ProducerIRin & ProducerTBout.
  7. Give talk at HLS or L1TrkAlgo meeting explaining your alternative way of doing FW vs SW comparison without txt file output. Clarify if we can produce txt files corresponding to output of KF stages. And if we can use your method of FW vs SW comparison for testing internal IR to TB stages.

@tschuh tschuh closed this Nov 4, 2021
@tschuh tschuh deleted the tschuh branch December 8, 2021 17:27
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.

2 participants