Repository navigation
Скачать EXE / Download EXE · SHA-256
Русский
- Открытие участка записи с начального экрана и из меню «Файл»: границы задаются до загрузки, анализ и экспорт ограничены фрагментом.
- Auto адаптивно удерживает исходные данные в RAM; при нехватке бюджета переключается на дисковое чтение с сохранением численного участка.
- Проекты
.AMSigсохраняют настройки АЧХ, рабочий режим, диапазоны, курсор и поддерживаемые готовые результаты FFT/АЧХ. - Параллельная CPU-обработка текстовых записей и АЧХ; GPU-код исключён из текущей программы.
- Обновлены иллюстрированные описания RU/EN и переключение открытых документов.
EXE без цифровой подписи. Фильтр открытого фрагмента начинает состояние с его начала; без индекса предшествующий текст читается последовательно. Новых замеров производительности для v0.17.13 нет.
English
- Open a recording interval from the start screen or File menu: enter boundaries before loading; analysis and export use the fragment.
- Auto retains original samples in RAM adaptively and falls back to disk reads under budget pressure while preserving the numerical range.
.AMSigprojects preserve FRF settings, workspace mode, view ranges, cursor and supported completed FFT/FRF results.- Parallel CPU processing for text recordings and FRF; GPU code has been removed from the current application.
- Updated illustrated RU/EN guides and open-document switching.
Executables are unsigned. Filtering starts at the opened fragment's beginning; without an index, preceding text is read sequentially. No new performance measurements for v0.17.13.
Полный журнал и ограничения / Full changelog and limitations
Поставка v0.17.13 / v0.17.13 distribution
GUI и CLI собираются из чистого коммита e9f942e2d8e7eb56859eef016da0bdd2d0d9f7b3, тег v0.17.13. На GitHub поставляются только AMSignal-0.17.13-x64.exe и SHA256SUMS.txt с хэшем этого EXE. Исходники доступны через тег и архивы Source code; старые теги и вложения сохраняются. Лицензия — GNU GPLv3.
Полные пересобранные тесты тех же исходников: 1413 проверок ядра без ошибок и 7319 GUI-проверок. Числа обозначают утверждения, а не независимые сценарии. Выпускные EXE пересобираются из чистого тега с проверкой версии и упаковки. Область испытаний — до 10 000 000 000 байт включительно; это не программный предел открытия файлов. Нового большого или длительного стресс-прогона для v0.17.13 нет. Прежние ограничения анализа и кэшей сохраняются.
GUI and CLI are built from clean commit e9f942e2d8e7eb56859eef016da0bdd2d0d9f7b3, tagged v0.17.13. GitHub assets contain only AMSignal-0.17.13-x64.exe and SHA256SUMS.txt for that executable. Sources are available through the tag and Source code archives; existing tags and assets are retained. License: GNU GPLv3.
Full rebuilt tests of the same sources passed: 1413 core checks with no failures and 7319 GUI checks. These are assertion counts rather than independent scenarios. Release executables are rebuilt from the clean tag with version and package verification. Test scope remains up to 10,000,000,000 bytes inclusive, not a hard file-opening limit. No new large-file or prolonged stress run was performed for v0.17.13. Existing analysis and cache limitations remain.
Ниже сохранены исходные журналы локальных этапов. Их формулировки о непубликации, dirty-сборках, прежних проверках и замерах относятся к соответствующему этапу, а не к текущей поставке. GPU-исследование сохранено в истории исходников и не входит в действующий EXE.
The original local milestone notes below retain their historical statements about unpublished tags, dirty builds, prior validation and measurements. Those statements describe their respective milestones rather than this distribution. The GPU investigation remains in source history and is absent from the current executable.
v0.17.13
Русский
Добавлено открытие выбранного участка временной записи до полной загрузки файла.
- На начальном экране появилась кнопка «Открыть участок…», а в меню «Файл» —
команда «Открыть участок записи…». Оба входа используют один диалог. - После выбора LVM/TXT/CSV пользователь задаёт начало и конец в секундах,
затем нажимает «Загрузить». Отмена диалога не открывает новый документ. - Окно задаётся по исходной нормализованной временной шкале записи. Документ
содержит реальные отсчёты внутри окна, без обнуления времени и интерполяции;
фактические границы показаны в заголовке. Нужно минимум два отсчёта и канал. - Источник документа, график, FFT/FRF по умолчанию и экспорт ограничены
фрагментом. Переход между RAM и дисковым чтением сохраняет его границы. - Индекс фрагмента не записывается вместо полного индекса файла. Последующее
обычное открытие возвращает полную запись; перетаскивание не меняет поведения. - Обновлены быстрый старт RU/EN и контракт источника. Добавлена GUI-регрессия
реальных значений, границ анализа, дискового режима и повторного полного открытия.
Ограничения: режим предназначен для временных записей, не готовых спектров.
Без индекса текст до участка читается последовательно; быстрый переход по
смещению не гарантируется. Фильтр начинает состояние с начала фрагмента,
поэтому его начальные значения могут отличаться от обработки полного файла.
Большие записи и длительный стресс в рамках этой задачи не проверялись.
Проверки: сборки GUI и CLI, полный набор ядра — 1413 проверок без ошибок,
GUI — 7319 проверок; git diff --check без ошибок. Тестовые EXE пересобраны.
Локальный тег исходников. Публикация GitHub Release и отправка в удалённый
репозиторий не выполнялись; ранее собранный EXE содержит обозначение dirty.
English
Selected intervals of time recordings can now be opened before loading the full file.
- Added “Open interval…” on the start screen and “Open recording interval…”
in the File menu, both using the same dialog. - After selecting LVM/TXT/CSV, enter start and end times in seconds and click
Load. Cancelling the dialog does not open a new document. - Times use the recording's normalized source timeline. The document contains
original samples within the window without interpolation or resetting time;
its title shows actual sample bounds. At least two samples and a channel are required. - The document source, graph, default FFT/FRF and export are bounded by the
fragment. RAM-to-disk transitions preserve these bounds. - Fragment discovery does not overwrite the full-file scan index. Subsequent
ordinary opening restores the complete recording; drag and drop is unchanged. - Updated both quick starts and the source contract. Added GUI regression checks
for sample values, analysis bounds, disk reads and subsequent full-file opening.
Limitations: this mode supports time recordings, not stored spectra. Without an
index, preceding text is read sequentially; fast seeking is not guaranteed.
Filter state starts at the fragment beginning, so initial results can differ
from processing the complete recording. Large-file and prolonged stress testing
were not performed for this change.
Validation: GUI and CLI builds, the full core suite (1413 checks, no failures),
7319 GUI checks, and a clean git diff --check. Test executables were rebuilt.
Local source tag only. No GitHub Release publication or remote push was performed;
the previously built executable carries a dirty version label.
v0.17.12 — адаптивное использование RAM / adaptive RAM use
Русский
Auto больше не ограничивает удержание исходника фиксированной третью доступного
бюджета. Массивы растут по фактической потребности с проверкой свободных RAM/commit
перед расширением, учётом старого буфера в пике и отдельным резервом подготовки.
Исправлено ошибочное отбрасывание данных на блоке, которому не требуется рост.
Ручной бюджет сохраняет загрузочную долю и системную защиту.
Резервирование различает уже выделенные массивы и будущие выделения: свежий
снимок OS не вычитает резидентные кэши дважды. Счётчики освобождаются после
последнего владельца, включая отменённые задания. Отказ выделения при подготовке
обычной записи допускает продолжение через файловый источник.
Перед расчётом освобождаются необязательные кэши, затем исходники неактивных
и активного документов по необходимости. Перевод на диск не меняет численную
ревизию и не объявляет освобождёнными массивы, удерживаемые живым снимком.
Обратная загрузка целого исходника возможна при повторном открытии, что исключает
переключение RAM/диск на каждом пересечении порога.
FFT/АЧХ оценивают выбранное N по полному timeline или индексу, а не seed из двух
строк. Потоковый анализ разделяет владение RAM-источником и не перечитывает файл,
пока исходные массивы доступны. Подготовка АЧХ оставляет место рабочим массивам
оценивателя; численная методика FFT/H1/Direct не изменена.
Проверки: сборки CLI/GUI; 31 проверка бюджета, 171 ресурсов анализа и 296 АЧХ;
7302 GUI-утверждения. На записи ровно 10 000 000 000 байт (47 390 720 отсчётов,
8 каналов) проверены удержание в RAM, полный FFT, H1, повторный H1 и перевод
на файловый источник при бюджете 128 MiB. Частоты и амплитуды FFT выбранного
участка после перевода совпали точно. Проверка перехода повторена после
исправления стенда: первоначально он сравнивал внутренние контейнеры вместо
числовых значений разных способов хранения результата.
Одиночные наблюдения до присвоения тега: открытие 37,3 с, полный FFT 33,0 с,
H1 13,7 с, пик рабочего набора 11,6 GiB. Это не медианы и не доказательство
общего ускорения относительно другой версии. Длительного стресс-теста,
полного core-прогона и испытаний свыше 10 GB не было. Существующая проверочная
сборка имеет маркировку v0.17.11-dirty; тег относится к исходникам. Публикация,
отправка в remote и новый релизный комплект не выполнялись.
English
Auto replaces the fixed one-third source-retention share with incremental RAM
admission. Growth checks current physical and commit headroom, accounts for the
old vector during reallocation, and reserves preparation workspace separately.
Blocks that need no growth no longer discard a capped resident candidate.
Manual mode retains its loading share and system safety constraints.
The ledger distinguishes allocated resident arrays from prospective allocations,
avoiding double subtraction after an OS snapshot. Shared buffers remain charged
until their final owner releases them, including cancelled jobs. Allocation
failure during ordinary source preparation can fall back to the file source.
Analysis first releases optional caches, then demotes inactive and active source
documents as needed. Demotion preserves the numerical revision and does not
claim memory still held by a live snapshot. Whole-source RAM retention resumes
on reopening, preventing repeated RAM/file oscillation at the budget threshold.
FFT/FRF estimate selected sample counts from the complete timeline or index
instead of the two-row seed. Streaming analysis shares resident source ownership
while it is available. FRF preparation leaves room for estimator workspace.
The numerical FFT/H1/Direct methodology is unchanged.
Validation: CLI/GUI builds; 31 budget, 171 analysis-resource and 296 FRF checks;
7302 GUI assertions. The exactly 10,000,000,000-byte recording contains 47,390,720
samples and eight channels. Checks covered RAM retention, full FFT, H1, repeated
H1, and file-source demotion at a 128 MiB budget. Selected FFT frequencies and
amplitudes matched exactly after demotion. The transition check was repeated
after fixing the harness to compare numerical values rather than storage-specific
containers. No product-code change was required for that harness correction.
Single pre-tag observations: opening 37.3 s, full FFT 33.0 s, H1 13.7 s, peak
working set 11.6 GiB. These are neither medians nor a general speedup comparison
against another version. No prolonged stress test, complete core run, or input
above 10 GB was used. The existing validation executable reports v0.17.11-dirty;
this is a source tag. No remote push, release publication or new release package.
v0.17.11
Русский
Откат GPU и сохранение рабочего состояния .AMSig объединены в одном коммите.
Обычные вычисления выполняются на CPU без обнаружения GPU, компиляции планов
OpenCL/VkFFT, калибровок и дополнительных действий пользователя.
Полный откат GPU
- Удалены
gpu_fft.cpp/.hpp, подключения и вызовы GPU в спектре и АЧХ,
вспомогательные GPU-буферы и отдельная подготовка пакетов для GPU.
CPU-подготовка и преобразования снова используют прежний общий путь. - Из интерфейса исключены переключатели Auto/CPU/GPU и состояние GPU.
Настройкаcompute_backendи GPU-переменные окружения больше не читаются;
старые значения в пользовательских настройках не включают GPU. - Удалены GPU-сценарии и селектор тестов, GPU-параметры стенда, включения
OpenCL/VkFFT и Linux-ldl, добавленные для GPU, из Makefile/PowerShell. - Удалены активные сторонние GPU-зависимости, notices и их включение в комплект.
Действующие справочники описывают CPU-реализацию. - Сохранены ускоренный параллельный парсер, CPU FFT/FRF, исправления амплитуды
опоры на Найквисте, параметры проектов и паспорт экспорта из v0.17.9.
Откат не возвращает медленный парсер v0.17.7.
Причина отката — стоимость создания планов и пробных CPU/GPU-прогонов в первом
расчёте. Повторные GPU-расчёты Direct давали выигрыш на проверенной RTX 3070,
но это не устраняло задержку первого вызова. Систематическое общее замедление
CPU не установлено. Нового универсального коэффициента ускорения не заявляется.
Архив исследования
Полная реализация v0.17.10 с точками интеграции, тестами, OpenCL-Headers/VkFFT
и лицензиями сохранена в docs/development/history/gpu-v0.17.10/source-v0.17.10.zip.
Рядом находятся описание восстановления и протокол первичной проверки отката.
Архив не подключается к сборке и не включается в комплект EXE.
Исходный коммит: 45a26985c5e401a5a2e88a986c7756941bc24819;
CPU-база: 025774bb90e0100e1dc4475fc62181096611098f.
SHA-256 ZIP:
b23852e8bba06a4d8fceb1200ac12ef6ad706e5abfaef11875b818c5bb44c459.
Старые теги и выпускные EXE сохраняются. Наличие GPU в историческом ZIP или
теге v0.17.10 не означает его наличие в текущем исполняемом коде.
Состояние проектов .AMSig
- Новая секция
[workspace]сохраняет активный режим «Сигнал»/«Спектр»/«АЧХ»,
независимые видимые диапазоны Signal и FFT, блокировку разметки, положение
и видимость курсора воспроизведения. Курсор восстанавливается на паузе. - Границы проверяются по полному источнику. Частотный вид восстанавливается
также после фонового FFT; возврат в неизменённый FFT сохраняет выбранный
пользователем viewport вместо безусловного сброса к Найквисту. plot_modeпроекта описывает сохранённые данные. Проект исходного сигнала
остаётся временным, даже если сохранён из режима FFT; он не становится
импортированным спектром. Исходные отсчёты не заменяются амплитудами.- Окно АЧХ явно записывается как
hann_periodic. Границы участка анализа и
частоты фильтра сохраняются с численной точностью, без округления для Edit.
Необязательные готовые результаты
[analysis_cache]может сохранять уже готовые FFT и комплексные результаты
АЧХ с сетками, масками, спектром опоры и coherence. Сохранение не запускает
вычисления; готовые подходящие результаты восстанавливаются при открытии.- Общий бинарный объём ограничен 4 MiB до hex-кодирования. Результаты сверх
лимита пропускаются целиком, без уменьшения N/L. Компактная АЧХ может
сохраняться независимо от не поместившегося FFT. - Проверяются схема/версия приложения, численные настройки и участок,
размеры и допустимые значения массивов, контрольная сумма и RAM-допуск.
Несовместимый, повреждённый или отсутствующий кэш не мешает открытию
исходных данных и обычному пересчёту. Кэш не заменяет исходную запись. - Старые проекты без новых секций открываются с прежними defaults.
Не обещается перенос готовых результатов между версиями программы или
сохранение любого большого дискового FFT. Hex-представление увеличивает
размер текстовых метаданных относительно бинарного лимита.
Проверки и границы
Перед фиксацией исходников успешно выполнены полный набор ядра (1405 проверок)
и итоговый GUI-набор с новыми проектами (7278 проверок). Четыре контрольных
FFT/АЧХ-сценария отката совпали с CPU-хэшами v0.17.9. Сценарии проектов включают
старые файлы, неверные значения, повреждённый/устаревший кэш, Signal/FFT/АЧХ,
фоновый FFT, формулы/фильтр и потоковое сохранение исходных отсчётов.
Проверки утверждений не являются количеством независимых сценариев.
Подготовка тега включает аудит именно содержимого Git-индекса/коммита:
исследовательский архив исключён из поиска активной GPU-реализации.
Чистая сборка помеченного коммита, полные тесты, версия и комплект проверяются
отдельно; первичные логи сохраняются в .build. Коммит/тег не означают
отправки в remote или публикации GitHub Release. Файлы 10/20 GB не используются.
English
This commit combines the complete GPU rollback with AMSig workspace and result
persistence. Normal calculations use the CPU without OpenCL discovery, GPU-plan
compilation, calibration runs or manual preparation.
GPU removal and preserved CPU behavior
- Removed the GPU adapter, FFT/FRF integration, GPU-specific staging,
Auto/CPU/GPU controls, status commands and persisted backend selection.
Old backend settings and GPU environment variables cannot enable GPU work. - Removed GPU tests/options, OpenCL/VkFFT headers and libraries from active
sources, build flags, Makefile, PowerShell and packaging. The GPU-specific
Linux-ldladdition is removed. Current technical references describe CPU work. - Retained the parallel CPU parser and FFT/FRF improvements, the Nyquist
reference-amplitude correction, project settings and export provenance.
The rollback does not restore the older v0.17.7 parser. - Archived the complete v0.17.10 source, integration, tests, dependencies and
licenses indocs/development/history/gpu-v0.17.10/source-v0.17.10.zip.
The archive is excluded from builds and executable packages. Original tags
and release binaries remain intact. The source commits and ZIP checksum
are recorded in the Russian section and the archive README.
The rollback addresses first-call plan creation and repeated CPU/GPU calibration
costs. Warm Direct calculations benefited from GPU execution on the tested
RTX 3070; a general systematic CPU regression was not established. No universal
performance improvement is claimed for this change.
AMSig workspace and optional results
[workspace]restores Time/FFT/FRF mode, independent Signal/FFT viewports,
annotation lock and the visible paused playhead position. Bounds are validated;
the FFT viewport also survives asynchronous computation and mode re-entry.- Project
plot_modefollows the stored data type rather than the active view.
Saving a time-domain project from FFT mode preserves original samples. - FRF metadata explicitly records
hann_periodic. Analysis bounds and filter
frequencies retain numerical precision rather than Edit-field rounding. - Optional
[analysis_cache]stores completed FFT/FRF arrays, grids, masks,
complex transfer functions, reference amplitudes and coherence. Saving does
not start computation. The combined binary payload is limited to 4 MiB
before hexadecimal encoding; oversized results are omitted without truncating
N/L, and a compact FRF can be retained independently of an oversized FFT. - Restoration validates the schema/application version, numerical configuration,
source window, array dimensions/values, checksum and memory admission.
Missing, incompatible or malformed caches fall back to ordinary calculation
without blocking project loading. Original samples remain authoritative. - Legacy projects retain their default workspace. Cross-version cache reuse
and persistence of arbitrarily large disk FFT results are not promised.
Before committing, full core (1405 checks) and the completed GUI suite
(7278 checks) passed. Four rollback FFT/FRF result hashes matched the v0.17.9
CPU baseline. Project coverage includes legacy/invalid metadata, stale/corrupt
caches, asynchronous FFT, processing and streamed original-sample export.
Check counts are assertions rather than independent scenarios.
The staged/committed tree is audited for active GPU code, separately from the
historical archive. Clean tagged builds, full tests, version metadata and
packaging are verified separately with local logs. Creating this commit and tag
does not push them or publish a GitHub Release. No 10/20 GB files are used.
v0.17.8-cpu.2
Русский
Проект .AMSig сохраняет условия повторного расчёта АЧХ. Раньше после
повторного открытия приходилось заново назначать опоры, отклики и метод.
Теперь эти параметры восстанавливаются вместе с поддерживаемыми настройками.
Изменения относительно v0.17.8-cpu.1
- Новая секция
[frf_settings]: роли опор/откликов, H1/Direct, запрошенный L
(включая Auto), удаление среднего, порог опоры и экранное сглаживание. - Сохранение границ частотного диапазона и амплитудной шкалы АЧХ, ручного
или автоматического масштаба. Существующий общий участок анализа,
исходные данные, формулы, фильтры и настройки обработки не заменены. - При экспорте подмножества каналов роли перенумеровываются относительно
экспортированных столбцов. Ошибочные индексы, дубли и пересечение ролей
не применяются. Некорректные параметры отклоняются в пределах проверки импорта. - Метаданные проектов, табличного экспорта и CSV АЧХ содержат
application_versionиexported_utc. CSV АЧХ дополнительно сохраняет
segment_length_requestedиdisplay_smoothing_octaves. Основные
параметры фактического расчёта уже присутствовали и сохранены. - Добавлен GUI-сценарий сохранения/открытия/пересчёта: несколько опор,
выбранный участок, H1, Direct/Auto, сглаживание, границы отображения,
подмножество каналов, невалидные роли и старые метаданные. - Обновлены инструкции переноса окружения RU/EN и контракты метаданных.
Унаследованные изменения и границы
Основа — коммит d43a5ce, тег v0.17.8-cpu.1: параллельный разбор
текстовых записей и распределение FRF-преобразований по парам сегмент/канал.
Этот коммит уже содержит поправку амплитуды опоры на чётной границе
Найквиста и её численные регрессии. Исправление не меняет формулу H;
оно не добавляется повторно этим коммитом. Порядок накопления спектров
и управление CPU-пулом новыми правками метаданных не меняются.
Старые проекты читаются, но отсутствовавшие настройки АЧХ нужно назначить
вручную. Переход в режим АЧХ запускает повторный расчёт; восстановление
кэша результата и последнего режима интерфейса не заявлено. Сглаживание
является настройкой отображения и не заменяет исходный комплексный H.
Паспорт экспорта не подтверждает калибровки, приёмку объекта или внедрение.
Проверки
- CLI и GUI успешно собраны из рабочего дерева с этими изменениями.
- Полный пересобранный набор ядра: 1405 утверждений, 0 ошибок.
- Пересобранный полный GUI-набор: 7193 утверждения, 0 ошибок.
- Затронутый набор
--frf: 296 утверждений, 0 ошибок. - В GUI-тесте после открытия проекта совпадают сетка, маски, L/K/N;
комплексный H на допустимых частотах отличается менее чем на10^-12.
Это синтетический пример, а не погрешность стендового измерения. git diff --checkпройден. Изменения документации после успешных
прогонов не требуют повторного запуска тех же тестов.
Числа относятся к утверждениям тестов, а не независимым сценариям.
Новых замеров CPU/производительности, сравнения с FAMOS, испытания на
другом компьютере и лабораторной приёмки не проводилось. Старые результаты
не переименованы в результаты новой версии. Это локальный аннотированный
тег исходников; публикация, отправка в remote и новый комплект EXE не выполнялись.
English
AMSig projects now preserve FRF recalculation settings. Reopening a new
project restores reference/response roles, H1/Direct, requested segment
length including Auto, mean removal, reference threshold, display smoothing
and FRF view bounds. Existing source samples, shared analysis interval,
formulas, filters and processing settings remain supported.
Changes since v0.17.8-cpu.1
- Added
[frf_settings]serialization and restoration. Channel subsets use
role indices remapped to exported columns. Invalid, duplicate or overlapping
roles are rejected; imported parameters are validated. - Project/tabular and FRF CSV metadata now include
application_version
andexported_utc. FRF CSV also includessegment_length_requestedand
display_smoothing_octaves, alongside existing actual calculation metadata. - Added GUI roundtrip coverage for multiple references, selected intervals,
H1, Direct/Auto, smoothing, view bounds, channel subsets, invalid roles
and legacy metadata. Updated bilingual portability instructions and contracts.
Inherited changes and limitations
Built on d43a5ce / v0.17.8-cpu.1, retaining parallel text parsing and
segment/channel FRF scheduling. The parent already contains the even-length
Nyquist reference-amplitude correction and numerical regressions; this commit
does not apply it again. The correction leaves the transfer-function formula
unchanged. New metadata code does not change CPU-pool scheduling or spectral
accumulation order.
Older projects remain readable but cannot recover settings absent from their
files. Enter FRF mode to recalculate; result-cache or last-mode restoration
is not claimed. Display smoothing is separate from raw complex H. Export
provenance does not establish sensor calibration or laboratory acceptance.
Validation
CLI and GUI builds succeeded. Rebuilt full core suite: 1405 assertions,
zero failures; rebuilt full GUI suite: 7193 assertions, zero failures;
FRF subset: 296 assertions, zero failures. The synthetic GUI roundtrip
preserves frequency grids, masks and L/K/N; valid complex H agrees within
10^-12. This tolerance does not describe physical measurement accuracy.
git diff --check passed. Successful runs were reused after documentation-only
edits; assertion counts do not denote independent scenarios.
No new performance/FAMOS benchmark, second-machine validation or laboratory
acceptance was performed. Historical measurements remain tied to their original
versions. This is a local annotated source tag, with no remote push, publication
or newly versioned executable package.