999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

嵌入式軟件性能量化分析技術

2023-08-18 05:01:27王嘎李路野韓文俊
中國新通信 2023年12期
關鍵詞:優化分析信息

王嘎?李路野?韓文俊

摘要:嵌入式系統軟件對實時性指標要求較高,為了盡可能提高軟件的運行效率,嵌入式開發人員迫切需要能夠有效輔助嵌入式軟件開發的工具和性能分析的方法。本文提出了一種針對嵌入式系統軟件的性能量化分析框架,該框架通過系統采樣的方法采集硬件資源并利用信息,建立性能評價指標表征應用性能,通過對性能指標進行量化分析評估軟件性能,定位問題并提出優化建議。為了驗證該框架的有效性,在Intel服務器Linux操作系統,對通用矩陣乘法進行了性能分析和優化,計算資源利用率平均提升10%左右,軟件代碼性能提升65%。

關鍵字:嵌入式系統;量化分析;評價指標

自微處理器X86架構出現的30年里,最初階段的性能提升主要來源于提升處理器的時鐘周期。時鐘周期的提升不可避免地帶來了功耗的增加和散熱問題,后期的處理器主要通過增加處理器的核心數量來提升性能。單個處理器的應用程序和多核處理器的應用程序在軟件設計過程區別較大。嵌入式平臺主要以多核處理器作為計算,由于嵌入式系統對軟件性能和穩定性要求較高,同時又與硬件平臺緊密耦合,因此必須充分發揮硬件資源。尤其是并行程序設計,必須對應用軟件進行性能分析和調試優化,要以分析工具為輔助,對應用軟件的CPU、內存、網絡等資源的使用率以及高速緩存的利用率進行采樣并跟蹤定位,找到軟件的性能瓶頸,優化關鍵算法,從而在資源有限的情況下,提高軟件性能和可靠性。

一、相關工作

Gprof[1-3]是Linux操作系統的開源性能分析工具,可以統計函數的調用次數和耗時分析,主要采用插樁的方式,而采樣會帶來額外的開銷且不夠精確,對網絡等資源沒有統計在內,不是理想的性能分析工具。

Perf[4]和Oprofile[5]也是開源性能分析工具,與Gprof不同的是,Perf和Oprofile還可以獲取底層的信息,并且不是插樁方式,而是非侵入式的,因此不會帶來額外的開銷,尤其是對高速緩存的分析能幫助快速定位熱點。

CodeTEST[6]是AMC公司開發的性能分析工具,基于自動插樁的方式,與Gprof不同的是,CodeTEST的插樁是在匯編級語言,信息更準確,但是靈活性較差。

PAPI[7]是由美國田納西大學創新計算實驗室開發的,以硬件性能計數器為基礎的性能分析工具,基于事件的采樣從而對Cache命中率、分支預測的事件獲取,能精準分析硬件利用信息,更好地定位問題。

TAU[8](Tune and Analysis Utilities)是一個針對C、C++、Java等并行程序的性能分析工具,將性能信息可視化展示,更好地實現人機交互。

Likwid[2]也是Linux的性能分析工具,包含多個工具包,主要用來分析計算機拓撲結構,獲取硬件信息,性能基準測試可用性強。

2018年,國防科技大學在飛騰1500A處理器中開發了一款性能分析工具[2],主要實現了拓撲信息獲取硬件性能監測等。

2019年,Intel發布了針對X86架構的并行程序性能優化分析工具Intel Parallel Studio,其中Vtune[9]能夠訪問處理器的硬件計數器收集、分析性能信息和定位熱點。

二、性能量化分析技術

針對嵌入式軟件難以充分發揮硬件資源的問題,本文主要建立了一種軟件性能量化分析技術,通過全系統采樣技術進行硬件信息采集,建立性能評價指標,并對性能指標針進行優化,提升嵌入式軟件的性能,以支持高性能高可靠度的軟件開發。主要的功能包括:

(一)軟件性能量化分析框架

對于嵌入式軟件硬件資源利用不高,實時性低下的問題,設計一個框架:通過硬件信息采集、獲取、計算資源利用率,同時建立性能評價指標,將性能信息數據可視化,分析量化的指標,同時快速定位到軟件的問題。

(二)硬件信息采集

