Lab053: achieve real-time 5 fps software video receiver

This commit is contained in:
LittleSam129
2026-09-09 10:26:55 +03:00
parent cc38900cae
commit 0368c6d3e9
44 changed files with 472121 additions and 0 deletions

View File

@@ -348,6 +348,47 @@
задержки JPEG-пачки; текущий этап завершить на программных результатах.
- **RF / Git:** RF TX=0; Lab052 git add/commit и push не выполнялись. STOP.
## Lab053 — стоимость настоящих пакетов и потоковая обработка на CPU
- **Режим:** BPSK 500 ксимв/с, Fs 8 Мвыб/с, 16 отсчётов/символ;
JPEG C (128×96 RGB, q25), 5 кадров/с, предел возраста 200 мс.
- **База:** Lab052 закреплена коммитом
`cc38900caea4b310568edc691be7db124503fd21` — 27 файлов, без push.
- **Изменения:** локальные окна строгих расчётов, кольцевой IQ-буфер,
неизменный алгоритм Viterbi с CPU JIT, раздельные стадии ввода/RX/JPEG.
Общие децимация и корреляции сохранены; все 1601 timing-offset проверяются.
PHY/FEC/CRC, пороги и порядок кандидатов Lab052 не изменены.
- **Стоимость пакета:** среднее 7,016 мс, медиана 6,862 мс, p95 8,292 мс;
40 пакетов/с требуют около 0,281 с работы обработчика на секунду потока.
- **Производительность:** 4,384788 с суммарной работы стадий на 6,044416 с IQ,
отношение 0,725428. Отдельный полный проход без ожидания источника:
4,010478 с, отношение 0,663501. Прогрев JIT выполнен до приёма IQ.
- **Свежесть:** 240/240 пакетов, 30/30 точных JPEG, 5 свежих кадров/с;
возраст 150,298 / 153,996 / 176,062 мс. Три полных прохода прошли критерии.
Проверены 1/2/4 работника; выбран один, дополнительные не дали выигрыша.
- **Очереди и память:** IQ максимум 5/8 блоков, строгие задания 1/4;
переполнений нет. IQ 3,031 МиБ, выделенное кольцо 6,483 МиБ,
инженерная оценка рабочих массивов с резервами 72,720 МиБ,
измеренный пик RSS процесса 197,199 МиБ. Это разные показатели памяти.
- **Длинный поток:** 24,044416 с IQ, 960/960 пакетов, 120/120 точных JPEG,
5 свежих кадров/с, максимальный возраст 189,396 мс, отношение 0,742840;
IQ максимум 7/8, состояние ограничено, после закрытия очищено.
- **Регрессии:** те же 240 решений и 255 строгих кандидатов при 1/2/4 работниках;
37/45 слабых случаев у обоих приёмников, без новых потерь.
Старая запись 20 ксимв/с: 36/36, CRC и SHA PASS.
- **Проверки:** 50 новых тестов; полный pytest 768 passed;
quick_gate 768 тестов /26 функциональных /13 штатных пропусков, PASS.
Verifier и adversary подтвердили результаты. Отрицательные опыты
без JIT и с замедлением ввода фиксируют переполнение и прекращение потока.
- **Отчёт:** [состояние](lab053_current_state.md),
[критерии](../data/processed/lab053/acceptance.json),
[основной поток](../data/processed/lab053/stream.json),
[графики](../data/processed/lab053/performance_and_age.png). Журнал: запись 042.
- **Границы результата:** программная подача IQ по часам; камера, экран и
аппаратный приём не проверены. GPU не использована, RF TX=0.
- **Далее:** рассмотрение результатов ChatGPT. Lab053 git add/commit и push
не выполнялись. STOP.
## Правило хранения данных
Большие записи IQ, потоки `cs8`, бинарные объекты и другие аппаратные исходные