Skip to content

Latest commit

 

History

History
115 lines (75 loc) · 11.8 KB

File metadata and controls

115 lines (75 loc) · 11.8 KB

preview

🌬️ FrameWeaver

Adaptive Rendering Orchestrator for Next-Generation Workloads

Welcome to FrameWeaver, a performance-optimization platform that intelligently synchronizes GPU clock domains with application-level frame pacing. Unlike conventional static tuning utilities, FrameWeaver operates on a predictive, holistic principle: it observes the temporal rhythm of your rendering pipeline—specifically the pre-composition frame interval—and dynamically reweaves voltage-frequency states to match that rhythm with sub-millisecond precision.

This is not merely an overclocking tool. It is a conductor for your silicon orchestra, harmonizing thermal headroom, power delivery, and shader throughput into a seamless, silent, and efficient performance tapestry. For Linux users who demand absolute control without sacrificing system stability, FrameWeaver provides a declarative configuration layer that transforms raw hardware capability into a refined, adaptive user experience.

Table of Contents


The Core Philosophy: Adaptive Efficiency

Efficiency Platform Status Code Quality

Most GPU utilities treat undervolting and overclocking as a static binary choice: apply a curve, test for stability, and hope for the best. FrameWeaver rejects this rigidity. It understands that a game's menu screen, a physics simulation, and a cinematic cutscene demand wildly different power profiles.

Our platform performs a continuous spectral analysis of the GPU's voltage-frequency characteristics, scanning for the "sweet spots"—those plateaus where performance per watt peaks. It then applies these optimal points adaptively, based on the live throughput measured at the pre-rendering stage (Pre Frame-Gen FPS). This means your GPU tightens its efficiency curve during dialogue scenes and loosens it during intense firefights, all without a single user intervention. You get the headroom of an aggressive overclock precisely when needed, and the silence of an undervolt during idle narrative moments.

Key Features: The Loom's Toolkit

  • 🔬 Dynamic Curve Synthesis (DCS): Unlike static offsets, FrameWeaver generates a bespoke voltage-frequency map for your specific silicon lottery winner. It doesn't simply apply a global offset; it sculpts the curve point-by-point, respecting the unique physical characteristics of your chip.
  • ⚡ Pre-Frame Pacing Recognition (PFPR): The heart of its adaptive nature. By monitoring the completion time of pre-rendered frames, FrameWeaver predicts the upcoming load with up to 500ms of lead time. This allows the GPU clock to ramp before the heavy scene loads, eliminating the micro-stutter common in reactive frequency scaling.
  • 🛡️ Thermal Headroom Projection: Integrated thermal modeling simulates the anticipated temperature rise of each frequency state, ensuring that aggressive curves do not push your cooling solution beyond its operational envelope.
  • 🔁 Zero-Downtime Profile Switching: Transition between "Silent," "Balanced," and "Max Performance" profiles via dbus commands or a hotkey daemon, without any visual artifact or rendering interruption.
  • 📊 SQLite Performance Ledger: Every adjustment, FPS dip, and thermal excursion is recorded locally in a lightweight database, allowing you to audit your system's behavior over weeks of usage.
  • 🌐 Multilingual Interface: The CLI is available in 12 languages, with automatic locale detection. The Qt-based dashboard (optional) supports right-to-left layouts for Arabic and Hebrew.
  • 🛰️ Headless Daemon Mode: Designed for servers and cloud gaming rigs, FrameWeaver can run entirely in the background via a systemd unit, exposing a JSON-RPC interface via Unix sockets.
  • 🧵 Fine-Grained Clock Guard: A watchdog that monitors for clock stretching or hardware hangs, instantly reverting to the stock safe-state profile within 2 milliseconds to prevent Xorg/Wayland crashes.

Architecture: A Look Under the Hood

FrameWeaver is built as a modular C++17 application with a Rust core for the low-level NVML (Nvidia Management Library) interface. The process is structured as a three-tier system:

  1. The Sensor Spindle: A high-frequency polling loop (running at 1kHz) that reads voltage, temperature, and clock states directly from the driver via libnvidia-ml.so.
  2. The Decision Loom: An event-driven engine that ingests the sensor data and the PFPR metric. It runs a predictive filter (a Bayesian estimator) to determine the target frequency state for the next 100ms window.
  3. The Execution Shuttle: The safest possible interface to the GPU. It uses the official NVAPI (Nvidia Control API) for Linux to write the clock offsets and memory multipliers. It assumes the dead-lock of any system that does not have nvidia_uvm and nvidia_drm modules loaded with modeset=1.

No kernel modules are required. All interaction happens at the user-space level with CAP_NET_ADMIN privileges typically not required; however, CAP_SYS_ADMIN is recommended for the real-time scheduler priority the core uses.

