Skip to content

Releases: Unixcraft-Studios/X3Dctl

x3dctl v1.4.1 Stable

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 26 Mar 15:12

x3dctl v1.4.1

x3dctl 1.4.1 is a small but meaningful polish release focused on packaging, install consistency, and clearer on-boarding for both source and AUR users.

This release improves the project’s install flow and documentation while keeping the core goal the same: explicit, deterministic workload policy for AMD X3D systems on Linux.

Highlights

  • Improved install consistency across local and packaged installs
  • /etc/x3dctl.conf is now staged and packaged consistently
  • Clearer optional capability-mode guidance for lower-friction no-password workflows
  • Improved AUR packaging with post-install notice for optional capability mode
  • Documentation and release-flow cleanup

Notes

  • The default and fully supported path remains the standard sudo / sudoers privilege model
  • Optional password-less capability mode is opt-in, documented, and intended as a convenience path for supported operations
  • No major runtime behavior changes in this release

Users have reported measurable improvements in performance and consistency across many mixed workload and gaming scenarios, though results can vary by kernel, scheduler, distro, and workload.

Installation

Source / local install

make
sudo make install

AUR

yay -S x3dctl

About x3dctl
x3dctl is a lightweight UNIX-style utility for deterministic workload policy on AMD X3D systems.

It provides explicit, scriptable control over X3D mode behavior, IRQ steering, and per-process workload policy for users who want more predictable behavior under mixed workloads such as gaming, compiling, recording, or multitasking.

See man x3dctl for full usage and operational details.

v1.3.0

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 12 Mar 22:50

x3dctl v1.3.0-1
stable

x3dctl v1.3.0

This release marks a significant maturity update for x3dctl, focused on system inspection, profile flexibility, and packaging readiness.

x3dstatus

Added

  • New status command with:
    • X3D mode reporting
    • GPU IRQ audit
    • irqbalance detection
    • CPU model reporting
  • New unrestricted profile:
    • no affinity pinning
    • nice -1
    • SCHED_OTHER
    • BE/0

Changed

  • x3dctl-helper is now resolved from PATH for local and packaged installs
  • --no-irq now restores the deterministic full CPU mask baseline
  • Improved GPU IRQ steering consistency across mode transitions
  • Improved topology handling and profile lookup behavior

Packaging / Docs

  • DESTDIR-aware Makefile for AUR-friendly packaging
  • Improved packaged install support
  • Updated README, man page, and roadmap for the 1.x release series

x3dctlv1.3.0_Notes.md

Full Changelog: v1.1.3...v1.3.0

v1.1.2

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 08 Mar 15:19

Latest Stable Aur

xedctl-v1.0.6

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 06 Mar 03:47

various build/permission fixes

Full Changelog: v1.0.5...v1.0.6

v1.0.1

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 03 Mar 22:13
8110888

X3Dctl v1.0.1 Release Notes

Overview

Version 1.0.1 is a stability and refinement release for X3Dctl following the 1.0.0 milestone.
This update focuses on behavioral correctness, validation hardening, and documentation alignment with the 1.x stability guarantees.

X3Dctl remains a deterministic, command-driven utility for controlling AMD X3D CPU operating modes with no daemon, no polling, and no background state drift


Improvements

Refined Mode Enforcement

  • Improved validation around global mode transitions.
  • More robust handling of repeated mode invocations (idempotent behavior preserved).
  • Clearer feedback when the system is already in the requested posture.

GPU IRQ Steering Stability

  • Hardened GPU IRQ mask application logic.
  • Improved restoration behavior when switching from gamingperformance.
  • Better validation when --no-irq is supplied.
  • Reduced risk of partial or stale mask states.

Mode-bound IRQ steering behavior remains:

  • gaming → steer GPU IRQs to frequency CCD
  • performance → restore full CPU mask

Profile Execution Consistency

  • Improved enforcement of:

    • CPU affinity masks
    • Nice levels
    • Scheduler class
    • I/O priority
  • Ensured deterministic inheritance for all child processes.

  • Tightened validation inside the privileged helper.

Profiles remain static and enforced within the helper (no runtime profile mutation)


CLI and UX Enhancements

  • Clearer error output for invalid command combinations.
  • Improved verbosity handling (-v, -q).
  • Minor help/man page polish.
  • Improved status output consistency.

Privilege Separation Hardening

  • Additional safety checks in helper execution path.
  • Improved configuration ownership validation.
  • Reduced surface area for misconfiguration.

Strict privilege separation remains a core design goal


Documentation Updates

  • Stability language aligned with the 1.x release series.
  • Clarified profile model documentation.
  • Minor formatting and consistency improvements.

The 1.x series guarantees stable CLI semantics and backward compatibility


