Cómo ver la temperatura de la tarjeta de video (Nvidia, ATI, Intel ...)

62

¿Hay un comando (Vía terminal) para ver la temperatura de cualquier tarjeta de video.

Ya probé sensorscon el sensors-detectaplicado. No detecta, por ejemplo, las temperaturas de la tarjeta de video Nvidia y ATI.

Luis Alvarado
fuente

Respuestas:

60

Sí, hay un comando.

Detección de sensores

En primer lugar, debes buscar sensores:

sudo apt-get install lm-sensors
sudo sensors-detect

Desde lynx lúcido, debe escribir:

sudo service module-init-tools start

Si está ejecutando otro tipo de versión de Ubuntu:

sudo /etc/init.d/module-init-tools start

Para guardar los resultados de la detección.

Mostrar datos del sensor

Ahora, para mostrar las temperaturas, escriba:

sensors

Ahora deberías ver algo así:

El resultado de mis sensores

No tengo muchos sensores, por cierto :)

Visualización de la temperatura de la GPU NVIDIA

Si está utilizando un tipo de GPU NVIDIA:

sudo apt-get install nvclock

Después de instalarlo, escriba nvclock -Tpara mostrar la temperatura.

También puedes escribir nvidia-settings -q gpucoretemp.

Espero que esto te ayude,

omnidan
fuente
55
Gracias Daniel, pero los sensores no detectan la temperatura del video para casos como ati y nvidia. Debería haberlo puesto en la pregunta pero lo olvidé. +1 para el ejemplo completo.
Luis Alvarado
1
@CYREX Después de algunas investigaciones descubrí que también muestra la temperatura de la GPU si instala libsensors3 ANTES de detectar sensores. Intente: sudo apt-get install libsensors3y luego siga mis pasos nuevamente.
omnidan
No, tampoco suerte. Solo muestra la temperatura de la CPU.
Luis Alvarado
Algunos programas realizados por nvidia / ati muestran la temperatura de la GPU.
omnidan
@CYREX Agregué instrucciones para mostrar la temperatura de un nvidia gpu, mira mi respuesta editada.
omnidan
76

Una alternativa para las tarjetas nvidia es usar nvidia-smi: el "programa de interfaz de administración del sistema NVIDIA".

user@box:~$ nvidia-smi -q -d temperature
GPU 0:
            Product Name            : GeForce 210
            PCI ID                  : a6510de
            Temperature             : 39 C

O para generar solo el valor numérico en grados Celsius:

user@box:~$ nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader
39
drgrog
fuente
Optirun nvidia-smi -q -d temperatura
Dawid Drozd
En caso de que alguien se lo haya perdido, nvidia-settings -q gpucoretempes otro método.
Mateen Ulhaq
17

El comando ya mencionado para nvidia (en mi instalación de OpenElec):

nvidia-smi

También dio información adicional:

+------------------------------------------------------+                       
| NVIDIA-SMI 3.295.71   Driver Version: 295.71         |                       
|-------------------------------+----------------------+----------------------+
| Nb.  Name                     | Bus Id        Disp.  | Volatile ECC SB / DB |
| Fan   Temp   Power Usage /Cap | Memory Usage         | GPU Util. Compute M. |
|===============================+======================+======================|
| 0.  GeForce GT 520            | 0000:01:00.0  N/A    |       N/A        N/A |
|  N/A   52 C  N/A   N/A /  N/A |  17%  169MB / 1023MB |  N/A      Default    |
|-------------------------------+----------------------+----------------------|
| Compute processes:                                               GPU Memory |
|  GPU  PID     Process name                                       Usage      |
|=============================================================================|
|  0.           Not Supported                                                 |
+-----------------------------------------------------------------------------+
David
fuente
9

