Obtenga uso de CPU y GPU en Raspberry Pi

22

Estoy tratando de descubrir una buena división para la CPU / GPU. ¿Hay alguna manera de monitorear el uso de la CPU y la GPU para ver dónde debo hacer la división?

Cuchara
fuente
1
Esta pregunta puede ser útil para usted.
Jivings
1
OMI, la pregunta es confusa. ¿Desea conocer el uso de memoria para la aplicación y el gráfico (para poder definir la división) o desea conocer la carga actual de CPU / GPU?
keiki
@ otakun85 Quiero saber el uso actual de las aplicaciones para poder tomar una buena decisión sobre dónde hacer la división
Scoop
@Jivings Sí, esa fue una buena pregunta. Es bueno saber que ciertas funciones se activan y desactivan según la cantidad de memoria asignada a la GPU. Si es posible, sería útil saber el uso exacto para determinar en qué categoría
pertenezco

Respuestas:

13

Una solución fácil es hacer que la Raspberry Pi misma administre cómo se divide la RAM entre la CPU y la GPU con división de memoria dinámica . Si bien raspi-config no puede hacer esto por usted, hay configuraciones de ejemplo para /boot/config.txt disponibles en los foros.

shapr
fuente
Gracias por esto. No sabía que el equipo había logrado la división dinámica correcta.
Vincent P
15

Puede obtener una vista en tiempo real del uso de la memoria utilizando el comando topo htop. Es posible que necesite instalar htopsi recibe el mensaje htop: command not found. Suponiendo que está utilizando Raspbian, instálelo ejecutandosudo apt-get install htop

Bert
fuente
2
¿Cuáles son los beneficios sobre los regulares top?
Morgan Courbet
1
htop parece ser "mejor" htop.sourceforge.net/index.php?page=comparison
Scoop
2
htopEs más fácil de usar. Siempre uso en htoplugar detop
w0rldart
Además, si está utilizando una máquina multinúcleo como RPi 2, verá la carga de cada núcleo en un buen gráfico de barras y, por ejemplo, cuando ve 'python' en la lista de tareas, muestra toda la línea de comando para que pueda ver qué programa se está ejecutando
jpwynn
@jpwynn Tenga en cuenta que topsi presiona 1y verá todos los procesadores también. Pero estoy de acuerdo en que htopes generalmente mejor / más fácil de usar.
Alexis Wilke
11

Básicamente, actualmente no puede obtener el uso de GPU. Solo puede obtener el uso de la CPU, pruebe el topcomando.

La actualización Raspbian ahora incluye htopcuál es más detallado y más fácil de leer

En cuanto a la división óptima de CPU / GPU. Realmente depende de para qué estés usando tu RPi. Si no estás jugando videos y juegos (GPU optimizado), entonces dale a la CPU la mayor cantidad de RAM. Además, si está ejecutando "sin cabeza" (no conectado a una pantalla), asigne a la CPU tanta RAM como sea posible.

Chromium actualmente no usa la GPU, verifique el siguiente hilo . Es de uno de los chicos que está desarrollando Chromium para Raspberry Pi. También hay algunos consejos sobre cómo hacer que Chromium se ejecute más rápido en la publicación original.

Vincent P
fuente
así que el problema es que no estoy seguro de si Chrome usa la GPU o no. Y si lo hace, para qué tipo de cosas. Sería útil para el uso de GPU, pero podría no ser posible
Scoop
@Scoop He actualizado mi respuesta en consecuencia.
Vincent P
@Scoop Desde mi prueba de hoy (2018), el soporte para la GPU está incluido en el navegador Chrome. Puedes verlo yendo a chrome://gpu.
Alexis Wilke
7

Para controlar el uso de RAM, puede ejecutar free -h -s 1. Cada segundo ( -s 1), se mostrará una tabla similar:

             total       used       free     shared    buffers     cached
Mem:          438M       146M       292M         0B        15M       102M
-/+ buffers/cache:        28M       409M
Swap:          99M         0B        99M

La línea Mem:es lo que estás buscando.

En el ejemplo anterior, puede ver que, en un total de 438 MB, actualmente se utilizan 146 MB y 292 MB permanecen libres. En mi RPi de 512 MB, configuré 64 MB para la GPU.

Morgan Courbet
fuente
2
Tenga en cuenta que esto no es realmente el uso de la CPU, es el uso de RAM.
Hut8
2

Para monitorear el uso de CPU, RAM y SWAP en Raspbian, puede usar TOP o HTOP.

En la terminal, corre top. TOP está disponible de forma predeterminada y proporciona detalles razonablemente buenos. TOP en Raspbian Terminal RPi3

Pero, creo que HTOP es más útil, con mejores detalles y características disponibles. HTOP no está disponible de forma predeterminada y debe instalarse.

Ejecute sudo apt-get update && sudo apt-get install htopen la Terminal para instalar HTOP.

En la terminal, ejecute htopdespués de que se complete la instalación.

HTOP en Raspbian RPi 3

Espero que ayude.

Dr.Viper
fuente
2

El comando que le dará una idea de lo que está asignando la GPU es sudo vcdbg reloc. La salida se parece a lo que comienza aquí. En mi caso, pude ver que el 236M asignado estaba demasiado cerca del valor en /boot/config.txt->, gpu_mem=256así que tuve que aumentarlo un poco.

Relocatable heap version 4 found at 0x30000000
total space allocated is 236M, with 234M relocatable, 2.3M legacy and 0 offline
1 legacy blocks of size 2359296

free list at 0x3ad9aaa0
352 free memory in 2 free block(s)
largest free block is 320 bytes

0x30000000: legacy block 2.3M
0x30240000: free 320
[  80] 0x30240140: used  608 (refcount 1 lock count 0, size      540, align    4, data 0x30240160, d0rual) 'GLXX_TEXTURE_T'
[  78] 0x302403a0: used  192 (refcount 1 lock count 0, size      128, align    4, data 0x302403c0, D1rual) 'GLXX_BUFFER_INNER_T.storage'
Gurú tercerizado
fuente
1
Puede ser un poco confuso para las personas que haya dicho: "En mi caso, pude ver que el 236M asignado estaba demasiado cerca del valor en /boot/config.txt -> gpu_mem = 256", ya que a primera vista Esto implica que obtuvo el primer número de la primera línea, que siempre será el mismo. La cantidad de memoria libre está realmente en la segunda estrofa, y la cantidad utilizada sería el valor asignado (236M) menos esto. Esos estarán de acuerdo con vcgencmd get_mem relocy vcgencmd get_mem reloc_total. raspberrypi.org/forums/viewtopic.php?t=158157
goldilocks