You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

To support a shared DRP.  One process that understands all the resources that are in-use and prevents conflicts.  Two possibilities:

  • make the collection software long-lived and supports learning about multiple partitions/platforms
    • cpo currently leaning this way: "fewer moving parts
  • add a layer on top of the collection code

Requirements

  • a service:  two cnf files can have same node/kcu/pgplane but would be prevented from starting if another cnf already has it allocated.  
  • which nodes/kcu/pgplanes are allocated
    • don't want to start the process until we know there is node/pgplane for it.  an ordering problem.
  • deallocated
  • crash
  • killPartition

"Risk Management" thought: if the sharing doesn't work we can buy DRP nodes and fibers to keep .cnf files orthogonal (obviates the need for the BOS).  Expensive and harder to maintain.

Considerations:

  • BOS (dynamically changes connections, of devices of the same type (fim, opal, hsd))
  • DRP Nodes
  • PGP Lanes
  • procmgr ports ("platforms").  don't want two people using platform 2.
  • readout groups (only matter within a single XPM, maybe doesn't matter with per-hutch XPM idea)
  • special networks connections:
    • xtcav
    • bld (cmp001, cmp014).  currently not special, but maybe not true in the future (1MHz needs a clean network)
    • connection to ATCA timing system (ctl001).  needed to run all pyxpm
  • which firmware runs in which node
  • tprtrig
  • front-end machines (e.g. daq-tmo-hsd-01, daq-tmo-andor-01) would NOT be a managed resource (not shared drp).  BOS does need to know about them.
  • ffb connections? drp-neh-ctl002 doesn't have an FFB, but is part of the shared drp.
  • pgp remoteId information could be useful
  • two case complexity: e.g. wave8's from different hutches can trivially share a drp node (as long use different pgplanes).   but opal's cannot (so currently would need to allocate all lanes)
  • need to think about 2 KCU case

Thoughts:

  • could we get rid of the idea of platforms?
    • an example of how one could do that:  could statically allocate ports for each 

What Resources are Managed/Shared

  • No labels