Si desea ver la temperatura en su terminal para monitorear, puede usar watchlos comandos que se dieron en las otras respuestas (por ejemplo, @ drgrog's). Por ejemplo, para actualizar la temperatura cada 5 segundos:

watch -n 5 nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader
BenC
fuente
4

Para nvidia hay un nvidia-settingspaquete que incluye una interfaz gráfica de usuario para ver la temperatura. No recuerdo si hay una herramienta de modo de texto allí.

Algunos adaptadores de gráficos Intel informan su temperatura a través de acpi y puede leerla a través del sensorscomando del paquete del mismo nombre.

billar
fuente
1

Temperatura de GPU con Conky

Conky es un monitor de sistema ligero (en recursos, no características) popular en Linux. Puede usarlo para mostrar constantemente la temperatura de la GPU junto con otros elementos del sistema que desea seguir.

La mayoría de las computadoras portátiles con GPU nVidia también incluyen una GPU integrada Intel (iGPU) para usar con batería.

Mi pantalla Conky cambia dependiendo de si Intel o nVidia está seleccionado.

A continuación se muestran los GIF para nVidia e Intel antes y en ejecución glxgearspara gravar la GPU. Intentaré encontrar una prueba de gráficos más exigente que glxgearsen el futuro.

Pantalla para laptop con NVIDIA activa

Así es como se ve mi Conky cuando prime-select nvidiaestá activo:

gpu temp nvidia

Inicialmente hay poca carga en la GPU nVidia y está funcionando a 746 MHz y es de 55 grados centígrados. Después de ejecutar glxgearspicos de velocidad de GPU a una velocidad máxima de 1037 MHz y la temperatura sube a 58 grados centígrados.

Pantalla para computadora portátil con GPU integrada Intel activa

Así es como se ve mi Conky cuando prime-select intelestá activo:

GPU de Intel

Inicialmente, hay poca carga en la GPU integrada Intel (iGPU) y la temperatura (de la CPU) es de 49 grados centígrados. ¡Después de correr, glxgearsla temperatura de la CPU sube a 73 grados Celsius!

Código Conky

Aquí está el código conky relevante para arriba:

#------------+
# Temperature|
#------------+
#${color1}All CPUs ${color green}${cpu}% ${goto 131}${color1}Temp: ${color green}${execpi .001 cat /sys/class/thermal/thermal_zone7/temp | cut -c1-2}°C ${alignr}${color1}Up: ${color green}$uptime
# Next line is for kernel >= 4.13.0-36-generic
${color1}All CPUs ${color green}${cpu}% ${goto 131}${color1}Temp: ${color green}${hwmon 1 temp 1}°C ${alignr}${color1}Up: ${color green}$uptime
# Next line is for temperature with Kerenel 4.4
#${color1}All CPUs ${color green}${cpu}% ${goto 131}${color1}Temp: ${color green}${hwmon 0 temp 1}°C ${alignr}${color1}Up: ${color green}$uptime
${color green}$running_processes ${color1}running of ${color green}$processes ${color1}loaded processes.
${color1}Load Average 1-5-15 minutes: ${alignr}${color green}${execpi .001 (awk '{printf "%s/", $1}' /proc/loadavg; grep -c processor /proc/cpuinfo;) | bc -l | cut -c1-4} ${execpi .001 (awk '{printf "%s/", $2}' /proc/loadavg; grep -c processor /proc/cpuinfo;) | bc -l | cut -c1-4} ${execpi .001 (awk '{printf "%s/", $3}' /proc/loadavg; grep -c processor /proc/cpuinfo;) | bc -l | cut -c1-4}
#------------+
# Intel iGPU |
#------------+
${color orange}${hr 1}${if_match "intel" == "${execpi 99999 prime-select query}"}
${color2}${voffset 5}Intel® Skylake GT2 HD 530 iGPU @${alignr}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_cur_freq_mhz)} MHz
${color}${goto 13}Min. Freq:${goto 120}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_min_freq_mhz)} MHz${color}${goto 210}Max. Freq:${alignr}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_max_freq_mhz)} MHz
${color orange}${hr 1}${else}
#------------+
# Nvidia GPU |
#------------+
${color2}${voffset 5}${execpi .001 (nvidia-smi --query-gpu=gpu_name --format=csv,noheader)} ${color1}@ ${color green}${execpi .001 (nvidia-smi --query-gpu=clocks.sm --format=csv,noheader)} ${alignr}${color1}Temp: ${color green}${execpi .001 (nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader)}°C
${color1}${voffset 5}Ver: ${color green}${execpi .001 (nvidia-smi --query-gpu=driver_version --format=csv,noheader)} ${color1} P-State: ${color green}${execpi .001 (nvidia-smi --query-gpu=pstate --format=csv,noheader)} ${alignr}${color1}BIOS: ${color green}${execpi .001 (nvidia-smi --query-gpu=vbios_version --format=csv,noheader)}
${color1}${voffset 5}GPU:${color green}${execpi .001 (nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader)} ${color1}Ram:${color green}${execpi .001 (nvidia-smi --query-gpu=utilization.memory --format=csv,noheader)} ${color1}Pwr:${color green}${execpi .001 (nvidia-smi --query-gpu=power.draw --format=csv,noheader)} ${alignr}${color1}Freq: ${color green}${execpi .001 (nvidia-smi --query-gpu=clocks.mem --format=csv,noheader)}
${color orange}${hr 1}${endif}
WinEunuuchs2Unix
fuente
0

Después de instalar nvclock, solo ejecuta:

nvidia-settings

En un terminal funcionó bien en la tarjeta GeForce 210 en la parte superior de Ubuntu 14lts. Obtiene una GUI muy agradable y puede verificar la temperatura en grados Celsius en GPU 0> Configuración térmica.

keeper32
fuente