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

面向異構多核系統(tǒng)的多任務流并行編程模型設計

2023-01-30 13:22:42唐維賢楊銳
微型電腦應用 2022年12期
關鍵詞:指令模型系統(tǒng)

唐維賢, 楊銳

(延安大學, 數學與計算機科學學院, 陜西, 延安 716000)

0 引言

由于成本因素、能耗因素和芯片集成規(guī)模的增大,處理器在發(fā)展過程中受到了限制,逐漸向多核方向發(fā)展[1]。多核系統(tǒng)具有易于擴充、計算能力強的特點[2],現有的軟件開發(fā)模式受多核系統(tǒng)發(fā)展的影響逐漸發(fā)生改變,針對并行計算、并行程度和并行算法等方面提出了更高的設計要求。

對于異構多核系統(tǒng)來說,高速且低消耗的多任務流并行編程模型至關重要,其在提高異構多核系統(tǒng)的處理效率等方面意義重大。為此,趙博穎等[3]提出了基于布谷鳥搜索的多任務流并行編碼模型,根據多核集群拓撲結構的特點,利用作業(yè)優(yōu)先級編碼方法結合存儲編輯模型和編程模型,根據布谷鳥搜索結果實現多任務流并行編碼模型的設計,但該模型難以探測到異構多核系統(tǒng)中存在的慢任務,導致調用開銷高。李鵬等[4]提出了基于多FPGA的多任務流并行編程模型,通過物理耦合方法粗粒度分割數學模型,并通過細粒度分割子系統(tǒng),在FPGA中映射分割后的模型,在協(xié)調分配的基礎上實現多任務流并行編程,但該模型難以探測到異構多核系統(tǒng)中存在的落后任務,存在計算開銷高的問題。李翠等[5]提出了基于DPDK并行通信的多任務流并行編程模型,結合通信系統(tǒng)和DPDK設計多核并行處理數據包、細粒度監(jiān)控網口,結合動態(tài)負載信息、調整函數和散列函數設計多任務流并行編程模型,但該模型沒有在編程模型中設計任務探測環(huán)節(jié),導致異構多核系統(tǒng)的編程加速比較低。

為了解決上述模型中存在的問題,本文設計了面向異構多核系統(tǒng)的多任務流并行編程模型。

1 多任務流并行編程模型設計

1.1 寄存器重定向

物理寄存器通常在異構多核系統(tǒng)的調度單元中等待調度,當指令在異構多核系統(tǒng)中出現阻塞現象時,寄存器在系統(tǒng)中屬于無效占用,造成了外存儲空間和寄存器存儲空間的資源浪費[6]。為了解決寄存器在調度模塊中因無效占用導致的資源浪費問題,本研究利用兩級映射關系對調度指令進行處理。

在經典流水線的基礎上增加寄存器重命名等亂序技術,寄存器之間的關系可以通過亂序發(fā)射進行解耦和分析,利用調度技術完成發(fā)射[7]。亂碼發(fā)射時的異構多核系統(tǒng)中的寄存器映射如圖1所示。

圖1 寄存器映射

物理寄存器在重命名階段通過處理器分配給體系寄存器,并在映射表中存儲這種映射關系。寄存器在異構多核系統(tǒng)中重定向后的映射示意圖如圖2所示。

圖2 寄存器重定向后的映射示意圖

1.2 指令遷移

存在指令操作的運算單元在異構多核系統(tǒng)中的種類和數量較多,異構多核系統(tǒng)中的指令通常情況下包含操作指令對應的承載對象,多任務流編程在指定運算單元方式下的難度較高,降低了異構多核系統(tǒng)的靈活性[8]。

阻塞問題經常存在于運算單元執(zhí)行指令的過程中,當多個指令的執(zhí)行對象為相同運算單元時,運算周期中存在的運算值對應一個指令,因此多個指令在運算過程中存在競爭,在競爭過程中存在隱患,容易造成指令阻塞。為了在不同的運算單元中執(zhí)行不同線程的指令,本文采用指令遷移的方法。

設計處理器時,建立1張包括異構多核系統(tǒng)中所有運算資源的資源表,二維網格內異構多核系統(tǒng)對應的坐標以及運算單元的數量和種類均存在于資源表中。執(zhí)行系統(tǒng)指令之前,處理器的主要任務是將各種指令分配到指定的運算單元中,指令在相同運算單元之間可以進行遷移操作。運算單元在異構多核系統(tǒng)中通過這種機制可以被充分地利用,縮短了發(fā)射指令所用的時間,降低了編程處理器的難度。

執(zhí)行完指令后運算單元會向處理器釋放信息,表明可以接收新的任務,單元處于空閑狀態(tài),收到信息后處理器標記資源隊列,在資源池中重新納入運算單元。

1.3 分離發(fā)射

分離發(fā)射即輸入線程為多路,當出現私有資源占用當前線程導致出現阻塞現象,且無法被修改或訪問時,可使用另一個線程的共享資源進行工作。

