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

多處理器系統實時任務限制搶占調度算法

2016-08-11 06:02:06王華忠聶永高
關鍵詞:實驗系統

王華忠, 聶永高

(華東理工大學化工過程先進控制與優化教育部重點實驗室,上海 200237)

?

多處理器系統實時任務限制搶占調度算法

王華忠,聶永高

(華東理工大學化工過程先進控制與優化教育部重點實驗室,上海 200237)

針對多處理器平臺完全可搶占調度(Fully Preemptive Scheduling,F-PS)可能造成低優先級任務的響應時間超出截止期限的問題,提出了兩種基于固定搶占點模型的限制搶占調度算法:一種是常規延遲(Regular Deferrable Scheduling,RDS),即高優先級任務搶占正在運行的執行到最近搶占點的低優先級任務,被搶占的任務可能不具有最低優先級;另一種是自適應延遲(Adaptive Deferrable Scheduling,ADS),即高優先級任務等待正在運行的最低優先級任務執行到最近的可搶占點位置,并搶占。搭建了一個仿真實驗平臺,并在該平臺上進行一系列的仿真實驗來探究兩種算法的性能表現。實驗結果表明:在動態和靜態優先級調度下,任務搶占次數大小順序為F-PS > RDS > ADS;當搶占時間消耗大于臨界值時,RDS和ADS的任務可調度率與F-PS接近。

多核處理器系統調度; 限制搶占調度; 常規延遲調度; 自適應延遲調度

實時系統已經廣泛應用于航空航天、軍事電子、進程控制、網絡通信以及多媒體系統等領域[1-3]。在這些系統中,任務越來越復雜,對處理器的性能要求越來越高。長久以來,半導體廠商將研究重點放在提高時鐘頻率上,然而,時鐘頻率的提高會導致處理器能耗的急劇提升[4],限制了單核處理器性能的持續提升。為了研制高性能處理器,硬件廠商將研究重點轉到在一個芯片上集成更多的處理器上,即多處理器系統。與單處理器系統相比,同等性能的情況下,多處理器系統的功耗更低。多處理器系統的發展使多處理器平臺的任務調度算法的研究越來越迫切。

單處理器平臺上任務調度算法的分類有很多種[5]。根據任務的優先級在執行過程中是否改變,任務調度算法可以分為靜態優先級和動態優先級調度算法,例如單調期限調度算法(Deadline Monotonic,DM)[6]和最早期限優先算法(Early Deadline First,EDF)[7];根據任務是否允許延時,任務調度算法可以分為強實時調度算法(Hard real-time scheduling)和弱實時任務調度算法(Weak real-time scheduling);根據任務在執行過程中是否允許被搶占,任務調度算法可以分為可搶占調度算法(Preemptive Scheduling,PS)以及不可搶占算法(Non-Preemptive Scheduling,NPS)。

為了保證實時性,多處理器系統任務調度算法都有搶占調度機制,即高優先級任務可以搶占CPU上正在運行的低優先級任務。然而,由搶占造成的操作系統額外時間消耗增加了任務的最壞情況響應時間(Worst Case Response Time,WCRT),可能造成低優先級任務不可調度。限制搶占調度(Limited Preemptive Scheduling,LPS)是介于完全可搶占(Fully PS,F-PS)與不可搶占調度(Fully NPS,F-NPS)之間的一種調度,兼有兩者的優缺點。

本文涉及的多核處理器系統限制搶占調度算法包括兩種:一種是高優先級任務只搶占所有正在運行任務中最低優先級的任務;另一種是高優先級任務搶占最早可被搶占的低優先級任務,該任務優先級可能不是最低的。

