summaryrefslogtreecommitdiff
path: root/clockpower
blob: 7fa64734f6ec892dd894095405bcd230cbc2f65b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
#!/bin/bash

#case $1 in

    #min)
        #sudo cpupower frequency-set --governor powersave
        #sudo cpupower frequency-set --related --governor powersave
        #sudo cpupower idle-set --enable-all
        #;;

    #max)
        #sudo cpupower frequency-set --governor performance
        #sudo cpupower frequency-set --related --governor performance

        #sudo cpupower frequency-set --freq 3.20GHz # don t do this, comment away
        #sudo cpupower frequency-set --min 4.30GHz

        #sudo cpupower idle-set --disable 3
        #sudo cpupower idle-set --disable 2
        #sudo cpupower idle-set --disable 1
        #sudo cpupower idle-set --disable 0
        #;;

#esac

#sudo cpupower frequency-info
#sudo cpupower monitor

# 1.1 4.3

#!/bin/bash

# Helper function to set EPP (Energy Performance Preference)
set_epp() {
    for file in /sys/devices/system/cpu/cpu*/cpufreq/energy_performance_preference; do
        [ -f "$file" ] && echo "$1" | sudo tee "$file" > /dev/null
    done
}

case $1 in

    max)
        echo "Applying MAX Performance (osu!lazer Mode)..."
        # 1. Enable Sleep States
        # Allows unused cores to sleep so the game cores get all the power/speed.
        sudo cpupower idle-set --enable-all

        # 2. Set Governor to Performance
        sudo cpupower frequency-set --governor performance --related

        # 3. Set Hardware Hint to 'performance'
        set_epp performance

        # 4. Reset Frequency Limits
        # We set min to your hardware lowest (403MHz) to allow full range boosting.
        sudo cpupower frequency-set --min 403MHz
        sudo cpupower frequency-set --max 4.47GHz
        ;;

    default)
        echo "Applying DEFAULT Settings (Balanced)..."
        sudo cpupower idle-set --enable-all

        # 'powersave' is the standard governor for amd-pstate (it scales dynamically)
        sudo cpupower frequency-set --governor powersave --related

        # 'balance_performance' is the default hardware hint
        set_epp balance_performance

        # Reset limits
        sudo cpupower frequency-set --min 403MHz
        sudo cpupower frequency-set --max 4.47GHz
        ;;

    min)
        echo "Applying MIN Power (Battery Saver)..."
        sudo cpupower idle-set --enable-all
        sudo cpupower frequency-set --governor powersave --related

        # Tell hardware to save as much power as possible
        set_epp power

        # Cap frequency to 2.0GHz to save battery
        sudo cpupower frequency-set --min 403MHz
        sudo cpupower frequency-set --max 2.0GHz
        ;;

    *)
        echo "Usage: $0 {max|default|min}"
        exit 1
        ;;

esac

echo "------------------------------------------------"
echo "Current Configuration:"
sudo cpupower frequency-info | grep "current policy"
echo "------------------------------------------------"
echo "Monitoring (Press Ctrl+C to stop)..."
sudo cpupower monitor

cat /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor