60 likes | 292 Views
Reconstruction Update. Last month First taste of compiled reco Next plans Central reconstruction Commit to repository and build Code speed-up Code reorganization Muon arm incorporation Intelligent lvl-3 Bitch and moan: ASCII files (again…) RunII progress
E N D
Reconstruction Update • Last month • First taste of compiled reco • Next plans • Central reconstruction • Commit to repository and build • Code speed-up • Code reorganization • Muon arm incorporation • Intelligent lvl-3 • Bitch and moan: • ASCII files (again…) • RunII progress • …if only you could see what I've seen with your eyes!
Recent Happenings setup_all(){ setup_bbc(); setup_zdc(); setup_…(); } • ‘Compiled reconstruction’ package (preco) written • Some subsystem programmers had preliminary look through code (after some needling…) • Incorporated into rebuilds • MACROS NO LONGER SUPPORTED (by me…) • Issues for simulation work? • 3 subsystems have told me they studied the code and the resulting DST. • In the translation there was lots of room for error. • It would be a shame if we found out too late I screwed up. Initialize tables and modules (~camDataIni/camDataPar) int process_event(Event *evt){ if(!init_done) { setup_all(); init_done = 1; } Blah, blah, blah … ; ana_bbc(); ana_zdc(); ana_…(); } Call modules (~camDataRun)
That ?!^#%@ rawpar.root It's too bad she won't live, but then again, who does? • TEC fellas update their code and (like good programmers) remove from CVS outdated code • rawpar.root needed this code to understand tables it held • Central arm reconstruction crashes • Fine, let’s just remove this outdated file – no one should be getting stuff from here anyway … should be in the database • Right? • Almost every subsystem was reading tables from this file… • Result: 3 weeks and 6 subsystems later we have a successful rebuild without rawpar.root • None of the solutions were all that complicated – they simply hadn’t been done. This doesn’t bode well for the health of our code…do you know what your code does???
The avoidance of external files… • Still going: [johnson@rcas2021 blah]$ /afs/rhic/phenix/software/calibration/data/LuxorLinker.pl 4 […] [johnson@rcas2021 blah]$ ls -l | wc 290 3181 47676 [johnson@rcas2021 blah]$ ls -l Dch* | wc 244 2684 40370 [johnson@rcas2021 blah]$ ls -l Dch*0000* | wc 229 2519 38213 [johnson@rcas2021 blah]$ ls -l *tec* *Tec* *tof* *Tof* *bbc* *Bbc* | wc ls: No match. 0 0 0 [johnson@rcas2021 blah]$ I've done... questionable things. Nothing the God of biomechanics wouldn't let you into heaven for.
Incorporating muon arms • muifuncs.C and muifuncs.h exist in preco/ • Very little debugging and no testing… • Muon code has been in some flux • Three amigos (Newby, Brooks, SCJ) incorporating this into preco this week. • Should be a straight forward step… • (Famous last words.) I've seen things you people wouldn't believe.Attack ships on fire off the shoulder of Orion.I watched C-beams glitter in the dark near the Tannhauser gate.All those moments will be lost in time.like tears in rain.Time to die.
A call to arms • Other issues: • Need to work through database issues with simulated data to make sure reconstruction is ‘identical’ to real data. • I’m still sorting it out with the subsystems…more news next week. • Would be nice to have clever reconstruction • As opposed to brute force reco of everything … software level triggers (I’ve pinged people here with no response – next I’ll bug the heavy PWG.) • Simulation should also be using the compiled reco • And, eventually, ‘compiled response’. • CFM agrees … needs some time and effort • Need subsystems to verify resulting DST’s • If you think I’ve been annoying already – just wait till next week.