與單處理器系統實時調度算法相比,多處理器系統實時調度算法不僅要考慮任務的執行策略,還要考慮任務的CPU分配問題。很多優良的單處理器實時調度算法在多處理器系統上的表現并不突出,例如“Dhall 效應”[8]。文獻[9]已經證明,在單核處理器上,LPS的性能比F-PS與F-NPS優良。在多核處理器系統,文獻[10]和文獻[11]分別對基于固定優先級和動態優先級的LPS的性能作了仿真研究,但兩者都沒有考慮任務搶占的操作系統時間消耗。而本文考慮了任務搶占過程的操作系統時間消耗;對基于固定優先級的LPS和基于動態優先級的LPS的性能作了橫向對比,對設計者在不同應用場景之下選擇不同的多核處理器系統LPS有一定的指導作用。

1 基于固定搶占點的限制搶占調度算法

1.1概述

綜合可預知性和效率考慮,F-PS與F-NPS算法各有優缺點[12]。F-PS算法在保證高優先級任務得到及時響應的同時增加了低優先級任務的WCRT。而在一些特殊場合,例如I/O讀寫等,由于造價問題,F-NPS占主導地位。限制搶占調度算法是一種介于F-PS與F-NPS的一種算法,同時兼顧兩種算法的優缺點。

1.2固定搶占點模型

固定搶占點 (Fixed Preemptive Points,FPP)模型是文獻[13]中提到的一種限制搶占模型。在FPP模型中,任務被若干FPP分為不同的不可搶占區域(Non-Preemptive Region,NPR),搶占只允許發生在FPP位置。圖1為FPP模型示意圖,其中任務τ被FPP分為兩個不可搶占的部分τ1和τ2,即τ在執行τ1和τ2期間不允許被高優先級任務搶占。

圖1 固定搶占點 (FPP)模型Fig.1 Model of fixed preemptionpoint(FPP)

與F-PS相比,固定搶占點模型使高優先級任務執行延遲一段時間,延遲時間與NPR的長度有關。該延遲可能造成高優先級任務錯過截止日期,從而造成任務集不可調度。同時,NPR的設置使任務集在執行過程的搶占次數減少,任務搶占過程的操作系統總時間消耗減少。當搶占過程的操作系統總時間消耗較大時,固定搶占點模型的性能將會明顯提升。

不難發現,F-PS是固定搶占點模型的特殊情況,即NPR = 1。當NPR長度大于任務的可執行時間時,固定搶占點模型退化為F-NPS。

1.3兩種基于固定搶占點模型的LPS

本文提出了兩種基于固定搶占點模型的多處理器平臺的限制搶占調度算法即常規延遲限制搶占調度(Regular Deferred Limited Preemptive Scheduling,RD-LPS)和自適應延遲限制搶調度(Adaptive Deferred Limited Preemptive Scheduling,AD-LPS)。在RD-LPS中,高優先級任務搶占最先執行到固定搶占點的任務,該任務可能不是所有正在執行中最低優先級的任務。在AD-LPS中,當高優先級任務被釋放時,搶占只發生在所有正在執行任務中最低優先級任務的最近固定搶占點位置。圖2和圖3分別展示了RD-LPS和AD-LPS兩種調度策略。任務τ1的優先級最低,τ3的優先級最高。當τ3被釋放時,τ1和τ2正在執行。在RD-LPS中,τ3搶占τ2,而在ADS-LPS中,τ3搶占τ1。

圖2 一般延遲限制搶占調度(RD-LPS)Fig.2 Regular deferred limited preemptive scheduling

圖3 自適應延遲限制搶占調度(AD-LPS)Fig.3 Adaptive deferred limited preemptive scheduling

1.4算法適應硬件平臺

按照計算內核是否對等,多核處理器可以分為同構多核和異構多核。前者所有的計算內核地位對等,后者采用“主處理核+協處理核”的設計。目前比較主流的多核處理器各CPU核心之間的通信機制主要是基于總線共享的Cache結構和基于片上的互聯結構。前者結構簡單,通信速度高,但是可擴展性差;后者可擴展性好,結構復雜,軟件改動較大。

本文的仿真實驗中,各個處理器內核對等,采用基于總線共享的Cache結構,處理器內核共享一個任務隊列。

