Просмотр исходного кода

Update docs and config for refinement detail path

master
Jan Svabenik 8 часов назад
Родитель
Сommit
13d07eb0b3
3 измененных файлов: 55 добавлений и 4 удалений
  1. +5
    -0
      PLAN.md
  2. +5
    -4
      README.md
  3. +45
    -0
      config.yaml

+ 5
- 0
PLAN.md Просмотреть файл

@@ -96,6 +96,9 @@ Neue Konfig-Teile einführen:
- `resources.*`
- optionale `profiles.*`

Zusatz:
- `refinement.detail_fft_size` für einen eigenständigen Detailpfad (Refinement-FFT) neben der Surveillance-FFT

Wichtig:
- Abwärtskompatibilität zur bisherigen Config möglichst erhalten
- bisherige Felder weiterhin nutzbar
@@ -110,6 +113,7 @@ Wichtig:
- zunächst mit CPU-/bestehendem GPU-Extraction-Pfad implementieren
- Detector bleibt vorerst Kern der Candidate-Erzeugung
- Refiner sitzt danach explizit als eigener Schritt in der Pipeline
- Refinement-Workitems mit expliziten Ausführungsparametern (FFT/Span/Stage)

### E. Pipeline-Orchestrierung modularisieren
- `runDSP()` entflechten
@@ -122,6 +126,7 @@ Wichtig:
- track
- present
- record
- Gemeinsame Arbitration-/Budget-Sicht für refinement/record/decode vorbereiten

### F. Dokumentierte Betriebsprofile
- initiale Profile definieren, z. B.:


+ 5
- 4
README.md Просмотреть файл

@@ -70,15 +70,16 @@ Edit `config.yaml` (autosave goes to `config.autosave.yaml`).
- `surveillance.display_fps` — preferred presentation cadence for clients/UI
- `refinement.enabled` — enables explicit candidate refinement stage
- `refinement.max_concurrent` — refinement budget hint
- `refinement.detail_fft_size` — FFT size for refinement/detail path (defaults to surveillance analysis FFT)
- `refinement.min_candidate_snr_db` — floor for future scheduling decisions
- `refinement.min_span_hz` / `refinement.max_span_hz` — clamp refinement window span (0 = no clamp)
- `refinement.auto_span` — use mod-type heuristics when candidate bandwidth is missing/odd
- `resources.prefer_gpu` — GPU preference hint

**Operating profiles (wideband)**
- `wideband-balanced`: multi-resolution, 4096 FFT, refinement span 4000-200000 Hz
- `wideband-aggressive`: multi-resolution, 8192 FFT, refinement span 6000-250000 Hz
- `archive`: record-forward bias, higher record/decode budgets
- `wideband-balanced`: multi-resolution, 4096 surveillance/detail FFT, refinement span 4000-200000 Hz
- `wideband-aggressive`: multi-resolution, 8192 surveillance/detail FFT, refinement span 6000-250000 Hz
- `archive`: record-forward bias, higher record/decode budgets, 4096 detail FFT
- `digital-hunting`: digital-first priorities and decode bias
- `resources.max_refinement_jobs` — processing budget hint
- `resources.max_recording_streams` — recording/streaming budget hint
@@ -158,7 +159,7 @@ go build -tags sdrplay ./cmd/sdrd
- `GET /api/gpu`
- `GET /api/pipeline/policy`
- `GET /api/pipeline/recommendations`
- `GET /api/refinement` → latest refinement plan/windows snapshot (includes `window_stats`, `queue_stats`, `decision_summary`, `decision_items`, levels, request/context/budgets/work_items)
- `GET /api/refinement` → latest refinement plan/windows snapshot (includes `window_stats`, `queue_stats`, `decision_summary`, `decision_items`, `arbitration`, levels, request/context/budgets/work_items)

### Signals / Events
- `GET /api/signals` → current live signals


+ 45
- 0
config.yaml Просмотреть файл

@@ -30,6 +30,7 @@ surveillance:
refinement:
enabled: true
max_concurrent: 8
detail_fft_size: 2048
min_candidate_snr_db: 0
min_span_hz: 0
max_span_hz: 0
@@ -37,13 +38,34 @@ refinement:
profiles:
- name: legacy
description: Current single-band pipeline behavior
surveillance:
analysis_fft_size: 2048
strategy: single-resolution
resources:
max_refinement_jobs: 8
max_recording_streams: 16
max_decode_jobs: 16
decision_hold_ms: 2000
refinement:
max_concurrent: 8
detail_fft_size: 2048
pipeline:
mode: legacy
goals:
intent: general-monitoring
- name: wideband-balanced
description: Prepared baseline for scalable wideband surveillance
surveillance:
analysis_fft_size: 4096
strategy: multi-resolution
resources:
max_refinement_jobs: 16
max_recording_streams: 16
max_decode_jobs: 12
decision_hold_ms: 2000
refinement:
max_concurrent: 16
detail_fft_size: 4096
min_span_hz: 4000
max_span_hz: 200000
pipeline:
@@ -52,7 +74,17 @@ profiles:
intent: wideband-surveillance
- name: wideband-aggressive
description: Higher surveillance/refinement budgets for future broad-span monitoring
surveillance:
analysis_fft_size: 8192
strategy: multi-resolution
resources:
max_refinement_jobs: 32
max_recording_streams: 24
max_decode_jobs: 16
decision_hold_ms: 2000
refinement:
max_concurrent: 32
detail_fft_size: 8192
min_span_hz: 6000
max_span_hz: 250000
pipeline:
@@ -61,6 +93,19 @@ profiles:
intent: high-density-wideband-surveillance
- name: archive
description: Record-first monitoring profile
surveillance:
analysis_fft_size: 4096
strategy: single-resolution
resources:
max_refinement_jobs: 12
max_recording_streams: 24
max_decode_jobs: 12
decision_hold_ms: 2500
refinement:
max_concurrent: 12
detail_fft_size: 4096
min_span_hz: 4000
max_span_hz: 200000
pipeline:
mode: archive
goals:


Загрузка…
Отмена
Сохранить