通過插樁、時間采樣和事件采樣,獲取軟件運行過程和硬件微體系性能事件的特征,通過中斷測量和函數測量的方式獲取底層信息;

(三)性能評價指標

影響程序性能的因素主要包括算法、指令執行流水、高速緩存、內存讀寫等,依據這些因素定義關鍵性能評價指標,而這些關鍵性能指標能夠確定軟件是否充分發揮硬件性能。

(四)性能量化分析

根據性能信息采集獲取的關鍵性能數據,以及最優化的指標值的區間范圍完成性能量化評估。

三、軟件性能量化分析框架

軟件性能量化分析框架主要包括:硬件信息采集、性能評價指標、性能量化分析。如圖1所示,硬件信息采集軟件包含采樣數據驅動程序技術、中斷和采樣技術,采集CPU、Cache、內存、高速緩存等硬件資源利用率;性能評價指標將關鍵性能指標數據可視化,包括CPU利用率、Cache命中率、CPU流水線等指標;性能量化分析對最優化的指標進行置信區間量化分析,評估是否最大限度利用計算資源并定位問題,快速進行代碼優化。

(一) 硬件信息采集

硬件信息采集主要由性能分析工具完成,采集過程主要通過基于時間和事件的采樣等技術途徑,收集CPU、內存、高速緩存、網絡、磁盤等使用信息。

大多數多核處理器集成了性能計數器,對于沒有集成性能計數器,則使用基于時間的采樣。這種采樣方式是基于中斷機制的,每次時鐘中斷系統就會采樣一次。

(二)性能評價指標

影響程序性能的因素主要包括算法、指令執行流水、高速緩存、內存讀寫等,在眾多性能指標中,選擇關鍵指標:算法復雜度、CPU流水線效率、高速緩存命中率、CPI(指令周期數)、向量化效率。定義關鍵性能評價指標,并能夠依據這些關鍵性能指標確定軟件是否充分發揮硬件性能。

(三)性能量化分析

對關鍵性能評價指標的實際測試值和理想最優化值在一個區間上進行比較,確定程序的熱點和瓶頸。如果在某個區間上,則可以認為該項指標不是軟件性能的瓶頸;如果不在某個區間上,則說明該項指標肯定是性能的瓶頸,隨后具體分析該指標所對應的硬件或者程序是否需要優化;如果只有一部分在區間上,則說明該項指標也會影響性能,但不是最最終因素,此時需要對最關鍵指標的影響進行排序,從影響最大的入手分析。

(四)實驗測試

通用矩陣的矩陣乘法在嵌入式系統的應用軟件開發領域應用最為廣泛,本文就以1024×1024的方陣矩陣乘法為實驗測試對象,驗證軟件性能量化分析技術的有效性,計算平臺是Intel E5,操作系統是Centos,編譯器采用gcc。

如表2所示,對性能評價指標進行分析:

①CPU流水線效率。該指標分析CPU在執行過程中的指令流水效率、指令并行能力,優化前完全流水執行的是35.4%,優化后是51.2%,提升了15.8%。

②高速緩存命中率。該指標表示程序中的數據和指令是否都在硬件的Cache中,命中率高的程序,緩存優化更好,構件性能更優,優化前命中率是92%,優化后命中率是98%,提升了6%。

③向量化效率。處理器的向量處理單元利用率影響程序的向量化效率,將可以矢量處理的計算轉換為向量化,性能會更優;優化前是25%,優化后是30%,提升了5%。

④CPI。該指標表示指令并行度,優化前完全流水執行的是0.830,優化后是0.547,指令并行度提升了0.283。

⑤處理時間優化前是46ms,優化后是16ms,性能提升了65%。

四、結束語

本文在嵌入式系統軟件開發領域提出了一種軟件性能量化分析方法,通過建立時間采集、時間采集等硬件信息采集,將影響軟件性能的因素提煉抽象,定義了CPU流水線效率、高速緩存命中率、向量化效率等性能評價指標,并對指標進行了量化分析,依據分析結果定位問題和優化代碼,最終達到充分發揮計算資源,提升嵌入式軟件性能的目的,實驗結果顯示,利用本文提出的軟件性能量化分析框架,通用矩陣乘算法性能提升了65%。

作者單位:王嘎 李路野 韓文俊

南京電子技術研究所

參? 考? 文? 獻

[1] http://sourceware.org/binutils/docs/gprof

