[發明專利]一種任務搶占的方法和裝置有效
| 申請號: | 201410835829.3 | 申請日: | 2014-12-26 |
| 公開(公告)號: | CN104636205B | 公開(公告)日: | 2019-02-05 |
| 發明(設計)人: | 楊成偉 | 申請(專利權)人: | 北京奇藝世紀科技有限公司 |
| 主分類號: | G06F9/50 | 分類號: | G06F9/50 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司 11319 | 代理人: | 劉祥景 |
| 地址: | 100080 北京市海淀*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 方法和裝置 預留資源 占用 任務釋放 資源確定 非共享 預留 殺死 | ||
本發明實施例提供了一種任務搶占的方法和裝置,其中,所述任務搶占的方法,具體包括:殺死框架內的被搶占任務;將所述被搶占任務占用的資源確定為所述框架的臨時預留資源;其中,所述臨時預留資源為預留給特定框架的非共享資源。本發明實施例可以避免在犧牲自身的被搶占任務的情況下該被搶占任務釋放的資源被其它框架所占用的問題。
技術領域
本發明涉及計算機技術領域,特別是涉及一種任務搶占的方法和裝置。
背景技術
隨著計算機技術的飛速發展,對計算能力和資源利用率的需求也不斷提高,因此,云計算應運而生。在一方面,云計算以一種可管理、易擴展的方式提供計算能力;在另一方面,云計算以資源池的方式管理資源,用戶對于資源可以隨時獲取,按需使用,以提高資源利用率。
目前,在一個云計算集群中運行多個計算框架(以下簡稱框架)是一種提高集群資源利用率行之有效的方法。現有方案中,多個框架可以通過共享資源池共享整個集群的資源,相應的資源共享流程具體可以包括:
步驟1、按照某種資源分配算法將該共享資源池中資源分配給某個框架;
步驟2、框架使用該資源運行任務;
步驟3、任務完成,釋放資源,資源重新回到該共享資源池;
重復執行步驟1-3。
從上述資源共享流程可以看出,不管資源分配算法是怎樣實現的,總是會經歷資源釋放重新回到該共享資源池這個步驟,然后再由資源分配算法來分配該資源;也即,資源作為該共享資源池的組成部分,分配給哪個框架具有不確定性,這種不確定性是由資源分配算法、及當前資源狀態、當前框架狀態等運行狀態決定的。
上述資源共享流程在提高集群資源利用率的同時,還帶來了多框架之間資源競爭的問題:假設某一時刻,計算框架1上運行著低優先級的任務A,同時又收到了高優先級的任務B,此種情況下,為確保任務B能及時執行,需要通過殺死任務A來搶占任務A的資源1。然而,由于資源1是由資源管理者統一管理的,所以殺死任務A后,原來被任務A占用的資源1將會重新回收到該共享資源池中,然后變成空閑資源供所有框架競爭。然而,共享資源分配的不確定性決定了該資源1不能確保能夠被框架1競爭到。因此,對于框架1而言,犧牲了自己的任務A,釋放的資源1卻很有可能被其它框架競爭到。
發明內容
本發明實施例所要解決的技術問題是提供一種任務搶占的方法和裝置,能夠避免框架在犧牲自身的被搶占任務的情況下該被搶占任務釋放的資源被其它框架所占用的問題。
為了解決上述問題,本發明公開了一種任務搶占的方法,包括:
殺死框架內的被搶占任務;
將所述被搶占任務占用的資源確定為所述框架的臨時預留資源;其中,所述臨時預留資源為預留給特定框架的非共享資源。
優選地,所述方法還包括:
為所述框架內的搶占任務分配所述框架的臨時預留資源。
優選地,所述方法還包括:
在所述搶占任務執行完成后,將所述臨時預留資源釋放至共享資源池。
優選地,所述方法還包括:
當所述框架的臨時預留資源不能滿足所述搶占任務的資源需求時,殺死所述框架內的其它被搶占任務,并將所述其它被搶占任務占用的資源確定為所述框架的臨時預留資源,直至所述框架的臨時預留資源滿足所述搶占任務的資源需求。
優選地,所述搶占任務的優先級大于所述被搶占任務的優先級,或者所述搶占任務的優先級小于所述被搶占任務的優先級。
依據本發明的另一個方面,本發明公開了一種任務搶占的裝置,包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京奇藝世紀科技有限公司,未經北京奇藝世紀科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410835829.3/2.html,轉載請聲明來源鉆瓜專利網。