2 實時任務模型

2.1任務模型

設有一個任務集

(1)

其中τi(1?i?n)為周期任務。每個周期任務τi可以用以下四元表示:

(2)

其中:Ci為任務執行所需要的時間;Ti為周期任務周期;Bm為不能被搶占區域的長度;R(i,j) 為第i個任務的第j個實例的釋放時間;Di為周期任務的相對截止期限。本文假設任務集所有任務的第1個實例在t= 0 釋放,R(i,j) 的計算公式如下:

(3)

2.2操作系統時間消耗

任務搶占保證了系統的實時性,但是操作系統在任務搶占過程中有一些額外消耗。文獻[13]提出在每次搶占過程中,操作系統的額外時間消耗包括上下文切換、總線時間消耗等。當搶占次數過于頻繁時,操作系統的額外時間消耗可能導致任務超出截止期限,即不可調度。圖4中,操作系統額外時間消耗導致任務τ1的執行完成時間超出了截止期限,即該任務不可調度。

圖4 搶占導致任務不可調度Fig.4 Deadline miss due to the overheads caused by preemption

3 實驗設計

3.1任務生成器

任務生成器對整個仿真結果有著至關重要的作用。任務生成算法必須滿足兩點要求:(1)算法隨機生成任務的過程是無偏(Unbiased)和理想的(Ideally);(2)可以根據特定設定值生成任務。本文采用Unifast-Discard[14]算法來生成任務。該算法可以根據預先設定的任務數量和任務總可調度利用率(Utilization)生成分布均勻的任務,滿足任務生成算法的要求。

在多處理器系統中,任務可調度的必要條件是任務的總可調度利用率小于處理器的數量。

3.2仿真工具

按照任務分配不同CPU的機制,多處理器系統任務調度可分為劃分調度(Partitioned Scheduling)和全局調度(Global Scheduling)[15]。本文采用全局調度機制,即所有處理器共享一個任務隊列。

按照任務優先級分配機制的不同,多處理器系統任務調度可分為固定優先級調度(FPS)和動態優先級調度(DPS)。在仿真過程中,本文采用了兩種經典的調度策略,即DM和EDF調度,分別代表兩種調度機制。

為了評估不同調度算法之間的性能差異,搭建了一個仿真平臺,包括:

(1) 任務生成器。該生成器能根據設定的任務數量和任務總可調度利用率生成任務集;

(2) 搶占調度算法,即G-P-FPS 和 G-P-DPS;

(3) 不可搶占調度算法,即G-NP-FPS;

(4)一般延遲限制搶占調度算法,即G-RD-FPS 和 G-RD-DPS;

(5) 自適應限制搶占調度算法,即G-AD-FPS 和 G-AD-DPS。

3.3實驗內容

仿真工具搭建完成后,設計一些實驗來評估調度算法性能的差異。通過控制變量法來驗證某一因素對實驗結果的影響,實驗包括:

(1) 改變總可調度利用率;

(2) 改變每個任務集的任務數量;

(3) 改變系統中處理器的數目;

(4) 改變不可搶占區域的長度;

(5) 改變搶占過程中操作系統額外消耗的時間。

4 仿真實驗結果

4.1實驗參數

實驗參數的選擇對實驗結果有很大影響,本文的實驗參數如下:處理器數目為16;任務集數目為30;每個任務集任務數目為30;每個任務的任務實例數目為2 000;任務總可調度利用率為0.6×處理器數目;任務最小周期為[1,500];NPR長度為3;搶占過程操作系統額外時間消耗為1。

4.2任務總可調度利用率的影響

任務的總可調度利用率對任務執行過程中的搶占次數有一定的影響。實驗中,將任務總可調度利用率從2增加到12,其他條件不變。圖5展示了不同任務總可調度利用率下的搶占次數。可知:

(1) 搶占次數隨總可調度利用率的增大而增大。因為隨著任務總可調度利用率的增大,任務的執行時間變長,搶占次數變多;

