欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于插裝標(biāo)簽的核間協(xié)同多線程pmu事件監(jiān)測方法

文檔序號(hào):9667247閱讀:274來源:國知局
基于插裝標(biāo)簽的核間協(xié)同多線程pmu事件監(jiān)測方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)領(lǐng)域,更具體地說,本發(fā)明涉及一種基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法。
【背景技術(shù)】
[0002]硬件體系結(jié)構(gòu)的設(shè)計(jì)者為了評(píng)測他們的結(jié)構(gòu)設(shè)計(jì),在處理上植入了很多硬件性能計(jì)數(shù)器,這種做法也為利用硬件支持來分析程序的性能影響因素提供了可能。隨著處理器設(shè)計(jì)的不斷改進(jìn)和性能的不斷提升,現(xiàn)代處理器大都集成了一類特殊的硬件性能監(jiān)測單元,即PMU(performance monitoring unit,稱為“性能監(jiān)視單元”或“硬件性能計(jì)數(shù)器”),來收集處理器中的性能事件。
[0003]例如,如果發(fā)生一次指令Cache(高速緩存)脫靶事件,則PMU的相應(yīng)寄存器通過加一來記錄這一事件。借助PMU的監(jiān)測功能,能夠揭示處理器中發(fā)生的實(shí)際性能事件,通過對(duì)這些性能事件的統(tǒng)計(jì)和分析,程序員可以了解到不同的程序編碼方式會(huì)產(chǎn)生怎樣的底層硬件行為。同時(shí),根據(jù)這些行為,能夠進(jìn)一步分析是什么硬件事件影響了程序的性能,從而指導(dǎo)程序員進(jìn)行算法層面的程序改進(jìn),并且提示編譯器進(jìn)行代碼優(yōu)化,進(jìn)而幫助操作系統(tǒng)實(shí)現(xiàn)更高效的資源管理。
[0004]在實(shí)際開發(fā)過程中,系統(tǒng)的很多優(yōu)化策略都用到了PMU監(jiān)測數(shù)據(jù)。借助PMU的性能監(jiān)測功能,系統(tǒng)可以為用戶提供比較全面的底層運(yùn)行時(shí)信息。在效果方面,由于PMU的監(jiān)測數(shù)據(jù)可以真實(shí)反映程序在特定硬件平臺(tái)上的實(shí)際運(yùn)行效果,因此利用PMU機(jī)制優(yōu)化程序性能有很多天然的優(yōu)勢。
[0005]隨著眾核處理器逐漸成為高性能計(jì)算的主要設(shè)備,如何發(fā)揮出眾核處理器的硬件潛力,性能監(jiān)測技術(shù)起著越來越重要的作用。以龍芯3A平臺(tái)為例,現(xiàn)有技術(shù)利用性能計(jì)數(shù)器實(shí)現(xiàn)了一款單進(jìn)程采樣的性能分析工具Tprofiler,其實(shí)現(xiàn)分為兩個(gè)模塊:前端和后端。其中前端運(yùn)行于用戶層,負(fù)責(zé)分析后端收集的性能信息,指導(dǎo)程序員優(yōu)化代碼;后端運(yùn)行于內(nèi)核層,負(fù)責(zé)控制性能計(jì)數(shù)器,收集程序運(yùn)行過程中產(chǎn)生的硬件事件信息。
[0006]然而,上述現(xiàn)有的在眾核處理器上的協(xié)同性能監(jiān)測技術(shù),有以下問題:首先,因?yàn)楦髯员O(jiān)測,數(shù)據(jù)分布,協(xié)同時(shí)需要復(fù)雜的通信;其次,每個(gè)監(jiān)測點(diǎn)存在一定的開銷,大量線程同時(shí)監(jiān)測存在一定的開銷。
[0007]具體地,一般而言,傳統(tǒng)的針對(duì)單核、多核處理器的性能監(jiān)測往往是各個(gè)處理器核自行利用各個(gè)處理器核的PMU進(jìn)行單獨(dú)性能監(jiān)測,這就只能反映某個(gè)處理器核的性能使用效率,并不能反映整個(gè)處理器的性能使用狀況,為了綜合反映整個(gè)處理器的性能,需要某種片上數(shù)據(jù)交互機(jī)制將這些監(jiān)測數(shù)據(jù)進(jìn)行信息聚合,形成整體統(tǒng)一的性能監(jiān)測效果,達(dá)到真實(shí)有效地反映處理器的整體性能使用效率。

【發(fā)明內(nèi)容】

