Repository navigation
TensorTune v1.1.0
TensorTune v1.1.0 - Changelog
Overview
Version 1.1.0 brings significant enhancements across the board, focusing on improved GPU management, user experience in both GUI and CLI, more robust KCPP integration, and a major new "Set as Preferred" feature for tuning. This release also includes numerous bug fixes for increased stability and smoother operation.
Core Improvements
- Enhanced GPU Detection & Error Handling:
- More precise error reporting when GPU libraries (e.g., PyNVML, PyADLX) fail to initialize.
- Helpful hints on AMD Linux systems to install ROCm if
rocm-smiis not found. - SysFS fallback support for AMD and Intel GPUs on Linux, enabling basic GPU listing and VRAM detection even when primary tools are unavailable.
- KoboldCpp Capabilities:
- Capabilities (e.g., CUDA support) are now cached per executable path to avoid redundant detection calls, speeding up subsequent startups.
- Clarification: KCPP capabilities detection primarily relies on parsing
koboldcpp_executable --help. If a KCPP build incorrectly lists flags it doesn't support, TensorTune might optimistically detect them.
- Process Management:
- Fixed a
TypeErrorinkill_processes_by_namethat occurred when process command line information (cmdline) wasNoneor not iterable. This improves the robustness of the "Stop ANY KCPP Processes (Sweep)" feature.
- Fixed a
CLI Improvements
- Robust User Interaction:
- Redesigned input prompts to gracefully handle empty inputs, defaults, and user cancellations (Ctrl+C).
- Fixed an issue where the GGUF file selection prompt could immediately cancel with empty input.
- KoboldCpp Integration:
- Validates and resolves the KCPP executable path using the same robust logic as the GUI.
- Automatically re-detects KCPP capabilities on first-time setup and when changing settings, updating GPU backend flags accordingly.
- Added interactive options to view/redetect KCPP capabilities and manage model-specific or global default arguments.
- Tuning Session Enhancements:
- Correctly propagates tuning levels into KCPP launch commands for consistent GPU layer settings.
- Ensures VRAM availability is captured accurately right before direct launches (“Skip Tune” or “Launch Best”).
- Reconstructs “best remembered” launches using historical tuning levels and VRAM data for improved accuracy.
- Improved user stop tracking (e.g., Ctrl+C) during live monitoring sessions for smoother cancellation.
- Output and Display:
- Resolved Rich progress bar errors by managing progress context correctly.
- Improved KCPP live output handling to integrate cleanly with Rich progress bars for a tidier console view.
- Configuration & Code:
- Ensured more consistent updates to global CLI settings after changes.
- Improved handling of Python script paths for KCPP executables (e.g.,
.py,.pyw).
GUI Improvements
- New Feature: "Set as Preferred" Tuning Strategy:
- After a successful monitored launch (VRAM OK/Tight), users can now mark that configuration as "preferred" for the current model.
- This preference is saved to the launch history with a distinct outcome (
_USER_MARKED_AS_BEST_GUI). - The "Launch Best Remembered Config" feature now prioritizes these user-marked preferred configurations.
- New Feature: Scrollable Auto-Tuning Session Page:
- The "Auto-Tuning Session" page is now fully scrollable, ensuring all controls and information (post-monitoring choices, KCPP output log) are accessible regardless of window size.
- Enhanced User Experience & Layout:
- “Browse” buttons for GGUF models now correctly start in user-configured default or last-used directories.
- First-time setup dialog initializes the last-used GGUF directory for a smoother initial browsing experience.
- Settings Tab: Collapsible sections (Global Arguments, KCPP Capabilities) now default to collapsed for a cleaner initial view.
- Settings Tab: Improved GPU selection dropdown layout and repositioned "GPU Status" label to prevent UI breakage on smaller windows.
- VRAM Display: Progress bars expanded for clarity, and GPU info/VRAM text moved below for better readability. Prevented duplicate "Manual Budget" prefix in VRAM messages.
- VRAM Monitoring: The "Launch & Monitor Output" button in the tuning view is now disabled if no GPU is detected or if it has no VRAM information (with a tooltip explaining why).
- Improved Process Control:
- Added “Stop Tracked KCPP Processes” button to selectively terminate only TensorTune-launched KoboldCpp instances.
- “Stop Current Monitoring” button now available during monitoring sessions to safely abort operations, logging user stops in history.
- Button Color Tweak: “Stop Tracked KCPP” button recolored to a darker orange/brown for better visual distinction.
- Bug Fixes & Stability:
- Resolved
NameErroron GUI close by moving closing logic into a class method (_on_gui_close_requested) and correctly registering it. - Corrected
if __name__ == "__main__":block positioning intensortune_gui.py. - Added widget existence checks (
hasattr,winfo_exists) and safeTabViewaccess to prevent errors during view switching or if UI elements are not fully initialized. - Fixed
AttributeErrorissues with CTkOptionMenu/Button callbacks, particularly for Python 3.13 compatibility, by consistently using lambda functions. - Resolved
TypeErrorin VRAM calculation post-monitoring if GPU/VRAM info was unavailable. - Fixed
ValueError(e.g., invalidpadyon CTkFrame) that caused UI misbehavior, particularly affecting tuning menu returns. - Improved GPU ID dropdown selection logic for correct default choices when GPU lists or configurations change.
- Enhanced configuration load/save logic for booleans, empty inputs, and model-specific argument dialogs.
- More reliable VRAM monitoring and display updates linked to the current configuration.
- Improved history view stability and performance (widget existence checks, limited initial entries).
- Corrected exit confirmation dialog parenting.
- General code style improvements and
IndentationErrorfixes.
- Resolved
Summary
TensorTune 1.1.0 significantly refines the user experience, enhances GPU management capabilities, and introduces valuable features like "Set as Preferred" tuning. With numerous bug fixes and stability improvements, this version offers a more reliable and intuitive way to tune and launch your KoboldCpp models.
Thank you for using TensorTune! We appreciate your feedback and encourage you to report any issues or suggestions on GitHub.