[2] 彭林,方建濱,杜其琦,等.飛騰1500A處理器性能分析工具Likwid研究,計算機工程與科學,2018,40(7),.

[3] Gprof sites[EB/OL].[2018-01-15].https://en.wikipedia.org/wiki/Gprof.

[4] Perf sites[EB/OL].[2018-01-15].https://www.brendangregg.com/perf.html

[5] Oprofile sites[EB/OL].[2018-01-15].https://oprofile.sourceforge.net.

[6] Metrowerks.CodeTEST software analysis tools introduction[M].Metrowerks Press, 2003.

[7] PAPI sites[EB/OL].[2018-01-15].https://icl.cs.utk.edu/.

[8] Tau sites[EB/OL].[2018-01-15].https://www.cs.uoregon.

[9] Intel VTune sites[EB/OL].[2018-01-15].https://software.intel.com/en-us/intel-Vtune-amplifier-xe.

[10] 徐恒陽.龍芯多核平臺上性能分析工具的設計與實現[D].中國科學技術大學. 2011

[11] 張惠臻,王超,陳雁.嵌入式軟件性能分析方法研究與工具設計.計算機應用與軟件.

猜你喜歡
優化分析信息
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
隱蔽失效適航要求符合性驗證分析
電力系統不平衡分析
電子制作(2018年18期)2018-11-14 01:48:24
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
電力系統及其自動化發展趨勢分析
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 91精品国产一区自在线拍| 亚洲第一黄色网址| 中文字幕佐山爱一区二区免费| 色综合中文| 一本视频精品中文字幕| 亚洲综合中文字幕国产精品欧美| 日韩欧美中文亚洲高清在线| 97国产一区二区精品久久呦| 欧美精品高清| 国产在线精品美女观看| 精品少妇人妻一区二区| 欧美日韩高清在线| 日本成人在线不卡视频| 亚洲 欧美 中文 AⅤ在线视频| 中文字幕无码中文字幕有码在线| 40岁成熟女人牲交片免费| 国产人免费人成免费视频| 一本一道波多野结衣av黑人在线| 日韩高清欧美| 国产真实乱子伦视频播放| 色综合a怡红院怡红院首页| 欧美亚洲综合免费精品高清在线观看| 中文一区二区视频| 一区二区欧美日韩高清免费| 国产精品视频系列专区| 欧美日韩国产成人高清视频| 手机在线看片不卡中文字幕| 91久久国产热精品免费| 国产在线视频二区| 国产福利大秀91| 亚洲,国产,日韩,综合一区| 亚洲国产成人麻豆精品| 色婷婷色丁香| 久久久久久久久久国产精品| 亚洲欧美日韩中文字幕一区二区三区| 国产亚洲男人的天堂在线观看 | 国产成人精品一区二区免费看京| 97久久免费视频| 精品人妻一区无码视频| 国产手机在线ΑⅤ片无码观看| 亚洲成aⅴ人在线观看| 久久久久久尹人网香蕉 | 激情六月丁香婷婷| 在线观看免费AV网| 午夜国产大片免费观看| 欧类av怡春院| 日韩欧美国产成人| 极品国产在线| 在线毛片网站| 国产精品三区四区| 伊人激情综合网| 国产成人综合久久精品尤物| 日韩精品专区免费无码aⅴ| 特级毛片免费视频| 婷婷久久综合九色综合88| 色悠久久久久久久综合网伊人| 欧美精品成人一区二区视频一| 免费国产无遮挡又黄又爽| 亚洲第一中文字幕| 国产又爽又黄无遮挡免费观看 | 亚洲高清免费在线观看| 午夜国产精品视频| 国产网友愉拍精品视频| 亚洲永久精品ww47国产| 欧美日韩在线亚洲国产人| 中文字幕丝袜一区二区| 国产噜噜噜| 国产成人精品一区二区不卡| 亚洲成综合人影院在院播放| 亚洲成人精品| 精品福利一区二区免费视频| 国产在线无码av完整版在线观看| 中文字幕2区| 在线观看视频一区二区| 手机精品视频在线观看免费| 青青青视频91在线 | 热久久这里是精品6免费观看| 26uuu国产精品视频| 国产永久免费视频m3u8| 丰满人妻中出白浆| 亚洲成人福利网站| 在线欧美a|