線程A和線程B可以在調度模塊中同時被處理,當線程A存在時間難以滿足線程切換條件的阻塞時,可以利用輔助線程機制解決阻塞問題,線程A中調度器的主要任務是在指令調度過程中輔助線程B進行相關操作,當線程A在發(fā)射階段難以滿足要求時,線程B會進行輔助操作。

1.4 線程切換

保護線程現場是線程切換中的重點工作內容,釋放線程切換在系統(tǒng)中占用的資源是設計線程切換操作的重點,利用最小的代價實現異構多核系統(tǒng)的線程切換。

根據指令在異構多核系統(tǒng)中提取信息時,需要獲取虛擬寄存器編號,并將其傳送到對應的映射表格和管理表格中。通常情況下,虛擬寄存器在異構多核系統(tǒng)中占用的空間極小,可忽略不計,但在異構多核系統(tǒng)的硬件設計中,虛擬寄存器的編號數量是有限的,為了避免總體編號在線程保留棧中的數量減少,剔除線程切換過程中存在的無用虛擬寄存器編號,當線程喚醒時重新對虛擬寄存器編號進行分配。在寄存器保存表中備份釋放后的寄存器映射表,線程切換保護機制如圖3所示。

圖3 線程切換保護機制

利用記錄表中存在的pc地址在線程恢復狀態(tài)下重新取值,并恢復任務號,寄存器映射關系根據寄存器保存表完成恢復,將虛擬寄存器標號重新分配給指令中存在的輸出寄存器,完成恢復。

2 任務探測算法

2.1 慢任務探測

在多任務流并行編碼模型中需要探測Reduce和Map兩種慢任務。

通過下述過程計算任務Progress:假設P代表模型中存在的任務,C代表在目前階段處理完畢的任務數據量,S代表目前階段對應的序號,N代表該階段中存在的待處理數據量,subProgress代表任務在階段內的進度,其表達式如下:

(1)

當目前階段對應的序號為0,即S=0時,Map任務對應的進度Progress可通過式(2)計算得到:

Progress=M1×subProgress

(2)

當目前階段對應的序號為1,即S=1時,Map任務對應的進度Progress可通過式(3)計算得到:

Progress=M1+M2×subProgress

(3)

其中,M1、M2代表Map任務兩階段對應的時間。當目前階段對應的序號為0,即S=0時,Reduce任務對應的進度Progress可通過式(4)計算得到:

Progress=R1×subProgress

(4)

當目前階段對應的序號為1,即S=1時,Reduce任務對應的進度Progress為

Progress=R1+R2×subProgress

(5)

當目前階段對應的序號為2,此時存在:

Progress=R1+R2+R3×subProgress

(6)

式中,R1、R2、R3分別代表的是Reduce任務三個階段對應的時間。假設avgProgress代表的是平均進度,其計算公式如下:

(7)

設ProgressRate_r、ProgressRate_m分別代表的是Reduce任務和Map任務對應的執(zhí)行速率,其計算公式如下:

(8)

式中,t代表任務從開始到結束所用的時間。在此基礎上,假設num_r、num_m分別代表Reduce任務和Map任務對應的數量,avgProgressRate_m代表Map任務對應的平均速率,其計算公式如下:

(9)

如果Map任務滿足式(10),可被判定為慢任務:

ProgressRate_m<(1-SlowTaskThreshold)×

avgProgressRate_m

(10)

假設avgProgressRate_r代表Reduce任務對應的平均速率,其計算公式如下:

(11)

如果Reduce任務滿足下述公式,可被判定為慢任務:

ProgressRate_r<(1-SlowTaskThreshold)×

avgProgressRate_r

(12)

式中,SlowTaskThreshold代表速率判斷閾值,其值通常為0.1。

2.2 落后任務探測

當不同任務中的工作分配不均衡或者數據傾斜時,可能會出現落后任務,導致某一個任務需要處理更多工作,則該任務被稱為“落后任務”,其需要滿足以下條件。

(1)在全部任務中該任務的剩余時間最長。設TimeToEnd=(1-Progress)/ProgressRate代表的是完成任務剩余的時間。

(2)備份任務在異構多核系統(tǒng)中的數量遠遠高于設定的SpeculationCap閾值。

(3)該任務的類型為慢任務。

(4)工作執(zhí)行時間往往大于60 s。

異構多核系統(tǒng)中的Reduce任務和Map任務均屬于落后任務。

在非Reduce慢和非Map慢TaskTracker上啟動落后任務,判定任務是否完成的依據是任意一個副本的完成度。

3 實驗與分析

為驗證面向異構多核系統(tǒng)的多任務流并行編程模型的整體有效性,設計如下實驗。本次測試的實驗平臺的配置如表1所示。

表1 平臺配置

分別采用面向異構多核系統(tǒng)的多任務流并行編程模型(模型1)、基于布谷鳥搜索的多任務流并行編碼模型(模型2)和基于多FPGA的多任務流并行編程模型(模型3)進行測試,對比不同模型的調用開銷和計算開銷,測試結果分別如圖4、圖5所示。

