Usa como base el script de la distro AikonCWD que realiza alguna prueba más (disco duro y velocidad de internet), pero lo he centrado en el test de cpu y memoria. El script original de AikonCWD lo podeis descargar de aquí: rpi-benchmark.sh
El script instala el paquete sysbench y es necesario ejecutarlo como root (sudo sh test.sh). Además le podeis pasar como argumento el número de veces que quereis que haga cada test (ej: sudo sh test.sh 5 <-- hará cada test 5 veces).
El script:
Código: Seleccionar todo
#!/bin/bash
# Script para realizar un test a la raspberry pi
# Basado en el script de AikonCwd podeis descargarlo de
# https://raw.githubusercontent.com/aikoncwd/rpi-benchmark/master/rpi-benchmark.sh
# Instalar sysbench
apt-get install -y sysbench
# Preparar numero de pases
if [ -z $1]
then
pasadas=1
else
pasadas=$1
fi
# Comienzo del test
clear
sync
echo "Raspberry Pi Test"
# Mostrar información del sistema
echo "Información del sistema:"
vcgencmd measure_temp
vcgencmd get_config int | grep arm_freq
vcgencmd get_config int | grep core_freq
vcgencmd get_config int | grep sdram_freq
vcgencmd get_config int | grep gpu_freq
printf "reloj sd="
grep "actual clock" /sys/kernel/debug/mmc0/ios 2>/dev/null | awk '{printf("%0.3f MHz", $3/1000000)}'
echo "\n"
echo "Ejecutando test de la CPU..."
for pase in `seq 1 $pasadas`;
do
if [ $pasadas -gt 1 ]
then
echo "Pase $pase de $pasadas \n"
fi
sysbench --num-threads=4 --validate=on --test=cpu --cpu-max-prime=5000 run | grep 'total time:\|min:\|avg:\|max:' | tr -s [:space:]
vcgencmd measure_temp
echo "\n"
done
echo "\n"
echo "Ejecutando test de hilos..."
for pase in `seq 1 $pasadas`;
do
if [ $pasadas -gt 1 ]
then
echo "Pase $pase de $pasadas \n"
fi
sysbench --num-threads=4 --validate=on --test=threads --thread-yields=4000 --thread-locks=6 run | grep 'total time:\|min:\|avg:\|max:' | tr -s [:space:]
vcgencmd measure_temp
echo "\n"
done
echo "\n"
echo "Ejecutando test de memoria..."
for pase in `seq 1 $pasadas`;
do
if [ $pasadas -gt 1 ]
then
echo "Pase $pase de $pasadas \n"
fi
sysbench --num-threads=4 --validate=on --test=memory --memory-block-size=1K --memory-total-size=3G --memory-access-mode=seq run | grep 'Operations\|transferred\|total time:\|min:\|avg:\|max:' | tr -s [:space:]
vcgencmd measure_temp
echo "\n"
done
echo "\nFin del test"
exit 0
Con ajustes por defecto:
Código: Seleccionar todo
Raspberry Pi Test
Información del sistema:
temp=36.5'C
arm_freq=1200
core_freq=400
sdram_freq=450
gpu_freq=300
reloj sd=50.000 MHz
Ejecutando test de la CPU...
total time: 20.5710s
min: 6.96ms
avg: 8.22ms
max: 63.63ms
temp=45.6'C
Ejecutando test de hilos...
total time: 16.9866s
min: 4.53ms
avg: 6.79ms
max: 86.84ms
temp=47.8'C
Ejecutando test de memoria...
Operations performed: 3145728 (1857938.88 ops/sec)
3072.00 MB transferred (1814.39 MB/sec)
total time: 1.6931s
min: 0.00ms
avg: 0.00ms
max: 40.08ms
temp=48.3'C
Fin del test
Código: Seleccionar todo
Raspberry Pi Test
Información del sistema:
temp=35.4'C
arm_freq=1400
core_freq=500
sdram_freq=500
gpu_freq=400
reloj sd=50.000 MHz
Ejecutando test de la CPU...
total time: 15.9352s
min: 5.96ms
avg: 6.37ms
max: 47.09ms
temp=49.9'C
Ejecutando test de hilos...
total time: 11.9457s
min: 3.89ms
avg: 4.78ms
max: 51.65ms
temp=52.1'C
Ejecutando test de memoria...
Operations performed: 3145728 (2003880.47 ops/sec)
3072.00 MB transferred (1956.91 MB/sec)
total time: 1.5698s
min: 0.00ms
avg: 0.00ms
max: 19.37ms
temp=51.5'C
Fin del test