當前位置:首頁 > 公眾號精選 > Linux閱碼場
[導(dǎo)讀]手機上的性能指標是綜合的變化,由上圖可以看的出來手機更關(guān)注人跟機器的交互這,云系統(tǒng)則是比較關(guān)注機器跟機器的交互。手機系統(tǒng)比較特別的地方在于資源都是比較受限,例如 : 電量,性能…因此針對用戶體驗是需要特別庖丁解牛來建立指標。

一、淺談手機性能的可觀測性


講師簡介:

夏兵,目前就職于榮耀,擔任高級性能研發(fā)工程師。

1.概述


手機上的性能指是綜合的變化,由上圖可以看的出來手機更關(guān)注人跟機器的交互這,云系統(tǒng)則是比較關(guān)注機器跟機器的交互。


手機系統(tǒng)比較特別的地方在于資源都是比較受限,例如 : 電量,性能因此針對用戶體驗是需要特別庖丁解牛來建立指標。


指標(METRIC) -業(yè)界有特定的體驗度量模型目標是發(fā)現(xiàn)產(chǎn)品和服務(wù)中的問題及理解使用者的行為和偏好


性能體驗度量是多層次多個維度的,只用一項指標去表征的所有性能特征是遠遠不夠的。



以上是幾個個常用指標,這些指標常常是互相搭配的例如Andrid近年常用GSM+HEART。度量模型圍繞用戶使用的旅程,識別關(guān)鍵體驗路徑(KEP),為不同接觸點分解出不同的性能指標。

2.性能追蹤


實際上如何構(gòu)建手機可觀測性,我們都會采取分層次拆解,由上圖可以看的出來藉助于Android/Linux系統(tǒng)的生態(tài)系已經(jīng)有不少工具可以用于追蹤系統(tǒng)的信息。


性能追蹤手機裝置面臨的挑戰(zhàn) :

1、低開銷:不會降低用戶的體驗因為手機資源是受限的所以如何有性的采集會是很大的考。

2、不可接觸:開發(fā)人員無法實時獲取使用者的故障第一現(xiàn)場信息,用戶很多操作行為都是不容易在現(xiàn),因此識別關(guān)鍵體驗路徑會是開發(fā)的過程之一。

3、偶發(fā)性:低概率,不易復(fù)現(xiàn)(Heisen berg Bug) ,對于第三方應(yīng)用跟系統(tǒng)交互或是用戶行為常常有偶發(fā)性不易在現(xiàn)的問題需要準確的追蹤機制輔助找到原因。

4、不可預(yù)見:用已知模式分析未知問題。


講師介紹了一些Android上常見的工具

?Systrace : 用于將設(shè)備活動保存到跟蹤檔的 Android 工具。

?cpu_profile : android平臺實現(xiàn)周期性采集調(diào)用棧。

?simpleperf : simpleperfAnroid平臺的一套性能分析工具,功能大致與linux perf相似。

?nanotrace : 通過在虛擬機(包括解析器和編譯程序)中插樁,獲取從APK framework層的執(zhí)行路徑的調(diào)用鏈和函數(shù)執(zhí)行時長。

?objtrace : 動態(tài)跟蹤函數(shù)參數(shù)值。

?blktrace : blktrace 結(jié)合btt可以統(tǒng)計一個IO是在調(diào)度隊列停留的時間長,還是在硬件上消 耗的時間長。

?Hitrace : 對于跨設(shè)備/進程/線程的業(yè)務(wù)流程處理,通過相同的traceid在整個業(yè)務(wù)流程中傳遞,將調(diào)用層次、各種輸出信息關(guān)聯(lián)和展現(xiàn)。

3.可觀測性之Logging


上圖由上而下的拆解展示日志的重要性,首先我們需要了解用戶行為關(guān)注用戶體驗并記錄對應(yīng)的錯誤日志,當時系統(tǒng)狀態(tài)與硬件狀態(tài)用于改善用戶體驗


手機系統(tǒng)的日志系統(tǒng)時常需要整合第三方應(yīng)用因為第三方應(yīng)用不開源,管理日志上常常沒有足夠權(quán)限,還有手機儲存大小受限因此最終的日志系統(tǒng)方案都是朝可以匯整日志更精準建立模型為目標。


總結(jié)以上幾點用戶體驗是感性的,不單單只是數(shù)字因此講者認科技應(yīng)該有溫度


Q&A

Q : 是否有AI優(yōu)化思路?

A: 目前還在努力,有嘗試用AI分析用戶體驗不過效果不明顯。目前比較多還是在做基礎(chǔ)體驗度量。


Q : 跑分跟用戶體驗怎么看?

A: 跑分不能直接當用戶體驗偵率,累積布局偏移可參考。


Q: nanotrace可否第三方插莊?

A: yes


Q : 是否能找到喚醒源?

A:可打開irq,ipi中斷事件可以看到換醒源。




二、揭秘ARM架構(gòu)對Linux調(diào)測特性的支持


