From f44663040c842e27ae5ee25a057be2f5cb6601a0 Mon Sep 17 00:00:00 2001 From: Alexander Petrov Date: Mon, 17 Aug 2026 22:49:02 +0300 Subject: [PATCH] =?UTF-8?q?=D0=A0=D0=B5=D0=B3=D1=80=D0=B5=D1=81=D1=81=20?= =?UTF-8?q?=D1=82=D0=B0=D0=BA=D1=82=D0=BE=D0=B2=20=D0=BD=D0=B0=2023/13=20?= =?UTF-8?q?=D0=BF=D0=BE=D1=81=D0=BB=D0=B5=20=D0=BE=D0=B1=D1=85=D0=BE=D0=B4?= =?UTF-8?q?=D0=B0=20=D1=83=D1=80=D0=BE=D0=B2=D0=BD=D0=B5=D0=B9=201-2:=20?= =?UTF-8?q?=D0=B8=D0=B7=D0=BC=D0=B5=D0=BD=D0=B5=D0=BD=D0=B8=D0=B9=20=D0=BD?= =?UTF-8?q?=D0=B5=D1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Замер 418 кадров, зонды A/C/D/E (база модуля roomtest 0x42AD — совпала с прошлой сборкой, фикс ушёл в банк). работа синяя зелёная циан af189a1 916 458 142 830 546 900 270 510 40f0d46 873 930 158 874 417 630 379 482 ec1f384 878 550 158 880 419 526 379 488 Фиксы второго уровня на бюджет не повлияли: +4 620 работы и +1 896 зелёной — шум прогона. Период: 3 растра в 392 кадрах, 4 в 24, 5 в одном, то есть за бюджет вылезает только сам каскад. Синяя и циан в бюджете 400 000; зелёная 419 526 — 1,05x цели и ниже растрового кадра 430 000. Остаток на потом: раскол draw_tile на узкие части и идея G8 (инвалидация соседнего тайла полосой 28 px вместо целых 60). Co-Authored-By: Claude Opus 5 --- applications/PoP/docs/perf_cyan_phase.md | 2 ++ applications/PoP/docs/perf_green_phase.md | 2 ++ applications/PoP/docs/perf_l13_room23.md | 25 ++++++++++++++++++++--- 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/applications/PoP/docs/perf_cyan_phase.md b/applications/PoP/docs/perf_cyan_phase.md index 04b3c25..c99f125 100644 --- a/applications/PoP/docs/perf_cyan_phase.md +++ b/applications/PoP/docs/perf_cyan_phase.md @@ -168,3 +168,5 @@ nx u8, ny u8, резерв u16`), и у всех фоновых лент `nx = n | 2026-08-17 | `pop_blit_b` аргументы в file-scope | — / — / **435 180** | `b2da0b8` | | 2026-08-17 | **композит куска: один блит вместо трёх** | — / — / **273 078** | `b2da0b8` | | 2026-08-17 | точный габарит композита (было 63 при 58) | 20 550 / 192 000 / **270 510 ✔** | `af189a1` | +| 2026-08-17 | замер после фиксов уровня 1 | — / — / **379 482** | `40f0d46` | +| 2026-08-17 | **регресс после фиксов уровня 2** — без изменений | — / — / **379 488 ✔** | `ec1f384` | diff --git a/applications/PoP/docs/perf_green_phase.md b/applications/PoP/docs/perf_green_phase.md index 37e962b..ff58d1f 100644 --- a/applications/PoP/docs/perf_green_phase.md +++ b/applications/PoP/docs/perf_green_phase.md @@ -323,3 +323,5 @@ file-scope, что у `draw_tile`. | 2026-08-17 | **копия второй страницы вместо второй запечки** | — / — / **423 558** | `5ef721e` | | 2026-08-17 | `mob_tick_one` в file-scope; снята оснастка из горячих путей | 35 760 / 326 130 / **414 456** | `18ee60e` | | 2026-08-17 | фикс мерцания: окно клипа в `pop_floor_bake` как условие корректности копии | замер после фикса — ниже | `35b7cd5` | +| 2026-08-17 | замер после фиксов уровня 1 (мерцание торцов, потолочный fore, сосед под плитой, блеск меча) | 35 760 / — / **417 630** | `40f0d46` | +| 2026-08-17 | **регресс после фиксов уровня 2** (чёрные бары, чит бессмертия) — в пределах шума | — / — / **419 526** | `ec1f384` | diff --git a/applications/PoP/docs/perf_l13_room23.md b/applications/PoP/docs/perf_l13_room23.md index 0b3c719..b5f98ed 100644 --- a/applications/PoP/docs/perf_l13_room23.md +++ b/applications/PoP/docs/perf_l13_room23.md @@ -117,9 +117,28 @@ verb'ом **`clog N`** плагина `mamebridge` — а его нет в MCP- | стало | **916 458** | 142 830 | **546 900** | **270 510** | | | −36 % | — | −32 % | −57 % | -Цель — каждая секция ≤ 400 000. **Синяя и циан в бюджете**; зелёная 1,37×, -остаток разобран в [`perf_green_phase.md`](perf_green_phase.md) §3 (нужен -раскол `draw_tile` на узкие части, как в оригинале). +**Регресс после обхода уровней 1-2 (`ec1f384`, 2026-08-17), 418 кадров:** + +| максимум по секции | работа | синяя | зелёная | циан | +|---|---:|---:|---:|---:| +| после оптимизации (`af189a1`) | 916 458 | 142 830 | 546 900 | 270 510 | +| после фиксов ур. 1 (`40f0d46`) | 873 930 | 158 874 | 417 630 | 379 482 | +| **после фиксов ур. 2 (`ec1f384`)** | **878 550** | **158 880** | **419 526** | **379 488** | + +Фиксы второго уровня (чёрные бары, чит бессмертия) на бюджет не повлияли: +разница с предыдущим замером +4 620 работы и +1 896 зелёной — шум прогона. +Скачок циан на фиксах ПЕРВОГО уровня (270 510 → 379 482) объяснён там же: +восстановлены потерянные половины слоёв (`set_redraw2`, ряд −1 foretable), то +есть это плата за корректность, а не регрессия. + +Период кадра по прогону: **3 растра в 392 кадрах, 4 в 24, 5 в одном** — то +есть за бюджет вылезает только сам каскад. + +Цель — каждая секция ≤ 400 000. **Синяя и циан в бюджете**; зелёная 419 526, +то есть 1,05× цели (и ниже растрового кадра 430 000), остаток разобран в +[`perf_green_phase.md`](perf_green_phase.md) §3 (нужен раскол `draw_tile` на +узкие части, как в оригинале) и в идее G8 (сузить инвалидацию соседнего тайла +до 28-пиксельной полосы). Где что расходуется и как это чинить — в фазовых документах: [зелёная](perf_green_phase.md), [циан](perf_cyan_phase.md).