Mise à jour (10 / 09 / 2024): Nous avons beaucoup de stock de tous nos produits, retrouvez-nous aussi dans et    Achetez maintenant

Mesurer les performances des applications SBC

Performances CSC
Performances CSC

Lors de la conception de l'application, vous devez savoir à quoi vous attendre du SBC en termes de vitesse de calcul pour concevoir une application capable de traiter toutes les données entrantes.

Dans ce tutoriel, nous présentons une méthode pour mesurer les performances SBC dans différentes tâches et comment l'extrapoler pour dimensionner votre application.

Mesurer le code

Pour mesurer le code, nous utilisons des fonctions simples qui calculent le temps nécessaire pour envoyer ou recevoir un tas d'octets. Avec ces informations, nous en avons assez pour calculer l'utilisation du processeur et dimensionner une application.

Ci-dessous, nous vous donnons un exemple pour comparer GPS opérations d'écriture. Il envoie simplement des données factices au GPS et mesure son temps. La valeur de retour a des unités de [octets/seconde]

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

Résultats

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]

Calcul de l'utilisation du processeur

Comme indiqué dans le tableau, le SBC peut envoyer 88 [Ko/s] au GPS, en utilisant 100 % du CPU. Cela signifie également que si votre application envoie 8.8[Ko/s] au GPS, elle utilise les 10 % de CPU.

La même idée peut être appliquée à n'importe quelle application pour obtenir une approximation de l'utilisation du processeur et dimensionner correctement votre application.

Si vous avez aimé ce contenu, vous pouvez nous suivre sur Twitter, YouTube, Facebook or LinkedIn pour rester à jour de contenu comme celui-ci.

Vous avez des questions ou des demandes?
Contactez-nous! Nous vous répondrons <24 heures !

Icône
Contact ArduSimple
Fermer

Vous souhaitez en savoir plus sur le GPS/RTK ?

1. Notre équipe d'ingénieurs vous contactera pour résoudre toutes les questions
2. Nous vous tiendrons au courant des promotions et des nouvelles versions de produits
3. Vous n'aurez de nos nouvelles que lorsque nous aurons des nouvelles importantes, nous ne spammerons pas votre e-mail