cms-L1TK / firmware-hls

HLS implementation of the tracklet pattern reco modules of the Hybrid tracking chain
15 stars 24 forks source link

Add alternate TP LUT reader for SW compile time/memory #306

Closed jasonfan393 closed 10 months ago

jasonfan393 commented 11 months ago

PR (developed with the help of @mlarson02 ) adds an alternate way for the c simulation and future SW to read large LUT arrays in the TP, which have been causing long compile times and memory usage.

For a single L1D1 TP csim compile time goes 190 -> 76 seconds. Memory usage is reduced from ~13 Gb to ~4 Gb, with similar improvements in the future SW.

SYNTHESIS macro is used to avoid this file reader for synthesis tasks

jasonfan393 commented 11 months ago

CI failing due to issue in TC - fixing now

jasonfan393 commented 10 months ago

currently has some issues related to CMSSW side, don't merge yet

tomalin commented 10 months ago

@jasonfan393 tihis is failing PR because funtion getInvtLUT is not defined inside TrackletCalculator_calculate_LXLY.h. I suspect the latter file forgot a #include for TrackletProcessor_parameters.h, where this function is defined?