svtsim status and plans (WJA, 2000-12-19)
-
Bit-for-bit prediction of SVTD bank contents offline, givem SIXD and XFLD (now) or XTRP output (ASAP), within the Run II offline framework
-
Access to cluster quantities, road list, etc., for e.g. histogramming and deubgging
-
Capable of running stand-alone, given proper input
-
Modular, instantiable simulators, for flexibility, for board-level validation, for online use
-
Low memory use, fast, lean, ANSI C, so that it can run on crate CPUs as part of spy buffer monitoring
-
Retrieve and use state of SVT from standard CDF databases, so that we can emulate SVT performance both online during run and offline long after run, for any "reasonable" configuration of SVT
-
Ability to fall back to direct emulation of memory lookups is desirable for debugging, but not mandatory, and not typical use
-
Operate from Giovanni, Guram, Vladimir high-level files (same goal as for cold start)
-
Offline AC++ module (svtsim) exists, runs on output of Run II GEANT simulation
-
HF is same code used to test board;s TF is a fairly straightforward evolution of code used to test boards; XTF and Merger are quick, simple, minimal implementations by Bill; AMS+AMB and HB are Bill's low-resource evolutions of Alex's bit-for-bit emulators (which were perfect on their own but too resource-intensive when multiplied x12 in one job)
-
Checked against Alex's code for a few data files available
-
Adapted in early 2000 to work from .patt and .gcon files, instead of RAM images (but some simple constants (e.g. clustering parameters) still hard-coded at top-level--easy to generalize)
-
Gives reasonable dvx resolution (~35 um) for single muons around 2 GeV, when TF is included, running from .patt and .gcon files
-
Runs without crashing on Toni Munar's MC samples; analysis in progress by Toni
-
Currently cnnfig files specified by talk-tos, not databases
-
Evolve to match current state of high-level geom, patt, etc. files (currently not far from this)
-
Validate with C-run data against boards, Alex's code
-
Should validate against Giovannni's quick svtsim also, at least in terms of distributions
-
Include hooks for access to cluster data, etc.
-
Use databases, so that we can reproduce real data within trigsim
-
Make sure it compiles, runs, in VxWorks environment, for Spymon use (TF code was run, in July, on crate CPU)
-
Import, or link to, some of the "RAM gen" code, for emulating memories from high-levle files
-
Make sure approach used for AMS+AMB, HB is acceptablle to GP, AC, SB, LR, etc.
-
Work with Un-Ki (who plans to implement end-to-end data flow test) and Marco/Subir (SpyMon) to validate code against boards
-
Various cleaning, commenting
-
Plan for XTF (how much of its flexibility do we simulate?)
-
Since there is only one instance of XTF (only output is wedge-by-wedge), maybe direct emulation of lookups is reasonable in this case?
-
Any more offspring from the Cerri or Munar families available?