Цей розділ присвячений глибокому аналізу продуктивності Windows за допомогою Windows Performance Recorder (WPR), Windows Performance Analyzer (WPA) та ETW-трасування.
Тут розглядається, як записувати та аналізувати продуктивність системи, досліджувати запуск Windows, CPU, пам'ять, дискові операції та інші компоненти, щоб перейти від симптому проблеми до її причини.
📊 Windows Performance Toolkit
│
├── 1. 🎙️ Windows Performance Recorder — WPR
│
├── 2. 📈 Windows Performance Analyzer — WPA
│
├── 3. 🔎 Event Tracing for Windows — ETW
│
├── 4. 🚀 Аналіз запуску Windows
│
├── 5. ⚙️ Аналіз продуктивності
│
└── 6. 🕵️ Пошук причин проблем
WPR — це інструмент запису.
Він використовує Event Tracing for Windows (ETW) для збору детальної інформації про поведінку Windows і програм та використання системних ресурсів.
Логіка проста:
Windows
↓
WPR
↓
збір ETW events
↓
Performance Trace
↓
.etl
WPR має:
графічний інтерфейс;
командний рядок;
готові профілі;
можливість створення власних XML-профілів.
Тобто WPR відповідає на питання:
«Що саме відбувалося в системі під час проблеми?»
WPA — це вже інструмент аналізу.
Він відкриває ETL traces, отримані WPR та іншими джерелами, і дозволяє працювати з:
графіками;
таблицями;
фільтрами;
pivot-аналізом;
пошуком по даних;
різними категоріями системної активності.
Тобто:
WPR
│
│ запис
▼
ETL Trace
│
│ аналіз
▼
WPA
│
├── CPU
├── Memory
├── Disk / I/O
├── Processes
├── Threads
├── Boot activity
└── інші події
WPA відповідає вже на інше питання:
«Що саме спричинило проблему?»
ETW — фундамент, на якому побудований цей підхід.
Це механізм трасування Windows, який дозволяє компонентам системи та програмам генерувати події, а інструментам — їх збирати й аналізувати.
У нашій схемі:
Windows / Applications
│
▼
ETW
│
▼
WPR
│
▼
ETL Trace
│
▼
WPA
Саме тому WPT — це не просто «ще один Task Manager».
Task Manager показує поточний стан, а ETW/WPR/WPA дозволяють досліджувати послідовність подій у часі.
Один із дуже цікавих сценаріїв для BAT.
Наприклад:
Windows довго запускається.
Замість припущення:
«мабуть, SSD повільний»
можна зробити:
Проблема
↓
WPR
↓
Boot Trace
↓
ETL
↓
WPA
↓
аналіз активності під час запуску
↓
пошук вузького місця
Це дозволяє досліджувати, які процеси, драйвери або інші компоненти створюють навантаження під час startup.
Microsoft має окремі WPR/WPA сценарії та покрокові матеріали для аналізу продуктивності.
WPT можна використовувати для різних типів проблем:
⚙️ Performance Problems
│
├── 🔴 High CPU usage
├── 🧠 Memory problems
├── 💾 I/O / Disk activity
├── 🐌 Slow application
├── ⚡ System responsiveness
├── 🔋 Power-related problems
└── 🧩 Driver performance
Наприклад, Microsoft показує сценарій High CPU usage, де WPR записує trace, а WPA дозволяє перейти до CPU Usage і далі деталізувати процеси, потоки та stack.
Для BAT це дуже корисна філософія:
не вгадувати причину проблеми, а отримати trace і дослідити фактичну поведінку системи.
Це, мабуть, головна цінність WPT.
Симптом
↓
«Windows повільна»
↓
WPR
↓
ETW Trace
↓
WPA
↓
Timeline / Graphs / Tables
↓
кореляція подій
↓
причина
↓
рішення
WPA навіть має Issues window, призначене для дослідження root cause виявлених проблем.
Тобто WPT добре відповідає філософії BAT Systems Group:
не просто побачити симптом → а зрозуміти механізм, який його створив.
Найкраще показати це на сайті так:
🎙️ WPR
│
│ Record
▼
📦 ETL Trace
│
│ Analyze
▼
📈 WPA
│
▼
🔎 Cause
│
▼
🛠️ Solution
WPR записує.
WPA аналізує.
Саме так Microsoft описує їхню спільну роль.
Ось тут стає цікаво.
WPT не є інструментом створення Windows Image, як DISM, і не є інструментом автоматизації Setup, як WSIM.
Він відповідає на інше питання:
«Наскільки добре працює отриманий результат?»
Тому наша загальна модель поступово стає дуже логічною:
🚀 BAT Deployment
│
├── 🧰 Deployment Tools
│ └── Windows Image
│
├── 🖥️ WinPE
│ └── Deployment Environment
│
├── ⚙️ WSIM
│ └── Setup Automation
│
├── 👤 USMT
│ └── User State Migration
│
└── 📊 WPT
├── WPR
├── ETW
├── ETL
└── WPA
↓
Performance
↓
Diagnosis
Тобто WPT — це вже місток від Deployment до післядеплойної діагностики та оптимізації.
У документації Microsoft ще зустрічається Xperf — старіший command-line інструмент, підтримка якого зберігається. Але Xperfview більше не підтримується, а trace-файли аналізуються через WPA.
Тому для BAT я б не робив Xperf окремою гілкою основної карти. Можна згадати його як legacy/advanced component у матеріалі про WPT, але головний маршрут залишити:
WPR → ETW → ETL → WPA
6. 📊 Windows Performance Toolkit
│
├── 1. 🎙️ Windows Performance Recorder — WPR
├── 2. 📈 Windows Performance Analyzer — WPA
├── 3. 🔎 Event Tracing for Windows — ETW
├── 4. 📦 ETL Performance Traces
├── 5. 🚀 Аналіз запуску Windows
├── 6. ⚙️ Аналіз продуктивності
└── 7. 🕵️ Пошук причин проблем