icono de avión
Envíos a
Envío al día siguiente desde Europa con DHL. ¡Recibe tu pedido en todo el mundo en 2-4 días!
Compre en línea y reciba su pedido en 2 a 4 días a través de nuestros socios locales, ¡como comprar localmente!
Enviamos desde Europa con DHL, ¡recibe tu pedido sin sorpresas en 1-3 días!
Envío al día siguiente desde Europa con DHL. ¡Recibe tu pedido en 14-21 días!
Entregamos en Singapur en 2-4 días hábiles. ¿Necesita ayuda? Contacte con nuestro equipo al +65 3174 3631.
Entregamos a Hong Kong con DHL en 2-4 días hábiles. ¿Necesita ayuda? Contacte con nuestro equipo al +852 5808 4561.
Entregamos a China en 2-4 días hábiles. ¿Necesita ayuda? Contacte con nuestro equipo al +86 18367375467
Entregamos a Taiwán en 2-4 días hábiles. ¿Necesita ayuda? Contacte con nuestro equipo al +886 2 7734 4400.
Actualización (23 / 01 / 2026): Disponemos de amplio stock de todos nuestros productos, encuéntranos también en    Comprar ahora

Medición del rendimiento de la aplicación SBC

Rendimiento 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 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.