Skip to content
HeinAtCERN edited this page Jan 31, 2014 · 7 revisions

Migration steps from cmstoolsac3b to varial

  1. create package: varial

  2. move good stuff there, make import proxies in cmstoolsac3b/init.py

  3. make analysis.py

  4. and analysis.cache

  5. and analysis.clear_cache

  6. and analysis.permanent_cache

  7. and config

  8. move stuff from settings to analysis and config, make proxies or getattr

  9. rename tool to worker (WorkerBase, Worker, WorkerSequence, …), make PostProcProxies

  10. make CmsRunProcess a WorkerSubprocess(Worker)

  11. make controller a WorkerSubprocessSequence

  12. move monitor (remove the qt code)

  13. break backward compatibility:

    1. remove instanciation from postprocchain => must be instanciated already!
    2. requiring controller to be set up by user

Dump

  • post_proc_tool: use init only for init and make _reset with initial state
    • branch on afs
    • too much clutter… need to refine what is copied and what not.
  • use JSON for wrapper serialization!!
  • let controller manage postproc exec (with check for needed samples) (make info files about execution status) * (store tool args for resetting) (“postproc” should wrap cmsRun execution => controller is a tool, multiple cfgs possible, think about folder structure)
  • Wrapper: deepcopy()
  • samples & postproctools: remove class input, only instances.
  • analysis backup after every run with roberts technique
  • postproctool with Table base class
  • postproc and everything: make analysis object, like process in cmssw. (could also replace the config module)
  • FSStackPlotter: result: Chi2 summary of plotted stacks (maybe only into the wrapper).
  • Photon selection presel: make one filter for all presel. (so presel doesn’t have to be repeated.)
  • Do profiling and learn Cython
  • post_proc_dict => analysis.storage and cmssw-like InputTags!!
  • wrappers: merging of metadata: “blabl&asdf&...”
  • postProcXX.reset => save “_initial_state” in starting(...) AND pickle _initial_state and compare for reuse (naice!) (tough!) (checkout metaclasses to record just what is set in init()) (see special branch)
  • operations.merge: check lumi, but do not normalize by lumi
  • gen.filter with callable => Naice! => itertools.ifilter
Clone this wiki locally