講師簡介:張健, 現(xiàn)就職于北京大簡技術(shù)有限公司, 14年ARM架構(gòu)和操作系統(tǒng)一線研發(fā)經(jīng)驗. 在北京, 柏林, 拉斯維加斯, 多地發(fā)表技術(shù)演講。


首先,本次分享從調(diào)試視角、性能影響兩個角度出發(fā),對調(diào)試特性進行了宏觀的分類。

1.調(diào)試類型

調(diào)試包含兩個維度的特性:調(diào)試視角維度與性能影響維度。


1.調(diào)試視角維度

從調(diào)試視角維度出發(fā),調(diào)試分為external debug與self-hosted debug,前者包括openocd、kgdb、ftrace、perf等內(nèi)核調(diào)試基礎(chǔ)設(shè)施,后者則是通過JTAG、FTOI等體系結(jié)構(gòu)相關(guān)調(diào)試接口連接芯片,同時用調(diào)試軟件控制硬件調(diào)試器進行調(diào)試。


其中,紅色所示技術(shù)為硬件調(diào)試接口,藍色所示技術(shù)為相關(guān)軟件調(diào)試工具。軟硬件調(diào)試工具共享CPU和內(nèi)核所提供的調(diào)試能力。


2.性能影響維度

從性能影響維度出發(fā),調(diào)試分為影響(多為停止)當前CPU狀態(tài)的侵入式調(diào)試和不影響CPU運行的非侵入式調(diào)試。前者多會暫停當前CPU的執(zhí)行流,同時通過相關(guān)機制(比如,AR cross trigger)告知其他核當前被調(diào)試的狀態(tài),從而影響系統(tǒng)狀態(tài)。


這種調(diào)試類型雖然帶來了強大的調(diào)試能力,但是在芯片和內(nèi)核的設(shè)計開發(fā)時需要考慮CPU調(diào)試過程中與其他外圍設(shè)備的關(guān)系,因為CPU的調(diào)試狀態(tài)不會影響到其他硬件,一致性等問題是該方法的經(jīng)典挑戰(zhàn);對于非侵入式的調(diào)試類型,它不會直接停止當前的CPU運行狀態(tài),更多對系統(tǒng)起到監(jiān)控跟蹤的作用。



接下來,分享從斷點、Trace、PMU三類調(diào)試手段出發(fā)講述ARM架構(gòu)的系統(tǒng)調(diào)試特性。

2.侵入式調(diào)試手段之斷點

斷點調(diào)試是侵入式的,單純依賴用戶態(tài)基礎(chǔ)設(shè)施或頂層應(yīng)用無法達到啟停系統(tǒng)的能力要求。因此,斷點調(diào)試的設(shè)計需要硬件和操作系統(tǒng)的支持,即斷點調(diào)試要有陷入高特權(quán)級別環(huán)境的能力。


用戶通過配置編譯選項獲得指定平臺下的gdb調(diào)試器,將被追蹤程序當作參數(shù)傳遞gdb調(diào)試器,gdb調(diào)試器fork出被調(diào)試程序子進程,兩者通過PTRACE_XXX請求建立連接。


對于軟件斷點,gdb將通過符號表等信息在開發(fā)者指定的位置填入調(diào)試指令(x86為INT3,ARM為BRK/BRKT);對于硬件斷點,gdb會將指定位置的地址寫入到調(diào)試寄存器中。


當程序運行至軟件斷點或硬件斷點處,子進程會觸發(fā)相應(yīng)異常,待異常信號被gdb捕獲后,通過比對記錄的斷點信息來判斷是否是調(diào)試原因所觸發(fā)的異常,如此來實現(xiàn)gdb調(diào)試進程的啟停能力。


3.非侵入調(diào)試類型之Trace

ARM Coresight架構(gòu)是遵循可觀測性的架構(gòu)設(shè)計,Cortex Processor后的ETM負責在處理器外部抓取指令序列,不影響CPU的運行狀態(tài)。并且,Trace信息的傳輸未經(jīng)系統(tǒng)總線,減少了對系統(tǒng)帶寬的影響。Coresight架構(gòu)中存在多個執(zhí)行流抓取點,存在多個對應(yīng)的ETM,多個ETM收集的信息會傳入下游的Funnel,F(xiàn)unnel將根據(jù)數(shù)據(jù)所存在的信息將執(zhí)行流信息進行分流處理。



關(guān)于具體的互聯(lián)結(jié)構(gòu)可以查看對應(yīng)版本的設(shè)備樹文件。(所在源碼目錄為/arch/arm64/boot/dts)

4.非侵入調(diào)試類型之Performance Monitor Unit(PMU)

CPU中存在PMU部件,該部件會監(jiān)控CPU的相關(guān)性能信息,用戶可以通過訪問相應(yīng)的寄存器獲取相關(guān)信息。perf是一種可以訪問PMU的用戶態(tài)工具。



本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