[0008]本發(fā)明所要解決的技術(shù)問題是針對(duì)現(xiàn)有技術(shù)中存在上述缺陷,針對(duì)一種異構(gòu)眾核處理器,提供一種具有低開銷而且輕量級(jí)的多線程協(xié)同性能監(jiān)測技術(shù)。
[0009]為了實(shí)現(xiàn)上述技術(shù)目的,根據(jù)本發(fā)明,提供了一種基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,所述核間協(xié)同多線程PMU事件監(jiān)測方法用于異構(gòu)眾核處理器,異構(gòu)眾核處理器包括用于執(zhí)行計(jì)算操作的運(yùn)算核心和用于執(zhí)行控制和服務(wù)操作的運(yùn)算控制核心。
[0010]所述核間協(xié)同多線程PMU事件監(jiān)測方法包括:運(yùn)算控制核心設(shè)置各個(gè)運(yùn)算核心上運(yùn)行的線程所關(guān)心的性能事件;初始化各個(gè)運(yùn)算核心上運(yùn)行的線程的PMU;在各個(gè)運(yùn)算核心上運(yùn)行的線程上插裝標(biāo)簽;運(yùn)算控制核心在后臺(tái)透明地收集各個(gè)運(yùn)算核心上運(yùn)行的線程上的插裝標(biāo)簽所實(shí)時(shí)返回的數(shù)據(jù);運(yùn)算控制核心集中整理分析返回的數(shù)據(jù)以執(zhí)行性能監(jiān)測。
[0011]優(yōu)選地,所述基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法還包括:根據(jù)數(shù)據(jù)分析結(jié)果形成性能計(jì)數(shù)事件記錄。
[0012]優(yōu)選地,所述標(biāo)簽被插裝在每個(gè)線程的預(yù)定位置。
[0013]優(yōu)選地,所述插裝的標(biāo)簽用于登記性能計(jì)數(shù)事件的配置信息。
[0014]優(yōu)選地,所述插裝的標(biāo)簽還用于感知運(yùn)算核心程序的執(zhí)行軌跡。
[0015]本發(fā)明提供了一種基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,其能夠在一種異構(gòu)眾核處理器上,利用PMU監(jiān)測數(shù)據(jù),準(zhǔn)確而又高效地實(shí)現(xiàn)整個(gè)芯片的程序性能監(jiān)測。
【附圖說明】
[0016]結(jié)合附圖,并通過參考下面的詳細(xì)描述,將會(huì)更容易地對(duì)本發(fā)明有更完整的理解并且更容易地理解其伴隨的優(yōu)點(diǎn)和特征,其中:
[0017]圖1示意性地示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法的示意圖。
[0018]圖2示意性地示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法的流程圖。
[0019]需要說明的是,附圖用于說明本發(fā)明,而非限制本發(fā)明。注意,表示結(jié)構(gòu)的附圖可能并非按比例繪制。并且,附圖中,相同或者類似的元件標(biāo)有相同或者類似的標(biāo)號(hào)。
【具體實(shí)施方式】
[0020]為了使本發(fā)明的內(nèi)容更加清楚和易懂,下面結(jié)合具體實(shí)施例和附圖對(duì)本發(fā)明的內(nèi)容進(jìn)行詳細(xì)描述。
[0021]異構(gòu)眾核處理器一般指芯片上存在具有兩種不同功能的處理器核,一種處理器核專注計(jì)算,邏輯設(shè)計(jì)簡單,數(shù)量較多,計(jì)算峰值能力強(qiáng),一般用于加速密集計(jì)算,稱之為運(yùn)算核心;一種處理器核專注于控制和服務(wù),邏輯設(shè)計(jì)復(fù)雜,數(shù)量較少,一般用于實(shí)現(xiàn)各種功能控制和服務(wù)操作,稱之為運(yùn)算控制核心。
[0022]基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測技術(shù)采用控制核心定時(shí)感知機(jī)制,基于運(yùn)算核心程序的插裝標(biāo)簽,利用運(yùn)算控制核心上的線程級(jí)PMU監(jiān)測服務(wù),在運(yùn)算核心計(jì)算的同時(shí),實(shí)現(xiàn)控制核心對(duì)運(yùn)算核心PMU事件的記錄。該技術(shù)一方面實(shí)現(xiàn)了較為準(zhǔn)確的能夠?qū)?yīng)到用戶程序的運(yùn)算核心PMU事件監(jiān)測,另一方面也降低了插裝機(jī)制對(duì)運(yùn)算核心程序執(zhí)行的干擾。
[0023]如圖1所示,基于編譯器的插裝方法,性能監(jiān)測功能模塊在多個(gè)任務(wù)的運(yùn)算核心程序上指定位置插入定位標(biāo)簽,用于登記性能計(jì)數(shù)事件的配置信息,并感知運(yùn)算核心程序的執(zhí)行軌跡。同時(shí),在運(yùn)算任務(wù)相對(duì)較輕的運(yùn)算控制核心上建立輕量級(jí)監(jiān)測掃描服務(wù),在合理配置的時(shí)間段內(nèi)“觸摸”運(yùn)算核心程序上的定位標(biāo)簽。根據(jù)定位標(biāo)簽記錄的信息,控制核心上的監(jiān)測掃描服務(wù)進(jìn)行多個(gè)任務(wù)的運(yùn)算核心性能計(jì)數(shù)器的配置和讀寫,并通過監(jiān)測數(shù)據(jù)處理服務(wù)對(duì)獲取到的性能計(jì)數(shù)器值進(jìn)行統(tǒng)計(jì)處理,最終形成較為準(zhǔn)確的性能計(jì)數(shù)事件記錄。
[0024]圖2示意性地示出了根據(jù)本發(fā)明優(yōu)選實(shí)施例的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法的流程圖。該方法用于包括用于執(zhí)行計(jì)算操作的運(yùn)算核心和用于執(zhí)行控制和服務(wù)操作的運(yùn)算控制核心的異構(gòu)眾核處理器。
[0025]如圖2所示,根據(jù)本發(fā)明優(yōu)選實(shí)施例的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法包括:
[0026]第一步驟S1:運(yùn)算控制核心設(shè)置各個(gè)運(yùn)算核心上運(yùn)行的線程所關(guān)心的性能事件;
[0027]第二步驟S2:初始化各個(gè)運(yùn)算核心上運(yùn)行的線程的PMU;
[0028]第三步驟S3:在各個(gè)運(yùn)算核心上運(yùn)行的線程上插裝標(biāo)簽;優(yōu)選地,所述標(biāo)簽被插裝在每個(gè)線程的預(yù)定位置;優(yōu)選地,所述插裝的標(biāo)簽用于登記性能計(jì)數(shù)事件的配置信息,并感知運(yùn)算核心程序的執(zhí)行軌跡。
[0029]第四步驟S4:運(yùn)算控制核心在后臺(tái)透明地收集各個(gè)運(yùn)算核心上運(yùn)行的線程上的插裝標(biāo)簽所實(shí)時(shí)返回的數(shù)據(jù);例如,所述返回的數(shù)據(jù)包括但不限于:性能計(jì)數(shù)事件的配置信息(包括與PMU有關(guān)的信息等)以及運(yùn)算核心程序的執(zhí)行軌跡。
[0030]第五步驟S5:運(yùn)算控制核心集中整理分析返回的數(shù)據(jù)以執(zhí)行性能監(jiān)測,并且根據(jù)數(shù)據(jù)分析結(jié)果形成性能計(jì)數(shù)事件記錄;由此,形成了統(tǒng)一的全處理器的性能監(jiān)測。
[0031]綜上所述,本發(fā)明的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測裝置,采用在運(yùn)算核心上插裝標(biāo)簽,控制核心建立PMU監(jiān)測服務(wù)的方法,實(shí)現(xiàn)了性能監(jiān)測的靈活控制,提升了并行程序PMU事件的監(jiān)測效率。
[0032]本發(fā)明在運(yùn)算核心上插裝標(biāo)簽,建立線程級(jí)PMU監(jiān)測服務(wù),而且采取了主從協(xié)同的性能數(shù)據(jù)監(jiān)測方案。本發(fā)明的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測裝置,利用空閑的控制核心實(shí)現(xiàn)了對(duì)整個(gè)芯片的協(xié)同性能監(jiān)測功能,數(shù)據(jù)通信開銷小,對(duì)運(yùn)算核心的應(yīng)用性能的影響基本上可忽略。
[0033]此外,需要說明的是,除非特別說明或者指出,否則說明書中的術(shù)語“第一”、“第二”、“第三”等描述僅僅用于區(qū)分說明書中的各個(gè)組件、元素、步驟等,而不是用于表示各個(gè)組件、元素、步驟之間的邏輯關(guān)系或者順序關(guān)系等。
[0034]可以理解的是,雖然本發(fā)明已以較佳實(shí)施例披露如上,然而上述實(shí)施例并非用以限定本發(fā)明。對(duì)于任何熟悉本領(lǐng)域的技術(shù)人員而言,在不脫離本發(fā)明技術(shù)方案范圍情況下,都可利用上述揭示的技術(shù)內(nèi)容對(duì)本發(fā)明技術(shù)方案作出許多可能的變動(dòng)和修飾,或修改為等同變化的等效實(shí)施例。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所做的任何簡單修改、等同變化及修飾,均仍屬于本發(fā)明技術(shù)方案保護(hù)的范圍內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,所述核間協(xié)同多線程PMU事件監(jiān)測方法用于異構(gòu)眾核處理器,異構(gòu)眾核處理器包括用于執(zhí)行計(jì)算操作的運(yùn)算核心和用于執(zhí)行控制和服務(wù)操作的運(yùn)算控制核心;其特征在于所述核間協(xié)同多線程PMU事件監(jiān)測方法包括: 運(yùn)算控制核心設(shè)置各個(gè)運(yùn)算核心上運(yùn)行的線程所關(guān)心的性能事件; 初始化各個(gè)運(yùn)算核心上運(yùn)行的線程的PMU; 在各個(gè)運(yùn)算核心上運(yùn)行的線程上插裝標(biāo)簽; 運(yùn)算控制核心在后臺(tái)透明地收集各個(gè)運(yùn)算核心上運(yùn)行的線程上的插裝標(biāo)簽所實(shí)時(shí)返回的數(shù)據(jù); 運(yùn)算控制核心集中整理分析返回的數(shù)據(jù)以執(zhí)行性能監(jiān)測。2.根據(jù)權(quán)利要求1所述的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,其特征在于還包括:根據(jù)數(shù)據(jù)分析結(jié)果形成性能計(jì)數(shù)事件記錄。3.根據(jù)權(quán)利要求1或2所述的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,其特征在于,所述標(biāo)簽被插裝在每個(gè)線程的預(yù)定位置。4.根據(jù)權(quán)利要求1或2所述的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,其特征在于,所述插裝的標(biāo)簽用于登記性能計(jì)數(shù)事件的配置信息。5.根據(jù)權(quán)利要求1或2所述的基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,其特征在于,所述插裝的標(biāo)簽還用于感知運(yùn)算核心程序的執(zhí)行軌跡。
【專利摘要】本發(fā)明提供了一種基于插裝標(biāo)簽的核間協(xié)同多線程PMU事件監(jiān)測方法,用于異構(gòu)眾核處理器。異構(gòu)眾核處理器包括用于執(zhí)行計(jì)算操作的運(yùn)算核心和用于執(zhí)行控制和服務(wù)操作的運(yùn)算控制核心。其中,運(yùn)算控制核心設(shè)置各個(gè)運(yùn)算核心上運(yùn)行的線程所關(guān)心的性能事件;初始化各個(gè)運(yùn)算核心上運(yùn)行的線程的PMU;在各個(gè)運(yùn)算核心上運(yùn)行的線程上插裝標(biāo)簽;運(yùn)算控制核心在后臺(tái)透明地收集各個(gè)運(yùn)算核心上運(yùn)行的線程上的插裝標(biāo)簽所實(shí)時(shí)返回的數(shù)據(jù);運(yùn)算控制核心集中整理分析返回的數(shù)據(jù)以執(zhí)行性能監(jiān)測記錄,從而形成統(tǒng)一的全處理器的性能監(jiān)測。
【IPC分類】G06F11/34
【公開號(hào)】CN105426296
【申請(qǐng)?zhí)枴緾N201510826916
【發(fā)明人】劉勇, 彭超, 陳華蓉, 王敬宇, 馮赟龍, 王雯霞
【申請(qǐng)人】無錫江南計(jì)算技術(shù)研究所
【公開日】2016年3月23日
【申請(qǐng)日】2015年11月24日
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
夏河县| 平舆县| 邯郸县| 波密县| 湖北省| 西乌珠穆沁旗| 普洱| 民权县| 东莞市| 婺源县| 英吉沙县| 祥云县| 垦利县| 凤翔县| 高青县| 故城县| 疏附县| 哈密市| 奉节县| 邵阳市| 铜川市| 博野县| 裕民县| 中牟县| 抚州市| 新安县| 龙山县| 黎平县| 出国| 江山市| 江陵县| 莎车县| 喀什市| 新安县| 屏南县| 天镇县| 苍梧县| 德令哈市| 沾益县| 吉首市| 谷城县|