diff options
Diffstat (limited to 'docs/architecture.txt')
-rw-r--r-- | docs/architecture.txt | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/docs/architecture.txt b/docs/architecture.txt new file mode 100644 index 0000000..2b00ab3 --- /dev/null +++ b/docs/architecture.txt @@ -0,0 +1,18 @@ +Configuration +============= + x Pre-configured values in C-sources or shall everything be specified in the configuration? [ full-config, less prone to errors if all in one place ] + - Default header size can be computed using defined 'struct', but thats it. + - Do not try to compute maximum packet size, etc. + x Drop all computable parameters from the config [ with a few exceptions ] + - Should be possible to have network receiver without configuring the rest of the ROOF + - Should be possible to keep both dataset size in network config (to avoid rewriting) and the ROOF hardware configuration, but they should match + - n_streams vs. n_modules: having multiple streams per module in future + - samples_per_rotations vs. sample_rate / image_rate: Don't know what happens with Switch rate control, etc.? + x How precise we should verify configuration consistency? [ implement JSON schema at some point ] + x Propogate broken frames by default? Or just drop marking the missing frames with metadata. [ ingest when necessary ] + - I.e. provide filter removing the broken frame or the one generating when necessary (to ingest the uninterrupted flow in the standard UFO filters)? + - How to handle partially broken frames? + x How to handle data planes? [ metadata passes trough processors, but not reductors ] + - Metadata seems preserved while passing trough standard UFO filters. So, this is easiest way out. + - We can build a stand-alone subgraph for each plane, but this likely involves a full data copy. + - This probably OK for simple use case: "raw storage + visualization" as only two instances, but for could be too challenging for multi-plane analysis. |