икона авиона
Достава у
Ажурирање (10.): Имамо доста залиха свих наших производа, пронађите нас и у    Схоп сада

Мерење перформанси СБЦ апликације

СБЦ перформансе
СБЦ перформансе

Током дизајна апликације, морате да знате шта да очекујете од СБЦ-а у погледу брзине рачунања да бисте дизајнирали апликацију која може да обрађује све долазеће податке.

У овом туторијалу представљамо метод за мерење перформанси СБЦ-а у различитим задацима и како га екстраполирати на величину ваше апликације.

Мерење кода

За мерење кода користимо једноставне функције које израчунавају потребно време за слање или примање гомиле бајтова. Са тим информацијама имамо довољно да израчунамо употребу ЦПУ-а и величину апликације.

У наставку вам дајемо пример за мерење ГПС операција писања. Једноставно шаље лажне податке ГПС-у и мери његово време. Повратна вредност има јединице од [бајтова/секунди]

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

Резултати

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]

Прорачун употребе ЦПУ-а

Као што је приказано у табели, СБЦ може послати 88 [КБ/с] ГПС-у, користећи 100% ЦПУ-а. То такође значи да ако ваша апликација шаље 8.8 [КБ/с] ГПС-у, она користи 10% ЦПУ-а.

Иста идеја се може применити на било коју апликацију да бисте добили апроксимацију употребе ЦПУ-а и исправну величину ваше апликације.

Ако вам се допао овај садржај, можете нас пратити даље Twitter, You Tube, Facebook or ЛинкедИн да будете у току са оваквим садржајем.

Имате питања или захтеве?
Контактирајте нас! Одговорићемо <24 сата!

Икона
Контакт ArduSimple
близу

Желите да сазнате више о ГПС/РТК?

1. Наш инжењерски тим ће вас контактирати да реши сва питања
2. Обавештаваћемо вас о промоцијама и новим издањима производа
3. Чућете се само када имамо важне вести, нећемо слати нежељену е-пошту