Brief notes from a mtg on Oct. 4 2021 with Mona, Elliott, Seema, Iris, Seshu, Chris

Link to psana2 user-documentation is here:  psana

  • psana is now "dgram-type" driven (a.k.a "multirun" concept)
  • "broadcast": calibration constants, configurations, 1Hz "slow update" transitions 
  • support destination/filter/srv callbacks
  • support step scans
  • support environment store (motor positions, temperatures broadcast in slow-update transitions
  • psana now uses prometheus to gather performance-monitoring data
  • psana supports four modes of running: single-file, shmem, serial, parallel (will also support running in daq/drp in the future)
    • legion only needs to support parallel mode, but shouldn't interfere with the other modes
  • not ideal: keep the callback interface for legion, vs. loop interface for psana?
  • ideally run all tests: but could be difficult with two interfaces (callback/loop)

Legion Planning Meeting

April 26, 2022 with Mona, Elliott, Seema, Chris

We discussed 7 issues:

  1. SlowUpdate support
  2. Which interfaces to support?  (callbacks? low-level psiter? event loops?)
  3. filter/destination callbacks on EB cores
  4. small hdf5 production support ("SRV" nodes)
  5. MTIP
  6. detectors that integrate over time (e.g. 5kHz camera with 1MHz high-speed-digitizer)
  7. Step support

Point (2) was discussed last since it depends on the ideas generated from conversations from the other points.

Conclusions:

  1. Legion will support SlowUpdate using a "region" for EB cores.  Legion behavior will continue to be supported at runtime via the env variable PS_PARALLEL.  This will require changes to SMD0 and EB.
  2. Legion will support callbacks (high-level interface) and psiter (low-level interface).  mpi will stick with loops for now (will not support callback interface).  Elliott has ideas for an improved callback interface (more of a map/reduce like spark) but that will be optional depending on Seema's time.
  3. Legion may require changes to support filter/destination callback
  4. Need to factorize mpi send/receive out of hdf5 handling code
  5. Use low-level psiter interface, and also move to Detector interface (currently using raw data interface to access)
  6. We think this will work for legion by reusing the psana behavior
  7. Need to add "beginstep/endstep" callbacks and perhaps put the step information in the SlowUpdate "region"?

As time permits Seema will do the legion-related work with advice from Mona, Elliott, Chris.  Legion may not support all features of psana (depending on time constraints) but we will try.

  • No labels