Aktualisierung (05 / 05 / 2024): Wir haben alle unsere Produkte auf Lager, finden Sie uns auch auf und    Jetzt shoppen

Messen der SBC-Anwendungsleistung

SBC-Leistung

Während des Anwendungsdesigns müssen Sie wissen, was Sie vom SBC in Bezug auf die Rechengeschwindigkeit erwarten können, um eine Anwendung zu entwerfen, die alle ankommenden Daten verarbeiten kann.

In diesem Tutorial stellen wir eine Methode vor, um die SBC-Leistung in verschiedenen Aufgaben zu messen und sie auf die Größe Ihrer Anwendung zu extrapolieren.

Messen des Codes

Um den Code zu messen, verwenden wir einfache Funktionen, die die erforderliche Zeit zum Senden oder Empfangen einer Reihe von Bytes berechnen. Mit diesen Informationen haben wir genug, um die CPU-Auslastung zu berechnen und eine Anwendung zu dimensionieren.

Nachfolgend geben wir Ihnen ein Beispiel zum Benchmarking von GPS-Schreibvorgängen. Es sendet einfach Dummy-Daten an das GPS und misst seine Zeit. Der Rückgabewert hat Einheiten von [Byte/Sekunde]

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

Die Ergebnisse

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]

Berechnung der CPU-Auslastung

Wie in der Tabelle gezeigt, kann der SBC 88 [KB/s] an das GPS senden, wobei 100 % der CPU verwendet werden. Das bedeutet auch, dass Ihre Anwendung, wenn sie 8.8 [KB/s] an das GPS sendet, 10 % der CPU verwendet.

Die gleiche Idee kann auf jede Anwendung angewendet werden, um eine Annäherung an die CPU-Auslastung zu erhalten und Ihre Anwendung richtig zu dimensionieren.

Wenn Ihnen dieser Inhalt gefallen hat, können Sie uns weiter folgen Twitter, YouTube, Facebook or LinkedIn um über solche Inhalte auf dem Laufenden zu bleiben.

Hast du Fragen oder Wünsche?
Kontaktiere uns! Wir antworten <24 Stunden!

Symbol
Kontakt ArduSimple
Menu

Möchten Sie mehr über GPS erfahren/RTK?

1. Unser Engineering-Team wird sich mit Ihnen in Verbindung setzen, um alle Fragen zu klären
2. Wir halten Sie über Werbeaktionen und neue Produktveröffentlichungen auf dem Laufenden
3. Sie hören nur von uns, wenn wir wichtige Neuigkeiten haben, wir spammen Ihre E-Mail nicht zu