(2) 動態優先級調度下的搶占次數遠大于固定優先級下的調度次數。因為每個時間單元,任務的優先級發生改變,搶占次數增多;

(3) 在兩種優先級調度機制下,搶占次數的大小順序是一致的。搶占次數的大小順序是:完全搶占調度(G-P-S)> 一般延遲限制搶占調度(G-RD-S)> 自適應延遲限制搶占調度(G-AD-S)。

圖5 不同任務總可調度利用率下的搶占次數Fig.5 Numbers of preemption different task utilizations

4.3每個任務集任務數量的影響

將單個任務集的任務數量從20增加到40,圖6展示了不同任務數量下的搶占次數。由圖6可知:

(1) 搶占次數隨單個任務集任務數量的增加而增加。因為任務數量變大,任務搶占的概率增大。

(2) 動態優先級調度下的搶占次數遠大于固定優先級下的調度次數。

(3) 在兩種優先級調度機制下,搶占次數的大小順序與4.2節實驗結果相同。

(4) G-P-FPS與G-RD-FPS的搶占次數比較接近。

4.4處理器數量的影響

將處理器數量從2增加到28,仿真結果如圖7所示。由圖7可知:

(1) 動態優先級調度下,搶占次數隨處理器數目的增加而增加。靜態優先調度下,隨著處理器數量的增加,搶占次數先減小后增大。

(2) 動態優先級調度下的搶占次數遠大于固定優先級調度下的搶占次數。

(3) 在兩種優先級調度機制下,搶占次數的大小順序與4.2節、4.3節的實驗結果相同。

圖6 單個任務集任務數量不同時的搶占次數Fig.6 Numbers of preemption varying the number of tasks per taskset

圖7 處理器數目不同時的任務搶占次數Fig.7 Numbers of preemption varying the number of processors

4.5NPR長度的影響

不可搶占區域(NPR)的長度對LPS的表現有很大的影響,對F-P-S 和F-NP-S沒有影響,仿真結果如圖8所示。由圖8可知:

(1) 隨著NPR長度的增加,搶占次數減少。當NPR長度增加時,任務的可搶占點變少,發生搶占的概率變低,次數變少。

(2) 當NPR長度比較小時,動態優先級調度下的搶占次數遠大于固定優先級調度。隨著NPR長度的增加,差距減小。當NPR長度較大時,任務的執行時間與NPR長度相近,動態優先級調度退化為靜態優先級調度,兩者的搶占次數接近。

(3) 兩種優先級調度機制的搶占次數大小順序一致。

圖8 NPR長度不同時的任務搶占次數Fig.8 Numbers of preemption varing the length of NPR

4.6搶占過程操作系統額外時間消耗的影響

在每次搶占過程中,操作系統會有一些額外的時間消耗,影響調度算法的表現。圖9和圖10分別示出了隨著操作系統額外時間消耗的增大,任務在動態優先級和靜態優先級調度的可調度率。由圖9和圖10知:

(1) 隨著搶占消耗時間的增加,可搶占的調度算法的任務可調度率快速降低,當時間消耗數值大于6時,搶占調度的任務可調度率低于不可搶占調度;當數值大于19時,搶占調度的可調度率接近0。

(2) 額外時間消耗的增加對G-P-DPS的影響程度最大,因為在該調度中,搶占次數最多。當時間消耗大于某個值時,可搶占調度與限制搶占調度的可調度率接近。

圖9 動態優先級調度下搶占時間不同時的可調度率Fig.9 Schedulable ration of tasksets varying the overheads under dynamic priority scheduling

圖10 靜態優先級調度下搶占時間不同時的可調度率Fig.10 Schedulable ration of tasksets varying the overheads under static priority scheduling

5 結論和展望

綜合在仿真平臺上實施一系列的仿真實驗結果,不難發現,在多處理器平臺上:

