felix-tohost - FELIX central data acquisition application

    Usage:
      felix-tohost [options --device=<device>... --cid=<cid>... --dma=<id>...]

    General Options:
        --bus-dir=DIRECTORY          Write felix-bus information to this directory. [default: ./bus]
        --bus-groupname=NAME         Use this groupname for the bus. [default: FELIX]
        --cid=<cid>...               CID (Connector Ids) to set in FID (Felix ID). Can be used multiple times. [default: device]
        --did=<did>                  DID (Detector Id) to set in FID (Felix ID). [default: 0]
    -d, --device=<device>...         Use FLX device DEVICE. [default: 0]
        --error-out=<fifo>           Write error information to a UNIX FIFO
        --free-cmem                  Free previously booked cmem segment by name-<device>-<dma>
        --iface=<iface>              Send data to the interface. [calculated: use --ip value]
    -i, --ip=<ip>                    Publish data on the ip address IP. [default: libfabric:127.0.0.1]
    -b, --netio-pagesize=<size>      NetIO page size in Byte. [default: 65536]
    -B, --netio-pages=<size>         Number of NetIO pages. [default: 256]
        --is-monitoring              Sends monitoring data to "is"
        --prometheus-port=<port>     Sets Prometheus port and sends monitoring data to Prometheus
        --stats-out=<fifo>           Write periodic statistics data to a UNIX FIFO
        --stats-period=<ms>          Period in milliseconds for statistics dumps. [default: 1000]
    -?, --help                       Give this help list
    -v, --verbose                    Produce verbose output
        --verbose-bus                Produce verbose output for bus
    -V, --version                    Print program version
        --netio-type=<type>          Event loop type to use. [default: netio3] {netio3|netio-next}
        --daq-network-mode=<mode>    Network mode to use for DAQ. [default: RDMA] {RDMA|TCP}
        --dcs-network-mode=<mode>    Network mode to use for DCS. [default: TCP] {RDMA|TCP}
        --vid=N                      VID (Version Id) to set in FID (Felix ID) [default: 1]

    ToHost Options:
    -D, --dma=<id>                  Use DMA descriptor ID. [default: 0]
    -c, --cmem=SIZE                 CMEM buffer size in MB. [default: 512]
        --daq-unbuffered            DAQ unbuffered mode: zero-copy readout (max O(100) kHz rate per link, useful for >O(kB) messages)
    -T, --netio-timeout=SIZE        NetIO timeout in ms for DAQ traffic. [default: 2]
    -w, --netio-watermark=SIZE      NetIO watermark in Byte for DAQ traffic. [default: 57344]
        --daq-send-blocks           Send entire blocks instead of decoded messages for DAQ data.
        --dcs-iface=IFACE           Use this network interface for DCS traffic. [calculated: use libfabric on main iface]
        --dcs-pages=SIZE            DCS Number of NetIO pages. [default: 64]
        --dcs-pagesize=SIZE         DCS NetIO page size in Byte. [default: 1024]
    -s, --dcs-port=PORT             Publish DCS data on port PORT. [calculated: 53500 + 10*device + dma]
        --dcs-size-limit=LIMIT      Truncate DCS messages when size is above LIMIT in bytes [default: 65536]
        --dcs-timeout=SIZE          DCS NetIO timeout in ms. [default: 1]
        --dcs-unbuffered            DCS unbuffered mode.
        --dcs-watermark=SIZE        DCS NetIO watermark in Byte. [default: 972]
        --dcs-send-blocks           Send entire blocks instead of decoded messages for DCS data.
    -l, --l1id-check=FORMAT         Check L1ID sequence. Formats: 1=TTC2H only, 2=LATOME, 3=FMEMU, 4=FELIG, 5=NSWVMM, 6=NSWTP.
                                    Slow for unbuffered DAQ. [default: 0]
    -M, --max-chunk-size=LIMIT      Maximum chunk size in Bytes for DAQ traffic. Larger chunks are truncated. [calculated from network page size]
    -p, --port=PORT                 Publish DAQ data on port PORT. [calculated: 53100 + 10*device + dma]
    -P, --poll-period=us            Polling instead of interrupt-driven readout with the given poll period in microseconds [default: 1000]
        --threads=THREADS           Number of threads per DMA to read DAQ links [default: 1]
        --ttc-netio-pages=SIZE      TTC Number of NetIO pages. [default: 64]
        --ttc-netio-pagesize=SIZE   TTC NetIO page size in Byte. [default: 1536]
        --ttc-netio-timeout=SIZE    TTC NetIO timeout in ms. Not necessary as TTC2H buffers are flushed at end-of-block. [default: 0]
        --ttc-netio-watermark=SIZE  TTC NetIO watermark in Byte. [default: 1248]
    -t, --ttc-port=PORT              Publish TTC2H data on port PORT. [calculated: 53300 + 10*device + dma]
        --ttc-send-blocks           Send entire blocks instead of decoded messages for TTC data.

Report bugs to <https://its.cern.ch/jira/projects/FLXUSERS>.

