archiving tracks
This commit is contained in:
24
conductor/archive/gui_performance_profiling_20260307/plan.md
Normal file
24
conductor/archive/gui_performance_profiling_20260307/plan.md
Normal file
@@ -0,0 +1,24 @@
|
||||
# Implementation Plan: GUI Performance Profiling & Optimization (gui_performance_profiling_20260307)
|
||||
|
||||
> **Reference:** [Spec](./spec.md) | [Architecture Guide](../../../docs/guide_architecture.md)
|
||||
|
||||
## Phase 1: Instrumentation
|
||||
Focus: Add profiling hooks to core application paths
|
||||
|
||||
- [x] Task 1.1: Wrap all `_render_*` methods in `gui_2.py` with profiling calls. (7198c87, 1f760f2)
|
||||
- [x] Task 1.2: Wrap background thread methods in `app_controller.py` with profiling calls. (1f760f2)
|
||||
- [x] Task 1.3: Wrap core AI request and tool execution methods in `ai_client.py` with profiling calls. (1f760f2)
|
||||
- [x] Task 1.4: Refactor `PerformanceMonitor` to a singleton pattern for cross-module consistency. (1f760f2)
|
||||
|
||||
## Phase 2: Diagnostics UI
|
||||
Focus: Display timings in the GUI
|
||||
|
||||
- [x] Task 2.1: Add "Detailed Component Timings" table to Diagnostics panel in `src/gui_2.py`. (1f760f2)
|
||||
- [x] Task 2.2: Implement 10ms threshold highlighting in the table. (1f760f2)
|
||||
- [x] Task 2.3: Implement a global "Enable Profiling" toggle synchronized across modules. (1f760f2)
|
||||
|
||||
## Phase 3: Verification & Optimization
|
||||
Focus: Analyze results and fix bottlenecks
|
||||
|
||||
- [x] Task 3.1: Verify timings are accurate via manual walkthrough. (1f760f2)
|
||||
- [x] Task 3.2: Identify components consistently > 10ms and propose optimizations. (1f760f2)
|
||||
21
conductor/archive/gui_performance_profiling_20260307/spec.md
Normal file
21
conductor/archive/gui_performance_profiling_20260307/spec.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# Track Specification: GUI Performance Profiling & Optimization (gui_performance_profiling_20260307)
|
||||
|
||||
## Overview
|
||||
Implement fine-grained performance profiling within the main ImGui rendering loop (`gui_2.py`) to ensure adherence to data-oriented and immediate mode heuristics. This track will provide visual diagnostics for high-overhead UI components, allowing developers to monitor and optimize render frame times.
|
||||
|
||||
## Core Requirements
|
||||
1. **Instrumentation:** Inject `start_component()` and `end_component()` calls from the `PerformanceMonitor` API (`src/performance_monitor.py`) around identified high-overhead methods in `src/gui_2.py`.
|
||||
2. **Diagnostics UI:** Expand the Diagnostics panel in `gui_2.py` to include a new table titled "Detailed Component Timings".
|
||||
3. **Threshold Alerting:** Add visual threshold alerts (e.g., color highlighting) in the new Diagnostics table for any individual component whose execution time exceeds 10ms.
|
||||
4. **Target Methods:**
|
||||
- `_render_log_management`
|
||||
- `_render_discussion_panel`
|
||||
- `_render_mma_dashboard`
|
||||
- `_gui_func` (as a global wrapper)
|
||||
|
||||
## Acceptance Criteria
|
||||
- [ ] Profiling calls correctly wrap target methods.
|
||||
- [ ] "Detailed Component Timings" table displays in Diagnostics panel.
|
||||
- [ ] Timings update in real-time (every 0.5s or similar).
|
||||
- [ ] Components exceeding 10ms are highlighted (e.g., Red).
|
||||
- [ ] 1-space indentation maintained.
|
||||
Reference in New Issue
Block a user