(1) 動態優先級調度的搶占次數遠大于靜態優先級調度的搶占次數;在每次搶占過程中,操作系統都有一定的時間消耗。操作系統的時間消耗增大時,動態優先級調度的性能明顯下降。當時間消耗達到一定程度時,動態優先級調度的性能比靜態優先級調度差。

(2) 搶占次數的大小順序為G-P-DPS > G-RD-DPS > G-AD-DPS > G-P-FPS > G-RD-FPS > G-AD-FPS。

(3) 搶占調度的任務可調度率隨搶占時間消耗的增大而降低。當時間消耗大于某個值時,搶占調度的任務可調度率低于不可搶占調度。

本文仍有一些局限之處:首先,由于實驗條件的限制,本文的限制搶占調度算法的性能未能在實際多核處理器平臺上驗證;其次,本文仿真產生的任務為周期性任務,多核平臺的限制搶占調度算法對非周期性任務的性能表現是否與周期性任務相似尚未得到驗證。

[1]王濤.實時系統任務調度若干關鍵技術的研究[D].哈爾濱:哈爾濱工程大學,2006.

[2]賓雪蓮.實時系統中的任務調度技術研究[D].長沙:國防科學技術大學,2004.

[3]彭浩,韓江洪,陸陽,等.多處理器硬實時系統的搶占閾值調度研究[J].計算機研究與發展,2015,52(5):1177-1186.

[4]ANSARI K H,CHITRA P.Power-aware scheduling of fixed priority tasks in soft real-time multicore systems[C]//2013 IEEE International Conference on Emerging Trends in Computing,Communication and Nano Technology.USA:IEEE,2013:496-502.

[5]LI Jie.The research of scheduling algorithms in real-time system[C]//2010 International Conference on Computer and Communication Technologies in Agriculture Engineering.USA:IEEE,2010:333-336.

[6]LEUNG J,WHITEHEAD J.On the complexity of fixed priority scheduling of periodic real-time tasks[J].Performance Evaluation,1982:2(4):237 -250.

[7]LIU C L,LAYLAND J.Scheduling algorithms for multiprogramming in a hard real-time systems[J].Journal of the ACM,1973,20(1):46-61.

[8]DHALL S K,LIU C L.On a real-time scheduling problem[J].Operations Research,1978,26:127-140.

[9]MARINHO J,NELIS V.Limited preemptive global fixed task priority[C]//2013 IEEE 34th Real-Time Systems Symposium.Canada:IEEE,2013:182-191.

[10]NIE YONGGAO,THEKKILAKATTIL A.Limited preemptive fixed priority scheduling of real-time tasks on multi-processors[D].Sweden:Malardalen University,2015.

[11]ZHU Kaiqian,THEKKILAKATTIL A.Limited preemptive early deadline first scheduling of real-time tasks on multi-processors[D].Sweden:Malardalen University,2015.

[12]GRENIER M,NAVET N.Fine-tuning MAC-level protocols for optimized real-time QoS[J].IEEE Transactions on Industrial Informatics,2008,4(1):6-15.

[13]BUTTAZZ G C,BERTOGNA M,YAO Gang.Limited preemptive scheduling for real-time systems[J].IEEE Transactions on Industrial Informatics,2013,9(1):3-15.

[14]DAVIS R,BURNS A.Priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems[C]//30th IEEE Real-Time Systems Symposium.Washington,DC:IEEE,2010:398-409.

[15]LAUZAC S,MELHEM R,MOSS′E D.Comparison of global and partitioning schemes for scheduling rate monotonic tasks on a multiprocessor[C]//10th Euromicro Workshop on Real-Time Systems.Berlin:IEEE,1998:188-195.

Real-Time Task Limited Preemptive Scheduling on Multi-processors

WANG Hua-zhong,NIE Yong-gao

(Key Laboratory of Advanced Control and Optimization for Chemical Process,Ministry of Education,East China University of Science and Technology,Shanghai 200237,China)

