Imhoteph
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
Hi zusammen, es gibt ja diverse Programme zur Überwachung der CPU Last etc., aber bei allen die ich bisher gesehen habe (htop, nvtop, bashtop...) fehlt die Überwachung der GPU. Gibt es dafür ein passendes Programm? Kann man die Systemlast auch als Overlay auf dem Desktop Hintergrund einblenden?
|
DJKUhpisse
Supporter, Wikiteam
Anmeldungsdatum: 18. Oktober 2016
Beiträge: 18174
Wohnort: in deinem Browser, hier auf dem Bildschirm
|
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
Das beste von allen, vereint und ressourcenschonend in einem Programm:
nvtop bleibt aber trotzdem eine bequeme Möglichkeit, wenn man schauen möchte ob die GPU gerade Compute Aufgaben erledigt mit NVENC, NVDEC, oder CUDA, oder ob sie mur Pixel malt.
|
Imhoteph
(Themenstarter)
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
trollsportverein schrieb: Das beste von allen, vereint und ressourcenschonend in einem Programm:
Danke für den Tipp. Ich habe btop wie auf github beschrieben installiert.
Leider wird mir aber keine GPU Auslastung angezeigt. In der Anleitung auf github steht zur GPU Unterstützung, dass ich den NVIDIA Treiber und die Bibliothek nvidia-ml installiert haben muss. Das ist bei mir beides der Fall, aber ich finde dennoch keine Anzeigemöglichkeit für GPU Auslastung.
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 | imhoteph@T3610:~$ nvidia-smi
Fri Jan 31 22:36:51 2025
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.256.02 Driver Version: 470.256.02 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro K2000 Off | 00000000:02:00.0 On | N/A |
| 32% 49C P8 N/A / N/A | 379MiB / 1998MiB | 0% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 2191 G /usr/lib/xorg/Xorg 147MiB |
| 0 N/A N/A 2355 G /usr/bin/gnome-shell 44MiB |
| 0 N/A N/A 3438 G ...40a731e7d47bdd4cb3a3fb1a8 83MiB |
| 0 N/A N/A 4812 G ...b/thunderbird/thunderbird 98MiB |
+-----------------------------------------------------------------------------+
imhoteph@T3610:~$ ldconfig -p | grep libnvidia-ml
libnvidia-ml.so.1 (libc6,x86-64) => /lib/x86_64-linux-gnu/libnvidia-ml.so.1
libnvidia-ml.so.1 (libc6) => /lib/i386-linux-gnu/libnvidia-ml.so.1
libnvidia-ml.so (libc6,x86-64) => /lib/x86_64-linux-gnu/libnvidia-ml.so
libnvidia-ml.so (libc6) => /lib/i386-linux-gnu/libnvidia-ml.so
imhoteph@T3610:~$
|
Was mache ich falsch?
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
Mich wundert, dass bei deiner alten Quadro K2000 mit Kepler GPU-Architektur keine Strommessung mit nvidia-smi möglich ist. Fehlen der Hardware da schlichtweg die Sensoren, so dass die Werte bei dieser Hardware nicht abgefragt werden können? Ist Lm sensors nicht installiert?
|
Imhoteph
(Themenstarter)
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
Ich habe die Sensoren gesucht und ergänzt:
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
103 | imhoteph@T3610:~$ sudo sensors-detect
[sudo] Passwort für imhoteph:
# sensors-detect version 3.6.0
# System: Dell Inc. Precision T3610 [00]
#Hier lasse ich ein paar Zeilen aus bis wir zur GPU kommen
Do you want to probe the I2C/SMBus adapters now? (YES/no): yes
Using driver `i2c-i801' for device 0000:00:1f.3: Intel Patsburg (PCH)
Next adapter: SMBus I801 adapter at f000 (i2c-0)
Do you want to scan it? (YES/no/selectively): yes
Next adapter: NVIDIA i2c adapter 0 at 2:00.0 (i2c-1)
Do you want to scan it? (yes/NO/selectively): yes
Next adapter: NVIDIA i2c adapter 6 at 2:00.0 (i2c-2)
Do you want to scan it? (yes/NO/selectively): yes
Next adapter: NVIDIA i2c adapter 8 at 2:00.0 (i2c-3)
Do you want to scan it? (yes/NO/selectively): yes
Client found at address 0x49
Probing for `National Semiconductor LM75'... No
Probing for `National Semiconductor LM75A'... No
Probing for `Dallas Semiconductor DS75'... No
Probing for `National Semiconductor LM77'... No
Probing for `Analog Devices ADT7410/ADT7420'... No
Probing for `Maxim MAX6642'... No
Probing for `Texas Instruments TMP435'... No
Probing for `National Semiconductor LM73'... No
Probing for `National Semiconductor LM92'... No
Probing for `National Semiconductor LM76'... No
Probing for `Maxim MAX6633/MAX6634/MAX6635'... Success!
(confidence 2, driver `lm92')
Probing for `NXP/Philips SA56004'... No
Probing for `SMSC EMC1023'... No
Probing for `SMSC EMC1043'... No
Probing for `SMSC EMC1053'... No
Probing for `SMSC EMC1063'... No
Next adapter: NVIDIA i2c adapter 10 at 2:00.0 (i2c-4)
Do you want to scan it? (yes/NO/selectively): yes
Adapter cannot be probed, skipping.
Next adapter: NVIDIA i2c adapter 12 at 2:00.0 (i2c-5)
Do you want to scan it? (yes/NO/selectively): yes
Adapter cannot be probed, skipping.
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `lm92':
* Bus `NVIDIA i2c adapter 8 at 2:00.0'
Busdriver `nvidia', I2C address 0x49
Chip `Maxim MAX6633/MAX6634/MAX6635' (confidence: 2)
Driver `coretemp':
* Chip `Intel digital thermal sensor' (confidence: 9)
To load everything that is needed, add this to /etc/modules:
#----cut here----
# Chip drivers
coretemp
lm92
#----cut here----
If you have some drivers built into your kernel, the list above will
contain too many modules. Skip the appropriate ones!
Do you want to add these lines automatically to /etc/modules? (yes/NO)yes
Successful!
Monitoring programs won't work until the needed modules are
loaded. You may want to run '/etc/init.d/kmod start'
to load them.
Unloading cpuid... OK
imhoteph@T3610:~$ /etc/init.d/kmod start
Starting kmod (via systemctl): kmod.service.
imhoteph@T3610:~$ nvidia-smi
Fri Jan 31 23:12:32 2025
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 470.256.02 Driver Version: 470.256.02 CUDA Version: 11.4 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 Quadro K2000 Off | 00000000:02:00.0 On | N/A |
| 32% 49C P0 N/A / N/A | 405MiB / 1998MiB | 6% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 2191 G /usr/lib/xorg/Xorg 159MiB |
| 0 N/A N/A 2355 G /usr/bin/gnome-shell 85MiB |
| 0 N/A N/A 3438 G ...40a731e7d47bdd4cb3a3fb1a8 55MiB |
| 0 N/A N/A 4812 G ...b/thunderbird/thunderbird 98MiB |
+-----------------------------------------------------------------------------+
imhoteph@T3610:~$
|
Leider sehe ich nach wie vor keine GPU Infos in gtop
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
Mach mal einen Reboot, damit sensors funktioniert. Im Terminal dann:
/usr/bin/sensors
|
Imhoteph
(Themenstarter)
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
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 | imhoteph@T3610:~$ /usr/bin/sensors
coretemp-isa-0000
Adapter: ISA adapter
Package id 0: +52.0°C (high = +86.0°C, crit = +100.0°C)
Core 0: +48.0°C (high = +86.0°C, crit = +100.0°C)
Core 1: +50.0°C (high = +86.0°C, crit = +100.0°C)
Core 2: +51.0°C (high = +86.0°C, crit = +100.0°C)
Core 3: +51.0°C (high = +86.0°C, crit = +100.0°C)
dell_smm-isa-0000
Adapter: ISA adapter
Processor Fan: 995 RPM (min = 0 RPM, max = 4520 RPM)
Other Fan: 617 RPM (min = 0 RPM, max = 4260 RPM)
Other Fan: 608 RPM (min = 0 RPM, max = 4260 RPM)
Other: +51.0°C
Other: N/A
SODIMM: +43.0°C
SODIMM: +37.0°C
Ambient: +16.0°C
Ambient: +16.0°C
CPU: +40.0°C
CPU: N/A
Ambient: +40.0°C
Ambient: +41.0°C
imhoteph@T3610:~$ btop
|
btop siehe anhang
- Bilder
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
Was für eine Version ist das BTOP++, wie ist es installiert worden, und ist es mit musl oder mit glib gebaut?
|
Imhoteph
(Themenstarter)
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
ich habe die Installationsdatei wie in der btop github Hilfe beschrieben heruntergeladen.
Diese Version: https://github.com/aristocratos/btop/releases/download/v1.4.0/btop-x86_64-linux-musl.tbz
Dann entpackt und installiert mit
Version ist 1.4.0 (siehe Screenshot)
musl oder glib weiß ich nicht... was nimmt denn make?
- Bilder
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
Standard auf Ubuntu ist die glib, also die GNU C Library. Die Binaries dort sind aber mit musl gebaut. See Compilation Linux for more info on how to compile with gpu monitoring support.
Ich baue und installiere mir BTOP++ sehr bequem frisch aus dem GIT mit einem alias in der $HOME/.bahsrc :
alias bneu='INSTALLATIONSDISK=$HOME/Installationsdisk && \
BTOP_BASE=$HOME/Installationsdisk/btop++ && \
BTOP_SRC=$BTOP_BASE/btop && \
[ ! -d $INSTALLATIONSDISK ] && mkdir -pv $INSTALLATIONSDISK || echo "$INSTALLATIONSDISK exists" && \
[ ! -d $BTOP_BASE ] && mkdir -pv $BTOP_BASE || echo "$BTOP_BASE exists" && \
[ ! -d $BTOP_SRC ] && git clone https://github.com/aristocratos/btop.git $BTOP_SRC && \
printf "\n \033[45m\033[1;36m==> BTOP++ Sourcecode cloned. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" || \
printf "\n \033[45m\033[1;36m==> BTOP++ Sourcecode found. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \
printf "\n \033[45m\033[1;36m==> Update BTOP++ Sourcecode. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \
git -C $BTOP_SRC pull && echo "git pull done." || echo "No git pull." && \
printf "\n \033[45m\033[1;36m==> Uninstall old BTOP++. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \
sudo make uninstall PREFIX=/usr -C $BTOP_SRC && echo "Old BTOP++ uninstalled." || echo "Can´t BTOP++ uninstall." && \
printf "\n \033[45m\033[1;36m==> Compile BTOP++. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \
[ -d $BTOP_SRC/obj ] && yes | rm -rf $BTOP_SRC/obj && echo "Builddir removed, OK" || echo "No need remove Builddir, OK." && \
mkdir -pv $BTOP_SRC/obj && \
sudo mount -v tmpfs $BTOP_SRC/obj -t tmpfs -o mode=777 && \
[ -d $BTOP_SRC/bin ] && yes | rm -rf $BTOP_SRC/bin && echo "Builddir removed, OK" || echo "No need remove Builddir, OK." && \
mkdir -pv $BTOP_SRC/bin && \
sudo mount -v tmpfs $BTOP_SRC/bin -t tmpfs -o mode=777 && \
time make -j $(nproc --all) -C $BTOP_SRC \
ADDFLAGS=-march=native STRIP=true OPTFLAGS="-O3 -ftree-loop-vectorize -flto=`nproc --all` \
-fcf-protection=full -fuse-ld=mold -Wno-dangling-reference" && \
printf "\n \033[45m\033[1;36m==> Install fresh BTOP++. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \
sudo porg -lp btop "make install -j $(nproc --all) PREFIX=/usr -C $BTOP_SRC" && \
printf "\n \033[45m\033[1;36m==> setuid for BTOP++ binary. \033[0m\033[42m\033[1;36m ==> ... \033[0m \n \n" && \
sudo make PREFIX=/usr setuid -C $BTOP_SRC && \
printf "\n \033[45m\033[1;36m==> BTOP++ successful install. \033[0m\033[42m\033[1;36m ==> Done.\033[0m \n \n" && \
printf "\n \033[45m\033[1;36m==> BTOP++ deinstall: \033[0m\033[43m\033[1;36m sudo porg -rv btop <== \033[0m \n \n" || \
printf "\n \033[41m\033[1;36m==> BTOP++ build or install failed.\033[0m \n \n"
cd $HOME ; \
sudo umount -v $BTOP_SRC/obj ; \
[ -d $BTOP_SRC/obj ] && yes | rm -rf $BTOP_SRC/obj && echo "Builddir cleaned." || echo "Builddir was clean." ; \
sudo umount -v $BTOP_SRC/bin ; \
[ -d $BTOP_SRC/bin ] && yes | rm -rf $BTOP_SRC/bin && echo "Builddir cleaned." || echo "Builddir was clean." ; \
cd $HOME'
Außer dem üblichen Klimbim zum compilern:
... nutzt das auch mold als Linker, und porg zur Verwaltung, siehe im Wiki:
Nach dem hinein editieren vom alias in die $HOME/.bahsrc muss diese neu eingelesen werden:
source $HOME/.bahsrc
Dann ist der alias zur Nutzung bereit.
|
Imhoteph
(Themenstarter)
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
Danke für deinen alias.
Wieso erzeugst du ein tempfs und mountest das um zu compilieren?
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
tmpfs im Arbeitspeicher ist um riesige Größenordungen schneller als jede noch so gute SSD. Und obendrein schont es die SSD, ist doch beim compilern viel zu schreiben und dann wieder zu löschen. Es wäre doch Unsinn, das alles unnötig auf den Massenspeicher schreiben zu lassen zum ausbremsen und Verschleiß verursachen, so lange man das auch im Arbeitsspeicher erledigen kann.
|
Imhoteph
(Themenstarter)
Anmeldungsdatum: 11. Juni 2011
Beiträge: 114
Wohnort: Schwarzwald
|
Leider hat auch das deinstallieren und compilieren auf deine Weise nicht zum gewünschten Ergebnis geführt. Die Version ist auch die gleiche.
|
trollsportverein
Anmeldungsdatum: 21. Oktober 2010
Beiträge: 4631
|
Ist es konfiguriert? Siehe Anhänge.
- Screenshot-BTOP-GPU-Konfiguration.avif (146.2 KiB)
- Download Screenshot-BTOP-GPU-Konfiguration.avif
- Screenshot-BTOP-GPU-Display.avif (19.7 KiB)
- Download Screenshot-BTOP-GPU-Display.avif
|