圖4 調用開銷測試結果

圖5 計算開銷測試結果

分析圖4中的數據可知,模型1的調用開銷在多次迭代中均在2 000 cycles以內,模型2和模型3的調用開銷遠遠高于模型1的調用開銷。這是因為模型1對異構多核系統(tǒng)中慢任務進行探測,提高慢任務的調用效率,進而縮短了異構多核系統(tǒng)的調用開銷。

根據圖5可知,模型1的計算開銷在多次迭代中遠遠低于模型2和模型3的計算開銷。這是因為模型1通過對落后任務進行探測,以最小的代價實現多任務流的并行處理,降低了異構多核系統(tǒng)的計算開銷。

將編程加速比作為測試指標,對不同模型進行測試,測試結果如圖6所示。

圖6 編程加速比測試結果

對圖6中的數據進行分析可知,在多次迭代中,模型1的編程加速比均在16.0以上,模型2和模型3的編程加速比均低于15.0,對比上述模型的測試結果可知,模型1的編程加速比較高。這是因為模型1通過線程切換處理異構多核系統(tǒng)中存在的慢任務,剔除異構多核系統(tǒng)中的落后任務,提高了模型1的編程加速比。

4 總結

為了提高異構多核系統(tǒng)的計算能力,提高編程靈活性,需要對多任務流并行編碼模型展開設計。目前多任務流并行編程模型存在調用開銷高、計算開銷高和編程加速比低的問題。本文提出面向異構多核系統(tǒng)的多任務流并行編程模型,將任務探測算法引入到多任務流并行編程模型的設計中,解決了目前編程模型中存在的問題,為異構多核系統(tǒng)的發(fā)展奠定了基礎。

在今后的研究中,將進一步對所提模型展開優(yōu)化,從優(yōu)化任務排序的角度進一步提高模型的應用性能。

猜你喜歡
指令模型系統(tǒng)
一半模型
聽我指令:大催眠術
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機系統(tǒng)
ZC系列無人機遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
ARINC661顯控指令快速驗證方法
測控技術(2018年5期)2018-12-09 09:04:26
LED照明產品歐盟ErP指令要求解讀
電子測試(2018年18期)2018-11-14 02:30:34
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
主站蜘蛛池模板: 凹凸国产熟女精品视频| 国产精品久久久久久久久久久久| 亚洲国产av无码综合原创国产| 性欧美精品xxxx| 日韩 欧美 国产 精品 综合| 久久熟女AV| 人妻免费无码不卡视频| 99视频在线免费看| 日韩中文无码av超清| 青青青国产视频手机| 9啪在线视频| 亚洲国产成熟视频在线多多 | 国产精品漂亮美女在线观看| 日韩成人在线视频| 国产精品成| 妇女自拍偷自拍亚洲精品| 国产91av在线| 亚洲无码精品在线播放| 国产在线91在线电影| 天天色天天综合| 中文字幕首页系列人妻| 全部免费特黄特色大片视频| 久久久久人妻一区精品| 亚洲精选高清无码| 国产精品无码AV中文| 日本精品中文字幕在线不卡 | 国产精品男人的天堂| 日韩福利在线视频| 国产裸舞福利在线视频合集| 亚欧美国产综合| 欧美一区二区三区不卡免费| 人妻无码中文字幕一区二区三区| 国产香蕉一区二区在线网站| 香蕉色综合| 久久这里只有精品免费| 综合五月天网| 毛片视频网| 日韩人妻少妇一区二区| 女人18毛片一级毛片在线 | 欧美专区在线观看| 五月婷婷导航| 欧美激情综合一区二区| 人妻中文字幕无码久久一区| 伊人久久大线影院首页| 91精品福利自产拍在线观看| A级毛片高清免费视频就| 欧美国产精品不卡在线观看| 国产流白浆视频| 国产精品美女自慰喷水| 国产成人综合在线观看| 99草精品视频| 欧美另类第一页| 天堂成人av| 精品久久蜜桃| 国产成人精品18| 97国产在线视频| 国产精品va免费视频| 国产精品成人AⅤ在线一二三四 | 亚洲人成在线免费观看| 国产小视频a在线观看| 亚洲成人动漫在线观看| 尤物精品国产福利网站| 国产精品私拍在线爆乳| 在线视频一区二区三区不卡| 亚洲午夜国产精品无卡| 国产午夜无码片在线观看网站| 亚洲免费三区| 成人精品免费视频| 国产在线一区视频| 欲色天天综合网| www.91中文字幕| 一本大道无码高清| 亚洲中文字幕日产无码2021| 日韩精品一区二区三区视频免费看| 免费不卡在线观看av| 亚洲天堂精品视频| 97狠狠操| 日韩国产综合精选| 欧美在线视频a| 老司机久久99久久精品播放| 欧美另类第一页| 伊人狠狠丁香婷婷综合色|