Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Add a heuristic time offset to data products to allow crude calculation of wallclock time

Aperta
#42 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
cpp, python
Ambito
data

Direzione di ricerca

Inizia leggendo le definizioni di TriggerRecordHeader e FragmentHeader nel repository dataformats, quindi esamina FragmentReceiver, DataWriter e hdf5_dump.py in dfmodules. Conferma dove è disponibile il primo TriggerRecord e come vengono rappresentati attualmente i timestamp. Il lavoro è completato quando il campo dell’header concordato viene valorizzato in modo coerente per una run e hdf5_dump.py visualizza timestamp leggibili per gli esseri umani per TriggerRecords e Fragments.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Here are some proposals. I will check that all of them are acceptable:

  1. this change will only affect the dataformats and dfmodules repos
  2. a new field should be added to the TriggerRecordHeader
    • its data type should be timestamp_t
    • its name should be heuristic_time_offset ???
    • should we also add this field to the FragmentHeader so that Fragments could have their timestamps reasonably interpreted without needing an accompanying TRH?
  3. in the dfmodules package, the primary change will be to populate this field. This change could be made in the FragmentReceiver or the DataWriter. The algorithm for populating this field should be something like the following:
    • within each run, when the first TriggerRecord is created or received, look up the current Linux system time in number of seconds since the Epoch, convert that number of seconds into DUNE clock ticks (e.g. multiply by 5e7 for a 50 MHz clock), and determine the difference between that number of clock ticks and the trigger_timestamp that is stored in the TriggerRecordHeader. This value is the heuristic_time_offset for all TRs in the run, and this value should be stored in the TRH::heuristic_time_offset field of all TRs in the run.
  4. another change in the dfmodules package will be to update the hdf5_dump.py script to make use of this new field to produce a human-readable string for timestamp(s) in each TR and Fragment, as needed
Lingua principale
C++
Stelle
3
Fork
5
Merge medio
1g 18h
PR unite (30g)
4

Preparare l'ambiente

  • Nessun Dockerfile né file Docker Compose
  • Ha un modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di DUNE-DAQ/dfmodules

Tutte le issue di DUNE-DAQ/dfmodules

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.