Actualización (28 / 05 / 2024): Disponemos de amplio stock de todos nuestros productos, encuéntranos también en y    Comprar ahora

Medición del rendimiento de la aplicación SBC

Rendimiento SBC

Durante el diseño de la aplicación, debe saber qué esperar del SBC en términos de velocidad de cómputo para diseñar una aplicación que pueda procesar todos los datos entrantes.

En este tutorial presentamos un método para medir el rendimiento de SBC en diferentes tareas y cómo extrapolarlo al tamaño de su aplicación.

Midiendo el código

Para medir el código usamos funciones simples que calculan el tiempo requerido para enviar o recibir un montón de bytes. Con esa información, tenemos suficiente para calcular el uso de la CPU y dimensionar una aplicación.

A continuación le damos un ejemplo para comparar las operaciones de escritura de GPS. Simplemente envía datos ficticios al GPS y mide su tiempo. El valor de retorno tiene unidades de [bytes/segundo]

def benchmark_gps_write( chunk=64, N=128, baudrate=921600 ):
    gps = sbc.Gps( 1, baudrate )
    buf = bytearray( chunk )

    t0 = time.ticks_us()
    for i in range( N ): # send len(buf) bytes N times
        gps.write( buf )
    t1 = time.ticks_us()
    
    dt_s = time.ticks_diff( t1, t0 )*1e-6 # Compute time
    size_bytes = chunk*N
    
    return size_bytes/dt_s

Resultados

TaskResultUnits
ubx_parser3.25e+04[B/s]
ubx_builder1.09e+05[B/s]
nmea_parser1.47e+04[B/s]
flash_write1.82e+04[B/s]
flash_read4.93e+05[B/s]
sd_write4.46e+04[B/s]
sd_read4.26e+05[B/s]
gps_write8.85e+04[B/s]
imu_read4.68e+02[Samples/s]
ahrs_update1.01e+05[Calls/s]
gc_collect4.89e+02[Calls/s]
printf7.67e+05[B/s]

Cálculo del uso de la CPU

Como se muestra en la tabla, el SBC puede enviar 88 [KB/s] al GPS, utilizando el 100 % de la CPU. También significa que si su aplicación envía 8.8[KB/s] al GPS, usa el 10% de la CPU.

La misma idea se puede aplicar a cualquier aplicación para obtener una aproximación del uso de la CPU y dimensionar su aplicación correctamente.

Si te ha gustado este contenido, puedes seguirnos en Twitter, YouTube, Facebook or Etiqueta LinkedIn para mantenerse actualizado de contenido como este.

¿Tienes alguna pregunta o solicitud?
¡Contáctenos! ¡Responderemos <24 horas!

Ícono
Contacto ArduSimple
Cerrar

¿Quieres saber más sobre GPS/RTK?

1. Nuestro equipo de ingeniería se pondrá en contacto contigo para resolver cualquier duda
2. Lo mantendremos informado sobre promociones y lanzamientos de nuevos productos.
3. Solo sabrá de nosotros cuando tengamos noticias importantes, no enviaremos spam a su correo electrónico.