bool rising = threshold_value > baseline_value; // does not allow to use real baseline...
expmon/src/HexDataIO.py
- has implementation of methods to access psana data like it is done in hexanode/src/LMF_IO.cpp
for LMF file format.hexanode/examples/ex-05-sort.py
- example of LMF data processing in python equivalent to firmware example sort
hexanode/examples/ex-06-sort-graph.py
- example of LMF data processing with matplotlib graphicashexanode/examples/ex-07-sort-graph-data.py
- example of processing LCLS data with graphics - slow 30Hz, but 200Hz for cached data...hexanode/examples/ex-08-proc-data-save-h5.py
- acqiris waveform processing and saving in hdf5 fileexp=xpptut15:run=390 - amod3814, runs 85, see Publicly Available Practice Data
hexanode/examples/ex-07-sort-graph-data.py
2 = calibrate fu,fv,fw, w_offset - process data in this mode, adjust scale factors (using values printed at the end of data processing) and set parameters to get time sum peak at 0:
-138.5 // offset to shift timesum layer U to zero (in nanoseconds) -148.3 // offset to shift timesum layer V to zero (in nanoseconds) -135.5 // HEX ONLY: offset to shift timesum layer W to zero (in nanoseconds) 0.680 // scalefactor for layer U 0.6795 // scalefactor for layer V 0.702 // HEX ONLY: scalefactor for layer W |
Script hexanode/examples/ex-11-MPIDS-save-h5.py - generates hdf5 file using MPIDataSource and smalldata classes
Speed of processing test on psanaphi110 for entire sample of 260386 events:
Number of core (-n) | Processing time (sec) | Processing frequency (Hz) |
---|---|---|
2 | 2018 | 129 |
4 | 3613 | 72 |
8 | 708 | 367 |
16 | 597 | 430 |
16 | 1985 | 131 |
32 | 531 | 490 |
64 | 3001 | 131 |
Command to process 260368 events on psnehq (one on psanaq), sending one job in queue in order to not compete for the same data:
bsub -o log-mpi-n16-%J.log -q psnehq -n 16 mpirun python hexanode/examples/ex-08-proc-MPIDS-save-h5.py |
Number of cores (-n) | Processing time (sec) | Processing frequency (Hz) |
---|---|---|
1 | 6977 | 37 |
2 | 1931 | 135 |
4 | 1163 | 224 |
8 | 714 | 365 |
16 on psnehq on psanaq | 493 658 | 528 357 |
32 | 1046 732 | 249 356 |
64 | 288 329 | 904 791 |