Installation & Primer: Weaving Your First Setup

Build Dependencies License

To install FrameWeaver, you will need to utilize a distribution package manager or build from source. We do not rely on root-level installers; instead, we prefer a user-space setup mechanism.

Prerequisites:

  • Linux Kernel 5.15+ (recommended for proper PCIe resizable BAR handling).
  • Nvidia proprietary driver version 550.xx or newer (essential for the nvidia-settings control API compatibility).
  • CMake 3.20+ and a modern GCC/Clang toolchain for compilation.

The Installation Process:

  1. Acquisition: Download the source archive corresponding to your architecture (x86_64 only currently) from the Download section below.
  2. Dependency Resolution: Use your system's package manager (e.g., apt-get or dnf) to install the required libraries: libsqlite3-dev, libboost-system-dev, and libjsoncpp-dev.
  3. Compilation: Create a build directory (mkdir build && cd build) and invoke the CMake configuration (ccmake .. or cmake ..). Then, execute make -j$(nproc).
  4. Deployment: Run make install to place the binary in /usr/local/bin and the configuration schema in /etc/frameweaver/.

Usage: The Weave Cycle

The primary interface is the fwtool command-line utility.

  • Start the Daemon: Launch the backend service with fwtool --service start. This loads the default "Balanced" profile.
  • Scan for Optimal Curves: Use fwtool scan --full. This triggers the Crucible Testing routine, which ramps through all voltage brackets and records the point of instability. This takes ~15 minutes and requires a running graphical session.
  • List Available Profiles: fwtool --list-profiles.
  • Select a Dynamic Profile: fwtool --switch-profile MaxPerformance --adaptive-mode pfpr.
  • Interactive Dashboard: If you have the Qt frontend installed, simply run frameweaver-gui. This provides real-time sparklines and a slider to manually adjust the aggressiveness factor of the adaptive algorithm.

Technical Specifications & Requirements

  • Supported GPU Architectures: Turing (RTX 20xx), Ampere (RTX 30xx), and Ada Lovelace (RTX 40xx). Hopper and Blackwell are NOT supported due to a different power management IC interface.
  • Memory Type Support: GDDR6 and GDDR6X with variable memory clock stepping.
  • System Tray Integration: Available for GNOME (via AppIndicator) and KDE Plasma (native).
  • Real-Time Statistics: FrameWeaver exposes a Prometheus /metrics endpoint, allowing integration with Grafana dashboards for professional monitoring.

Multilingual & Accessibility Implementation

We believe performance tuning is a universal right. The UI strings are stored in gettext-compatible .po files. The core interface supports English, Spanish, French, German, Japanese, Korean, Simplified Chinese, Russian, Portuguese, Italian, Polish, and Turkish. The interface adjusts for high-contrast modes and supports screen-reader navigation via accessible markup in the GTK/Qt renderers.

Our 24/7 Support Ecosystem is community-driven. While the codebase is open, we offer a dedicated matrix channel where core contributors are active. We guarantee responses to critical bug reports within 48 hours during the 2026 beta cycle.

Disclaimer & Safety Protocols

⚠️ Important Safety Notice: Overclocking, even with adaptive safeguards, carries inherent risks to hardware lifespan and data integrity. FrameWeaver is provided "as is" without warranty of any kind. The developers are not responsible for thermal damage, reduced component lifespan, or system instability resulting from the use of aggressive performance profiles.

  • Warranty Void: Overclocking voids most hardware warranties. FrameWeaver does not bypass hardware protection mechanisms unless you explicitly enable the "Firmware-Level Shunt Resistance" option, which requires you to sign a digital hold-harmless agreement within the CLI.
  • Power Draw: The "Max Performance" profile may cause system power supplies to trip their overcurrent protection. Please ensure your PSU has a 20% headroom above the maximum TDP of your GPU.
  • Never use this tool in a production environment without rigorous soak testing (24+ hours) of your specific workload.

Licensing: The MIT Fabric

FrameWeaver is released under the permissive MIT License, allowing for commercial use, modification, distribution, and private use. The full legal text can be viewed at the MIT License Repository. You are free to integrate the core logic into your own proprietary software, provided you retain the original copyright notice embedded in the source files.

Final Thread: The Download

We have completed this journey through the adaptive landscape of FrameWeaver. The tool represents a paradigm shift from static "set-and-forget" aesthetics to dynamic, responsive system telepathy.

To begin your journey with the All-New 2026 Edition, please obtain the package from the repository's release section below. This build includes the optimized AVX-512 instruction set for the decision loop, ensuring that the overhead of deciding the clock speed is negligible compared to the performance gained.

Download