GPU Memory Underclocking
⚠️ Warning This is a hardware issue, it can be caused by overheating or age. Treat this as a temporary solution and not permanent fix.
Background
This issue could cause GPU Freezes, game crashes, or abnormal GPU behavior.
The Machine
- Type : Laptop
- Model : ASUS TUF A15 FA506IC
- GPU : Nvidia RTX3050
Solution
Use LACT or run the following script.
This script will limit the VRAM, making it run with lower VRAM speed (in the range of 1000 and 5501).
Step 1: Create the script
Create the file /usr/local/bin/gpu-stabilize.sh:
#!/bin/bash
# 1. Enable Persistence Mode (Fixes the warning you saw)
# This keeps the driver loaded so settings don't reset.
nvidia-smi -pm 1
# Uncomment this to reset nvidia configuration without restart or reboot
#nvidia-smi --reset-gpu-clocks # Reset GPU Clocks
#nvidia-smi --reset-memory-clocks # Reset VRAM Clocks
# 2. Lock the GPU Clocks
# We are capping the 'Boost' to prevent the crash.
#nvidia-smi --lock-gpu-clocks=1000,1200
# 3. Set a conservative Power Limit (Optional but recommended)
# The default power for TUF A15 FA506IC is 60W.
nvidia-smi -pl 45
# 4. Set VRAM Speed (Locking Memory Clocks)
# If this command is unsupported, the script will just move on.
nvidia-smi --lock-memory-clocks=1000,5501
Step 2: Make the script executable
sudo chmod +x /usr/local/bin/gpu-stabilize.sh
Step 3: Create the systemd service
Create the file /etc/systemd/system/gpu-stabilize.service:
[Unit]
Description=GPU Stabilize - Underclock GPU Memory
After=multi-user.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/gpu-stabilize.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
Step 4: Enable and start the service
sudo systemctl daemon-reload
sudo systemctl enable gpu-stabilize.service
sudo systemctl start gpu-stabilize.service
Optional: Check service status
sudo systemctl status gpu-stabilize.service