A low-latency telemetry bridge designed to capture and visualize microsecond-level execution data from C++ applications without the performance overhead of standard networking or file I/O.
The system is built as a cross-language distributed pipeline, prioritizing minimal "Observer Effect" on the target application:
- C++ Engine (Producer): A header-only instrumentation library using RAII patterns to measure function scopes with
std::chrono::high_resolution_clock. - IPC Layer (Bridge): Utilizes Win32 Shared Memory (Memory Mapped Files) to offload data from the C++ process with near-zero latency.
- Python Broker (Middleware): A FastAPI service that maps to the shared RAM block, unpacks binary data into JSON, and broadcasts via WebSockets.
- Web Dashboard (Consumer): A Next.js 15 frontend utilizing Chart.js for real-time jitter visualization and telemetry logging.
- Languages: C++14, Python 3.10, JavaScript (ES6+)
- IPC: Win32 API (CreateFileMapping, MapViewOfFile)
- Backend: FastAPI, Uvicorn, mmap
- Frontend: Next.js 15 (App Router), Tailwind CSS, Chart.js
- Multi-Trace Visualization: Automatically detects and tracks multiple function scopes (e.g., Physics, AI, Main Loop) with unique color-coded datasets.
- Zero-Network Overhead: By using Shared Memory instead of HTTP/gRPC for the initial data jump, the profiler maintains microsecond precision even in tight loops.
- Dynamic Charting: High-frequency graph updates with disabled animations for a snappy, utility-focused user experience.
- Session Export: One-click CSV Export functionality for post-mortem analysis and performance auditing.
LIVE-PERFORMANCE-PROFILER/
├── backend/ # FastAPI & Memory Mapping logic
├── cpp_lib/ # C++ Instrumentation Library
│ ├── include/ # Profiler.h (RAII Sensor)
│ └── examples/ # main.cpp (Simulated Workload)
├── frontend/ # Next.js Dashboard
├── docs/ # Technical documentation & Assets
└── run_project.bat # One-click startup script
