exchanger/docs/operations/PERFORMANCE_BASELINE.md

5.6 KiB
Raw Permalink Blame History

Базовый профиль производительности

Дата замера: 2026-08-24. Этот документ фиксирует воспроизводимую отправную точку Этапа 7, но не заменяет приёмку на целевом компьютере автомата.

Среда

  • Godot 4.7.1 stable, debug-запуск из редактора, Compatibility renderer (исторический замер до перехода на Mobile/Vulkan для Native Video);
  • Windows 11 Pro x64, сборка 10.0.26200;
  • AMD Ryzen 5 7500F, 6 ядер / 12 потоков;
  • AMD Radeon RX 7700 XT, драйвер 32.0.31035.1003;
  • 31,7 ГиБ оперативной памяти;
  • встроенная fallback-тема, промо-ролик не воспроизводился.

Результаты

Показатели сняты через Performance работающего приложения после стабилизации сцены. Каждая строка — диапазон шести последовательных срезов.

Экран Разрешение FPS Process, мс Physics, мс Draw calls Nodes Static, МиБ Video, МиБ
Home 720×1280 60 1,19–1,26 0,047–0,049 23 578–585* 124,07–124,17 20,62
Settings 720×1280 60 1,03–1,33 0,035–0,105 37 578 124,37–124,43 20,65
Settings 1080×1920 60 0,99–1,22 0,025–0,036 37 578 121,66–121,73 29,04

После установки актуального space_pixel отдельно проверен Home при окне 720×1280 и логическом viewport 1080×1920. В полном режиме decoration приложение держит 60 FPS и 26 draw calls, в ReducedEffects — 60 FPS и 24 draw calls. После отбрасывания диагностического кадра process time составил 1,20–1,94 мс и 1,16–1,58 мс соответственно. Переключение подтвердило фактическую смену числа дочерних decoration-сцен 1 → 0 → 1.

* Рост числа узлов в первом диагностическом цикле создавали вызовы MCP-helper, а не экраны приложения; отдельная проверка после оптимизации стабильно показала 578 узлов.

При бюджете кадра 16,67 мс CPU-обработка текущего UI занимает менее 1,4 мс в этой среде. Видеопамять закономерно возрастает при переходе с 720×1280 на 1080×1920.

Выполненные ограничения нагрузки

  • Фон — статическая текстура; шейдеры, частицы и фоновое видео не используются.
  • Анимация допускается только отдельными спрайтами темы; ReducedEffects полностью убирает decoration-сцену.
  • Все восемь скрытых экранов имеют ProcessMode.Disabled; обработка включена только у текущего экрана. Runtime-проверка выполнена при переходе Home → Settings.
  • VideoStreamPlayer промо-ролика останавливается и освобождает stream при скрытии Home.
  • Сценарные таймауты используют IMonotonicClock, а не количество кадров; тест с единственным обновлением после скачка времени на 120 секунд завершает ожидание оплаты немедленно.
  • Runtime-аудит последовательно открыл все девять экранов. Пользовательские кнопки имеют не менее 96 логических пикселей по короткой стороне; обе цифровые клавиатуры получили равные колонки (ServiceAccess 281–282×120, CardCustomAmount 318–319×150 при viewport 1080×1920).
  • В сервисном экране самые низкие интерактивные строки имеют размер 908×90; малых изолированных touch-целей и поведения, зависящего от MouseEntered, в приложении нет.

Что остаётся проверить на стенде

  • внешний DLC, специально собранный у границ допустимого бюджета анимированных спрайтов;
  • одновременное декодирование реального OGV или MP4 и работа decoration-сцены;
  • яркое освещение, рабочее расстояние, касание пальцем и в перчатках;
  • фактическое разрешение панели, драйвер GPU и длительный профиль памяти;
  • автоматическое либо конфигурационное включение ReducedEffects, если целевой ПК не держит стабильные 60 FPS.

После появления целевого ПК эту таблицу следует повторить на production export, указав модель панели, разрешение, версии драйверов, тему, ролик и число активных анимированных спрайтов.