Skip to content

Releases: middaysan/cpu-affinity-tool

CPU Affinity Tool v1.1.7

06 Feb 18:11

Choose a tag to compare

CPU Affinity Tool v1.1.6

29 Jan 17:39

Choose a tag to compare

Fix bug in thread scheme saving

CPU Affinity Tool v1.1.5

28 Jan 22:16

Choose a tag to compare

CPU Affinity Tool v1.1.5 - Changelog

Core & OS Integration

  • Process Priority Management: Added support for setting the priority of the current process.
  • Improved Background Execution: The application now automatically sets its own process priority to "Below Normal" to minimize interference with high-load applications.
  • Linux Enhancements: Implemented process search by name and better process management for Linux systems.
  • Windows API Improvements: Enhanced Windows process priority handling and process information retrieval.

CPU Presets & Detection

  • Regex-based Matching: Migrated CPU detection logic to use regular expressions for more flexible and accurate hardware identification.
  • Multi-rule Support: CPU presets now support multiple matching rules per configuration, allowing a single preset to cover more hardware variations.
  • New Hardware Support: Updated and optimized cpu_presets.json with improved rules for modern Intel (including Core Ultra/Arrow Lake) and AMD (Ryzen) processors.
  • P-Core/E-Core Logic: Refined handling of Performance and Efficient cores, including support for P-cores without Hyper-Threading (e.g., Arrow Lake).

App State & Stability

  • State Backup Rotation: Improved data safety by implementing a rotating backup system for state.json (keeping .old1 and .old2 versions).
  • Application Monitoring: Added settings_matched tracking to monitor whether running applications maintain their assigned CPU affinity and priority settings.
  • Repaint Optimization: The UI now requests repaints more efficiently when background monitoring detects changes.

Testing & Technical

  • Expanded Test Suite: Added comprehensive unit tests for CPU preset matching and state storage management.
  • Dependency Updates: Updated Cargo.lock with necessary library improvements.
  • Code Quality: Refined internal models for AppState and RunningApp for better maintainability and status tracking.

CPU Affinity Tool v1.1.2

28 Jan 18:41
7db4dfb

Choose a tag to compare

[1.1.2] - 2026-01-28

Added

  • CPU Presets system:

    • Added configuration file assets/cpu_presets.json with support for popular Intel models (12th–14th gen) and AMD Ryzen (CCD architecture).
    • New automatic CPU architecture detection (P-cores, E-cores, Hyper-Threading, CCD).
    • Preset format documentation in CPU_SCHEME_INSTRUCTION.
  • Improved visualization in the Group Editor:

    • Core grouping by clusters (e.g., Performance Cores, Efficient Cores, CCD 0, CCD 1).
    • Color indication for different thread types (P-cores, E-cores, HT threads).
    • Core labels display (e.g., P0, E8, C0).
  • Infrastructure:

    • cpu_presets.rs module for parsing and matching presets.
    • CpuSchema model to represent a hierarchical CPU structure.
    • Support for test CPU models to debug the UI via meta.rs.

Changed

  • Group Editor:

    • Completely rewrote the core selection UI in group_editor.rs to support hierarchical schemas.
    • Improved core selection logic: now accounts for physical core and cluster membership.
  • State storage:

    • AppStateStorage now automatically selects the best CPU schema on load.
    • Improved configuration save logic in state.json.
  • OS API:

    • Added stubs and extensions for topology handling in libs/os_api.

Fixed

  • Fixed display of occupied cores when editing groups.
  • Optimized rendering performance for large numbers of cores in the UI.

CPU Affinity Tool v1.1.0

25 Jan 15:24

Choose a tag to compare

What's Changed

Changes in Version 1.1.0

User Interface (UI/UX)

  • Design unification: Introduced a new “glass” panel style (glass_frame). All primary UI elements (logs, group settings, app settings) now use a consistent visual style with transparency and blur.
  • App management refactor: The app removal button (“Remove from group”) was moved from the main list into the app settings window (⚙ Edit App Settings). This reduces clutter in the main UI and helps prevent accidental deletions.
  • Improved navigation: In the app settings window, the delete button is now highlighted in red to make destructive actions more visible.

Internal Logic and Stability

  • Centralized tips logic: The mechanism for toggling helpful tips in the header was moved from the view layer into AppState. This provides more reliable state handling when switching between windows.
  • Group handling optimization: Added helper methods for safely retrieving group and program data, reducing the risk of state access errors.
  • Borrow checker fix: Refactored run_settings.rs to eliminate potential borrowing conflicts when rendering the UI and modifying state at the same time.

Technical Changes

  • Added src/app/views/shared_elements.rs to host shared UI components.
  • Updated the AppState structure to support tip rotation intervals.
  • Removed unused imports and obsolete Frame definitions across the project.

CPU Affinity Tool v1.0.8

25 Jan 15:16

Choose a tag to compare

CPU Affinity Tool v1.0.7

06 Jan 22:55
359de9a

Choose a tag to compare

v1.0.7 (2026-01-07)

This release focuses on improving system integration, enhancing code quality, and preparing the codebase for future Rust standards.

✨ Features

  • System Tray Integration: Added initial system tray support for Windows, providing better application lifecycle management and accessibility.
  • Enhanced UI Tooltips: Running applications now show a hover tooltip containing their Process IDs (PIDs), making it easier to identify and manage specific instances.

🛠️ Refactoring & Improvements

  • Windows API Refinement: Extensive overhaul of the os_api for Windows. This includes modularizing utilities, improving process management logic, and extracting reusable helpers to reduce code duplication.
  • Modern Rust Standards: Applied safety annotations and updated code patterns to adhere to upcoming Rust 2024 standards.
  • Tray Interaction Logic: Simplified tray commands and refined double-click behavior for a more intuitive user experience.
  • Localization: All internal comments in core modules (app.rs, tray.rs) have been translated to English for better community collaboration.
  • Code Consistency: Improved overall code readability and formatting across the project.

🚀 Performance

  • Memory Allocation: Integrated mimalloc as the default allocator to improve performance and memory efficiency.

📦 Chore & Dependencies

  • Dependency Update: Updated windows crate to version 0.62.2.
  • Platform Support: Added platform-specific dependencies to ensure smoother builds and runtime behavior.

For more details on changes, see the full diff.

CPU Affinity Tool v1.0.6

06 Jan 22:54

Choose a tag to compare

CPU Affinity Tool v1.0.5

26 Oct 10:00

Choose a tag to compare

CPU Affinity Tool v1.0.4

26 Jul 23:07

Choose a tag to compare