User5001
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
Hallo, ich untervolte seit langem erfolgreich meine stromhungrige Radeon RX580 per einfachem Bash-script, dass nach dem Systemstart Takt- und Spannungswerte in die Datei /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage schreibt. Seit neuestem funktioniert das allerdings nicht mehr und ich habe ich sowohl per sudo bzw. su keinerlei zugriff mehr auf die Datei. Auch kann ich in dem Ordner als root keine neuen Dateien erstellen, bestehende verändern oder löschen.
Dementsprechend bekomme ich einen Fehler, wenn ich z.B. eine Zeile aus dem Script ausführe: | michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$ sudo sh -c "echo 's 1 715 769' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sh: 1: echo: echo: I/O error
michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$
|
Woran kann das liegen? Bei den Dateirechten (siehe Bild im Anhang) kann ich keinen Fehler sehen (kenne mich damit aber auch nicht sonderlich gut aus). Daher bin ich für Tipps dankbar.
- Bilder
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
Probier mal echo "blablubb" | sudo tee /pfad/zur/zieldatei
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: Probier mal echo "blablubb" | sudo tee /pfad/zur/zieldatei
Dann bekomme ich | michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$ echo "blablubb" | sudo tee pp_od_clk_voltage
blablubb
tee: pp_od_clk_voltage: Das Argument ist ungültig
michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$
|
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
Zeig mal ls -lna /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: Zeig mal ls -lna /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0
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 | michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$ ls -lna /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0
insgesamt 0
drwxr-xr-x 14 0 0 0 Sep 16 20:53 .
drwxr-xr-x 12 0 0 0 Sep 16 20:53 ..
-r--r--r-- 1 0 0 4096 Sep 16 20:53 aer_dev_correctable
-r--r--r-- 1 0 0 4096 Sep 16 20:53 aer_dev_fatal
-r--r--r-- 1 0 0 4096 Sep 16 20:53 aer_dev_nonfatal
-r--r--r-- 1 0 0 4096 Sep 16 20:53 ari_enabled
-r--r--r-- 1 0 0 4096 Sep 16 20:53 boot_vga
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 broken_parity_status
-r--r--r-- 1 0 0 4096 Sep 16 20:53 class
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 config
-r--r--r-- 1 0 0 4096 Sep 16 20:53 consistent_dma_mask_bits
-r--r--r-- 1 0 0 4096 Sep 16 20:53 current_link_speed
-r--r--r-- 1 0 0 4096 Sep 16 20:53 current_link_width
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 d3cold_allowed
-r--r--r-- 1 0 0 4096 Sep 16 20:53 device
-r--r--r-- 1 0 0 4096 Sep 16 20:53 dma_mask_bits
lrwxrwxrwx 1 0 0 0 Sep 16 20:53 driver -> ../../../../bus/pci/drivers/amdgpu
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 driver_override
drwxr-xr-x 4 0 0 0 Sep 16 20:53 drm
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 enable
drwxr-xr-x 2 0 0 0 Sep 16 21:00 fw_version
-r--r--r-- 1 0 0 4096 Sep 16 20:53 gpu_busy_percent
drwxr-xr-x 3 0 0 0 Sep 16 20:53 graphics
drwxr-xr-x 3 0 0 0 Sep 16 20:53 hwmon
drwxr-xr-x 4 0 0 0 Sep 16 20:53 i2c-10
drwxr-xr-x 4 0 0 0 Sep 16 20:53 i2c-3
drwxr-xr-x 4 0 0 0 Sep 16 20:53 i2c-5
drwxr-xr-x 4 0 0 0 Sep 16 20:53 i2c-7
drwxr-xr-x 4 0 0 0 Sep 16 20:53 i2c-9
lrwxrwxrwx 1 0 0 0 Sep 16 20:53 iommu -> ../../0000:00:00.2/iommu/ivhd0
lrwxrwxrwx 1 0 0 0 Sep 16 20:53 iommu_group -> ../../../../kernel/iommu_groups/13
-r--r--r-- 1 0 0 4096 Sep 16 20:53 irq
drwxr-xr-x 2 0 0 0 Sep 16 20:53 link
-r--r--r-- 1 0 0 4096 Sep 16 20:53 local_cpulist
-r--r--r-- 1 0 0 4096 Sep 16 20:53 local_cpus
-r--r--r-- 1 0 0 4096 Sep 16 20:53 max_link_speed
-r--r--r-- 1 0 0 4096 Sep 16 20:53 max_link_width
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_busy_percent
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_info_gtt_total
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_info_gtt_used
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_info_vis_vram_total
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_info_vis_vram_used
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_info_vram_total
-r--r--r-- 1 0 0 4096 Sep 16 21:00 mem_info_vram_used
-r--r--r-- 1 0 0 4096 Sep 16 20:53 modalias
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 msi_bus
drwxr-xr-x 2 0 0 0 Sep 16 20:53 msi_irqs
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 numa_node
-r--r--r-- 1 0 0 4096 Sep 16 21:00 pcie_bw
-r--r--r-- 1 0 0 4096 Sep 16 21:00 pcie_replay_count
drwxr-xr-x 2 0 0 0 Sep 16 20:53 power
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 power_dpm_force_performance_level
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 power_dpm_state
-r--r--r-- 1 0 0 4096 Sep 16 21:00 pp_cur_state
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 pp_dpm_mclk
-rw-r--r-- 1 0 0 4096 Sep 16 21:00 pp_dpm_pcie
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 pp_dpm_sclk
-rw-r--r-- 1 0 0 4096 Sep 16 21:00 pp_force_state
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 pp_mclk_od
-r--r--r-- 1 0 0 4096 Sep 16 21:00 pp_num_states
-rw-r--r-- 1 0 0 4096 Sep 16 21:18 pp_od_clk_voltage
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 pp_power_profile_mode
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 pp_sclk_od
-rw-r--r-- 1 0 0 4096 Sep 16 21:00 pp_table
--w--w---- 1 0 0 4096 Sep 16 20:53 remove
--w------- 1 0 0 4096 Sep 16 20:53 rescan
--w------- 1 0 0 4096 Sep 16 20:53 reset
-r--r--r-- 1 0 0 4096 Sep 16 20:53 resource
-rw------- 1 0 0 268435456 Sep 16 20:53 resource0
-rw------- 1 0 0 268435456 Sep 16 20:53 resource0_wc
-rw------- 1 0 0 2097152 Sep 16 20:53 resource2
-rw------- 1 0 0 2097152 Sep 16 20:53 resource2_wc
-rw------- 1 0 0 256 Sep 16 20:53 resource4
-rw------- 1 0 0 262144 Sep 16 20:53 resource5
-r--r--r-- 1 0 0 4096 Sep 16 20:53 revision
-rw------- 1 0 0 131072 Sep 16 20:53 rom
lrwxrwxrwx 1 0 0 0 Sep 16 20:53 subsystem -> ../../../../bus/pci
-r--r--r-- 1 0 0 4096 Sep 16 20:53 subsystem_device
-r--r--r-- 1 0 0 4096 Sep 16 20:53 subsystem_vendor
-rw-r--r-- 1 0 0 4096 Sep 16 20:53 uevent
-r--r--r-- 1 0 0 4096 Sep 16 21:00 vbios_version
-r--r--r-- 1 0 0 4096 Sep 16 20:53 vendor
michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$
|
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
blablubb
tee: pp_od_clk_voltage: Das Argument ist ungültig *lach* vorhin gar nicht gesehen ... Statt dem Platzhalter blablubb solltest du vielleicht mal deinen gewünschten Wert / Eintrag verwenden?
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: blablubb
tee: pp_od_clk_voltage: Das Argument ist ungültig *lach* vorhin gar nicht gesehen ... Statt dem Platzhalter blablubb solltest du vielleicht mal deinen gewünschten Wert / Eintrag verwenden?
Ups achso ☺ Ok, aber egal, was ich da eingebe, die Fehlermeldung ist immer gleich. Auch wenn ich z.B. die Datei rauskopiere, editiere und wieder reinkopieren will bekomme ich "Das Argument ist ungültig": | michael@michael-desktop:~/Dokumente$ sudo cp pp_od_clk_voltage /sys/devices/pci0000\:00/0000\:00\:03.1/0000\:06\:00.0/pp_od_clk_voltage
[sudo] Passwort für michael:
cp: Fehler beim Schreiben von '/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage': Das Argument ist ungültig
michael@michael-desktop:~/Dokumente$
|
Kann das evtl. auch ein Dateisystem-Problem sein? Ist alles ext4, ich habe vorhin per fsck.mode=force per GRUB auch mal eine Prüfung "angeworfen". Von der Prüfung hab ich beim folgenden Neustart allerdings nichts mitbekommen, geht das so schnell? tune2fs zeigt mir zumindest an, dass eine stattgefunden hat.
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
Zeig mal bitte cat /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: Zeig mal bitte cat /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 | michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$ cat /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage
OD_SCLK:
0: 300MHz 750mV
1: 751MHz 769mV
2: 1048MHz 962mV
3: 1158MHz 1068mV
4: 1240MHz 1162mV
5: 1309MHz 1150mV
6: 1364MHz 1150mV
7: 1411MHz 1150mV
OD_MCLK:
0: 300MHz 750mV
1: 1000MHz 800mV
2: 2000MHz 950mV
OD_RANGE:
SCLK: 300MHz 2000MHz
MCLK: 300MHz 2250MHz
VDDC: 750mV 1200mV
michael@michael-desktop:/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0$
|
Die Werte setzen sich nach jedem Neustart zurück, weshalb ich sie dann immer habe neu scheiben lassen mit: 1
2
3
4
5
6
7
8
9
10
11
12 | michael@michael-desktop:~/Dokumente$ cat undervolt.sh
#!/bin/bash
sudo sh -c "echo 's 7 1340 1050' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 's 6 1295 1050' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 's 5 1245 1000' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 's 4 1180 1000' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 's 3 1100 1000' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 's 2 995 962' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 's 1 715 769' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
sudo sh -c "echo 'c' > /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage"
michael@michael-desktop:~/Dokumente$
|
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
Erstens: Schau dir die Syntax in der Datei an, schaut vollkommen anders aus wie das aus deinem Skript. Eventuell ist das seit einem Kernel-Update so, starte mal mit einem älteren Kernel ▶ Kernel (Abschnitt „lteren-Kernel-starten“)
Zweitens: So wie dein Skript aufgebaut ist, wird meine Erachtens immer eine bereits geschriebene Zeile durch den nächsten Befehl komplett überschrieben (einfache Umleitung per >, ein Hintendranhängen in eine neue Zeile macht man per >>). Kann eigentlich so nie funktioniert haben?!? Probier es aus: echo "1" > testdatei && echo "2" > testdatei && echo "3" > testdatei && cat testdatei
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
Erstell mal eine einfache Textdatei namens neue_werte.txt in deinem Benutzerordner mit folgendem Inhalt (zum Schluss kein Zeilenumbruch!): OD_SCLK:
0: 300MHz 750mV
1: 715MHz 769mV
2: 995MHz 962mV
3: 1100MHz 1000mV
4: 1180MHz 1000mV
5: 1245MHz 1000mV
6: 1295MHz 1050mV
7: 1340MHz 1050mV
OD_MCLK:
0: 300MHz 750mV
1: 1000MHz 800mV
2: 2000MHz 950mV
OD_RANGE:
SCLK: 300MHz 2000MHz
MCLK: 300MHz 2250MHz
VDDC: 750mV 1200mV Dann ein cat neue_werte.txt | sudo tee /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: Erstens: Schau dir die Syntax in der Datei an, schaut vollkommen anders aus wie das aus deinem Skript. Eventuell ist das seit einem Kernel-Update so, starte mal mit einem älteren Kernel ▶ Kernel (Abschnitt „lteren-Kernel-starten“)
Zweitens: So wie dein Skript aufgebaut ist, wird meine Erachtens immer eine bereits geschriebene Zeile durch den nächsten Befehl komplett überschrieben (einfache Umleitung per >, ein Hintendranhängen in eine neue Zeile macht man per >>). Kann eigentlich so nie funktioniert haben?!? Probier es aus: echo "1" > testdatei && echo "2" > testdatei && echo "3" > testdatei && cat testdatei
Das mit dem neuen Kernel habe ich auch schon so grob vermutet... Ich hatte deshalb nochmal das Tutorial rausgesucht, da sieht die Datei aber tatsächlich gleich aus (https://www.reddit.com/r/Amd/comments/agwroj/how_to_overclock_your_amd_gpu_on_linux/). Ich habe eben aber nochmal mit dem 5.4.0-45 gebootet (habe aktuell den ...47), damit lief es leider auch nicht. Das Script hat ansonsten immer funktioniert (ist auch aus dem Tutorial). Mein #!/bin/bash in der ersten Zeile sollte allerdings ein #!/bin/sh sein. Aber generell lässt sich die Datei ja nicht bearbeiten, auch nicht manuell als root, daher funktioniert das Script momentan ja sowieso nicht :/
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: Erstell mal eine einfache Textdatei namens neue_werte.txt in deinem Benutzerordner mit folgendem Inhalt (zum Schluss kein Zeilenumbruch!): OD_SCLK:
0: 300MHz 750mV
1: 715MHz 769mV
2: 995MHz 962mV
3: 1100MHz 1000mV
4: 1180MHz 1000mV
5: 1245MHz 1000mV
6: 1295MHz 1050mV
7: 1340MHz 1050mV
OD_MCLK:
0: 300MHz 750mV
1: 1000MHz 800mV
2: 2000MHz 950mV
OD_RANGE:
SCLK: 300MHz 2000MHz
MCLK: 300MHz 2250MHz
VDDC: 750mV 1200mV Dann ein cat neue_werte.txt | sudo tee /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage
Will leider auch nicht ☹ 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | michael@michael-desktop:~/Dokumente$ cat neue_werte.txt | sudo tee /sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage
OD_SCLK:
0: 300MHz 750mV
1: 715MHz 769mV
2: 995MHz 962mV
3: 1100MHz 1000mV
4: 1180MHz 1000mV
5: 1245MHz 1000mV
6: 1295MHz 1050mV
7: 1340MHz 1050mV
OD_MCLK:
0: 300MHz 750mV
1: 1000MHz 800mV
2: 2000MHz 950mV
OD_RANGE:
SCLK: 300MHz 2000MHz
MCLK: 300MHz 2250MHz
VDDC: 750mV 1200mV
tee: '/sys/devices/pci0000:00/0000:00:03.1/0000:06:00.0/pp_od_clk_voltage': Das Argument ist ungültig
michael@michael-desktop:~/Dokumente$
|
|
dingsbums
Anmeldungsdatum: 13. November 2010
Beiträge: 3553
|
Schon mit einem älteren Kernel getestet?
|
User5001
(Themenstarter)
Anmeldungsdatum: 6. August 2015
Beiträge: 25
|
dingsbums schrieb: Schon mit einem älteren Kernel getestet?
Ja auch das (habs noch in den vorletzen Post von mir eingefügt), leider ändert das auch nichts :/ Ich verstehs nicht... Wenn Ubuntu 20.10 rauskommt, werde ich das System allerdings eh neu aufsetzen, dann sollte das Problem erst mal wieder gelöst sein. Trotzdem sehr nervig und merkwürdig das Ganze.
|