In multi-processors scheduling,fully preemptive scheduling (F-PS) may result in the tasks with lower priority beyond the deadline.In this work,two limited preemptive scheduling (LPS) algorithms are proposed to solve the above problem.The first one is regular deferrable scheduling (RDS),in which the tasks with higher priority preempt the first among the lower priority tasks that finish executing a non-preemptive region.The other is adaptive deferrable scheduling (ADS),where the scheduler waits to preempt the lowest priority running task.A series of experiments are carried out via the built simulator to investigate the performance of the two LPS,which show:(1) the number of preemptions in dynamic and static scheduling is F-PS > RDS >ADS;(2) the schedulable ratios of RDS and ADS are almost equal to the one of F-PS when the time consuming in preemptions is bigger that the threshold.

multi-processors scheduling; limited preemptive scheduling; regular deferrable scheduling; adaptive deferrable scheduling

A

1006-3080(2016)03-0393-06

10.14135/j.cnki.1006-3080.2016.03.016

2015-09-25

王華忠(1969-),男,江蘇南京人,副教授,博士,從事工業過程模型化與控制的研究。

TP316

猜你喜歡
實驗系統
記一次有趣的實驗
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
微型實驗里看“燃燒”
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
做個怪怪長實驗
半沸制皂系統(下)
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
NO與NO2相互轉化實驗的改進
主站蜘蛛池模板: 无码网站免费观看| 美女毛片在线| 亚洲一区黄色| 亚洲av无码专区久久蜜芽| 久久精品国产亚洲麻豆| 毛片视频网| 午夜福利亚洲精品| 国产一区二区色淫影院| 免费毛片在线| 久久久久无码精品| 99一级毛片| 激情综合网址| 91丨九色丨首页在线播放 | 色综合久久久久8天国| 色偷偷男人的天堂亚洲av| 在线看片免费人成视久网下载| 欧美成人第一页| 国产免费怡红院视频| 中文字幕在线视频免费| 91亚洲免费| 国产精品理论片| 亚洲高清无码精品| 国产成人精品视频一区二区电影| 最新精品国偷自产在线| 久久免费成人| 国产主播一区二区三区| 伊人久久久久久久久久| 91在线一9|永久视频在线| 国产午夜不卡| 91无码人妻精品一区二区蜜桃| 中文字幕日韩视频欧美一区| 国产精品亚洲专区一区| 亚洲国产在一区二区三区| 精品成人一区二区三区电影| 国产丝袜无码一区二区视频| 色婷婷亚洲综合五月| 99r在线精品视频在线播放| 欧美国产三级| 色播五月婷婷| 精品视频第一页| 国产福利在线免费| 国产内射在线观看| 成人年鲁鲁在线观看视频| v天堂中文在线| 久久综合AV免费观看| 国产成年无码AⅤ片在线| 国产精品久久久久久久久kt| 无码中字出轨中文人妻中文中| 欧美综合区自拍亚洲综合绿色 | 欧美精品H在线播放| 夜夜高潮夜夜爽国产伦精品| 国产丝袜精品| 国产尤物视频在线| 国产免费福利网站| 少妇人妻无码首页| 亚洲国模精品一区| 国产精品天干天干在线观看| 久久亚洲AⅤ无码精品午夜麻豆| 91视频精品| 亚洲欧美日韩动漫| 欧美国产三级| 国产午夜福利片在线观看| 亚洲日韩AV无码一区二区三区人| 日韩东京热无码人妻| 亚洲人免费视频| 国产在线精彩视频二区| 日韩在线永久免费播放| 国产尤物视频网址导航| 99在线国产| 久久无码高潮喷水| 一本色道久久88亚洲综合| 亚洲综合经典在线一区二区| 亚洲中文字幕97久久精品少妇| 欧洲成人在线观看| 国内老司机精品视频在线播出| 97久久精品人人| 国产成人1024精品| 久久国产精品波多野结衣| 小说区 亚洲 自拍 另类| 一区二区三区在线不卡免费| 五月婷婷精品| 国产国产人在线成免费视频狼人色|