Bug Fixes

  • Fixed edge cases where:

    • IRQ masks could appear unchanged after repeated transitions.
    • Affinity validation messages were misleading.
    • Invalid profile entries produced incomplete feedback.
    • Corrected minor documentation typos.

No Breaking Changes

  • No CLI changes.
  • No configuration format changes.
  • No behavior regressions intended.
  • Fully backward compatible with 1.0.0.

Summary

X3Dctl v1.0.1 strengthens determinism, improves validation clarity, and refines enforcement logic without expanding scope.

This release continues to honor the core design principles:

  • No daemon
  • No polling
  • No automation magic
  • Deterministic system posture
  • Minimal privileged attack surface

Full Changelog: v1.0.0...v1.0.1

x3dctl 1.0.0

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 03 Mar 19:56
2fe4697

What's Changed

Full Changelog: https://github.com/GrandBIRDLizard/X3Dctl/commits/v1.0.0

Beta(#1)

Beta(#1) Pre-release
Pre-release

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 21 Feb 01:31
50baf9a

x3dctl v0.5.0-beta

Architecture Stabilization Milestone

v0.5.0-beta formalizes the core design of x3dctl as a deterministic workload policy tool for AMD X3D processors.

This release introduces mode-bound GPU IRQ steering, eliminates state drift between mode transitions, and clearly separates system-level posture from per-process policy enforcement.

Highlights

  • Mode-bound GPU IRQ routing
  • Topology-aware CCD detection
  • Deterministic process affinity inheritance
  • Clean privilege separation
  • No daemon, no polling, no automation magic

The core engine is now structurally stable.


Looking Ahead

The path to 1.0.0 focuses on:

  • Minor engine refinements
  • Hardened edge-case handling
  • Clean Steam launch-option integration
  • Documentation polish
  • CLI stabilization

No major architectural changes are planned before 1.0.0.

x3dctl 1.0.0 will represent a finalized engine and stable interface, not a feature expansion milestone.

Feedback and real-world testing are encouraged during this beta phase.

Alpha-3

Alpha-3 Pre-release
Pre-release

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 15 Feb 04:17
4d3e641

#Note Improved Makefile messaging didn't make it into this release. Replace the Makefile with the one in the master branch for a smoother UX install.

v0.4.0-alpha

Highlights

  • Added configuration-driven application launching via run
  • Implemented CCD-aware CPU affinity inheritance model
  • Added hardware topology detection in privileged helper
  • Introduced verbose (-v) mode
  • Improved CLI consistency and usage behavior
  • Installed default /etc/x3dctl.conf during system install
  • Updated man page and README to reflect current functionality

Improvements

  • Deterministic process pinning using affinity inheritance
  • Lazy topology initialization in helper
  • Stronger PID validation and input handling
  • Clean removal of implicit default command behavior
  • Improved Makefile install messaging
  • Preserved DESTDIR compatibility for packaging
  • Safer config parsing (frontend-only, no privileged parsing)
  • Consistent command logging behavior

Behavioral Changes

  • x3dctl with no arguments now displays usage instead of defaulting to status
  • Added run command for policy-based execution
  • Added system-wide configuration file at /etc/x3dctl.conf
  • Verbose output available for debugging and inspection

Known Limitations

  • Configuration supports only simple application=mode mapping
  • No per-user configuration override yet
  • No niceness or scheduler tuning integration
  • No runtime game process detection (affinity applies to full process tree)
  • Limited validation across multi-CCD (>2) systems

Future Goals

  • Extended configuration schema (niceness, policy flags)
  • Optional per-user config support (~/.config/x3dctl.conf)
  • Multi-CCD topology generalization
  • Optional cgroup integration
  • Distribution packaging support
  • Expanded hardware validation matrix

License

  • MIT

Alpha-2

Alpha-2 Pre-release
Pre-release

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 12 Feb 17:37
96c084d

Removed legacy udev permission model rules left in first alpha

Alpha-1

Alpha-1 Pre-release
Pre-release

Choose a tag to compare

@GrandBIRDLizard GrandBIRDLizard released this 12 Feb 16:22
96c084d

v0.3.1-alpha

Highlights

  • Established stable CLI baseline
  • Implemented secure helper privilege model
  • Added README.md
  • Added man page documentation
  • Improved install and uninstall workflow
  • Added quiet mode support
  • Added toggle command
  • Improved Makefile structure and DESTDIR compatibility

Improvements

  • Correct separation between source tree and installed files
  • Improved uninstall messaging
  • Clean packaging-friendly build structure

Known Limitations

  • No configuration file support yet
  • Application profile mapping not implemented
  • Limited hardware validation testing
  • Interface may change in future releases

Future Goals

  • Staged configuration system
  • Application mode auto-detection
  • CCD affinity and process pinning support
  • Distribution packaging support

License

  • MIT