Tracealyzer
Tracealyzer是一個(gè)用于RTOS系統(tǒng)的跟蹤和可視化分析工具,對(duì)系統(tǒng)運(yùn)行時(shí)的行為提供了前所未有的洞察方法。以往需要幾天甚至更長(zhǎng)時(shí)間才能解決的問(wèn)題,可以使用Tracealyzer快速解決。加速了調(diào)試及減少對(duì)系統(tǒng)驗(yàn)證和性能優(yōu)化所需要的時(shí)間。但不少用戶(hù)對(duì)于使用Tracealyzer時(shí)將造成多大的處理器開(kāi)銷(xiāo)有著擔(dān)憂,本文將回答這一問(wèn)題。

基于軟件的數(shù)據(jù)跟蹤始終會(huì)存在一些處理器開(kāi)銷(xiāo),其確切的數(shù)量為f和e的乘積f * e,其中f是平均事件頻率,e是用于存儲(chǔ)事件的平均執(zhí)行時(shí)間。這兩個(gè)參數(shù)的值依賴(lài)于用戶(hù)具體的應(yīng)用程序和處理器。應(yīng)用程序中的RTOS調(diào)用越多,則數(shù)據(jù)追蹤的處理器開(kāi)銷(xiāo)也越大。使用的處理器運(yùn)行速度越快,則開(kāi)銷(xiāo)越少。
下面以一些具體的參數(shù)來(lái)進(jìn)行分析。在32位MCU上,存儲(chǔ)某一事件需要耗費(fèi)的時(shí)間通常為幾微秒,假設(shè)e的值為3 us。平均事件速率則通常為每秒幾千次,假設(shè)f的值約為5000 Hz。根據(jù)上述f*e的公式計(jì)算:
5000 Hz x 0.000003 s= 1.5%
由上述計(jì)算可知,基于軟件的RTOS跟蹤并不會(huì)造成過(guò)高的處理器開(kāi)銷(xiāo),用戶(hù)可依據(jù)自己具體的應(yīng)用程序和處理器運(yùn)行速度進(jìn)行處理器開(kāi)銷(xiāo)的計(jì)算。
若想進(jìn)一步減少RTOS數(shù)據(jù)追蹤的處理器開(kāi)銷(xiāo),可嘗試以下方式:
? 確保至少開(kāi)啟了低級(jí)別的編譯器優(yōu)化選項(xiàng)
? 如果使用快照模式進(jìn)行數(shù)據(jù)追蹤,可以排除掉一些不太重要的事件的記錄
? 使用流模式而不是快照模式??煺漳J结槍?duì)內(nèi)存效率進(jìn)行了優(yōu)化,而流模式則針對(duì)速度進(jìn)行了優(yōu)化且速度明顯加快。流可以通過(guò)流端口進(jìn)行自定義,用于各種目標(biāo)主機(jī)接口,甚至可以令數(shù)據(jù)傳輸?shù)皆O(shè)備文件系統(tǒng)
? 如果使用流模式,請(qǐng)確保在緩沖區(qū)已滿(mǎn)的情況下數(shù)據(jù)傳輸不會(huì)阻塞。使用非阻塞傳輸模式時(shí),如果Tracealyzer隨后報(bào)告事件丟失,則數(shù)據(jù)吞吐量過(guò)小通常是問(wèn)題所在。通過(guò)調(diào)整流端口設(shè)置(如使用較大的緩沖區(qū))或使用更快的傳輸通道(如使用USB或更好的調(diào)試器)來(lái)解決此問(wèn)題。
Tracealyzer不需要額外的跟蹤硬件,這意味著可以在產(chǎn)品部署時(shí)使用。用戶(hù)可嘗試在應(yīng)用程序的最終版本中任保留RTOS跟蹤的設(shè)計(jì),例如將快照模式作為系統(tǒng)運(yùn)行的記錄模塊,這樣Tracealyzer記錄器就成為系統(tǒng)應(yīng)用程序的一部分而不是額外的開(kāi)銷(xiāo)了。且這樣的方式可以幫助用戶(hù)記錄一些產(chǎn)品在現(xiàn)場(chǎng)實(shí)際運(yùn)行過(guò)程中的問(wèn)題,而這些問(wèn)題通常是難以復(fù)現(xiàn)的,這將對(duì)廠商解決產(chǎn)品實(shí)際問(wèn)題時(shí)帶來(lái)相當(dāng)大的改變。
審核編輯 :李倩
-
處理器
+關(guān)注
關(guān)注
68文章
20344瀏覽量
255360 -
RTOS
+關(guān)注
關(guān)注
25文章
871瀏覽量
123241 -
調(diào)試器
+關(guān)注
關(guān)注
1文章
329瀏覽量
25222
原文標(biāo)題:Tracealyzer跟蹤RTOS需要多少處理器開(kāi)銷(xiāo)?
文章出處:【微信號(hào):麥克泰技術(shù),微信公眾號(hào):麥克泰技術(shù)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
iMXRT1170如何評(píng)估處理器的處理能力
探索ADSP - 21371/ADSP - 21375 SHARC處理器:高性能音頻處理的利器
RTOS在嵌入式開(kāi)發(fā)中的作用
使用RTOS時(shí)需要注意的幾點(diǎn)內(nèi)容分享
選擇RTOS的要點(diǎn)
如何在 RTOS 中處理微控制器的低功耗特性
RTOS Crash 問(wèn)題全維度分析與解決指南
利用Verdi調(diào)試協(xié)處理器的實(shí)現(xiàn)步驟
蜂鳥(niǎo)E203協(xié)處理器EAI指令及接口
基于E203 NICE協(xié)處理器擴(kuò)展指令
Cortex-M0+處理器的HardFault錯(cuò)誤介紹
新唐科技NuMicro MA35D1微處理器介紹
Tracealyzer跟蹤RTOS需要多少處理器開(kāi)銷(xiāo)?
評(píng)論