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

一種多核處理器中視頻并行解碼的控制方法和裝置的制造方法

文檔序號(hào):8226384閱讀:513來(lái)源:國(guó)知局
一種多核處理器中視頻并行解碼的控制方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及視頻解碼領(lǐng)域,尤其涉及一種多核處理器中視頻并行解碼的控制方法和裝置。
【背景技術(shù)】
[0002]隨著現(xiàn)代科技的高速發(fā)展,多媒體通信在信息化過(guò)程中得到日益廣泛、深入的應(yīng)用,已經(jīng)成為通信領(lǐng)域中的主要通信方式。以視頻通信為代表的多媒體通信一一特別是移動(dòng)視頻通信,更是現(xiàn)代社會(huì)生活中的一種非常重要的交流手段。為了獲得高質(zhì)量和高分辨率的視頻內(nèi)容,視頻編碼效率不斷提高,與之相應(yīng)地,視頻編解碼的復(fù)雜度也大幅提升。在這個(gè)充斥著視頻內(nèi)容的時(shí)代,迫切需要提高視頻解碼的效率。由此,相比單核處理器,多核處理器以其高效的運(yùn)算性能及在低功耗方面的顯著優(yōu)勢(shì),給視頻解碼效率的提高帶來(lái)了可能性。如何在多核平臺(tái)上實(shí)現(xiàn)并行解碼,已經(jīng)引起相關(guān)領(lǐng)域研發(fā)人員越來(lái)越多的關(guān)注。
[0003]現(xiàn)有技術(shù)中,在多核平臺(tái)上實(shí)現(xiàn)并行解碼,一般著重于在一、兩種多核處理平臺(tái)或內(nèi)核數(shù)固定的嵌入式平臺(tái)上實(shí)現(xiàn),這兩種實(shí)現(xiàn)方法對(duì)擁有不同內(nèi)核數(shù)量的多核處理器平臺(tái)不具備良好的兼容性和適配性,例如,視頻解碼在雙核處理器平臺(tái)上有著很高的加速比,但運(yùn)行在配置四核或更多處理器內(nèi)核的平臺(tái)上卻仍然只能使用兩個(gè)核完成解碼;或者,即使能夠在更多的核上實(shí)現(xiàn)解碼,但由于每個(gè)核只能執(zhí)行解碼流程中一個(gè)固定的步驟,而導(dǎo)致當(dāng)一個(gè)核沒(méi)有任務(wù)時(shí),該核的資源被浪費(fèi),具體的,如滿足H.264標(biāo)準(zhǔn)進(jìn)行編碼的視頻流,其解碼的流程至少包括以下六個(gè)解碼子流程:熵解碼、反量化、反變換、運(yùn)動(dòng)補(bǔ)償、幀內(nèi)預(yù)測(cè)和環(huán)路濾波,在現(xiàn)有技術(shù)中使用一個(gè)核去完成熵解碼而用其它的多個(gè)核完成其余的解碼子流程,當(dāng)用于熵解碼的核沒(méi)有解碼任務(wù)時(shí),該核的資源則不能被利用,從而就造成核資源的浪費(fèi)。綜上,現(xiàn)有的多核并行解碼的方法,都未能有效利用多核處理器的資源,而導(dǎo)致解碼效率低下。

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

[0004]本發(fā)明的目的是提供一種多核處理器中視頻并行解碼的控制方法和裝置,以克服相關(guān)技術(shù)中未能有效利用多核處理器的資源導(dǎo)致解碼效率低的問(wèn)題。
[0005]本發(fā)明提供一種多核處理器中視頻并行解碼的控制方法,包括:
[0006]獲取執(zhí)行解碼任務(wù)的每個(gè)核的負(fù)載,其中執(zhí)行解碼任務(wù)的每個(gè)核用于完成解碼流程中的至少一個(gè)解碼子流程,所有執(zhí)行解碼任務(wù)的核并行工作,且所有執(zhí)行解碼任務(wù)的核共同完成所有的解碼子流程;
[0007]當(dāng)確定至少有一個(gè)核超負(fù)載時(shí),對(duì)執(zhí)行解碼任務(wù)的核所執(zhí)行的解碼子流程進(jìn)行調(diào)整,直至每個(gè)核都不超負(fù)載為止。
[0008]其中,所述解碼流程包括第一解碼流程集合和第二解碼流程集合,所述第一解碼流程集合和所述第二解碼流程集合均各自包括至少一個(gè)解碼子流程,且,所述第一解碼流程集合和所述第二解碼流程集合沒(méi)有交集;
[0009]所述執(zhí)行解碼任務(wù)的核包括:執(zhí)行所述第一解碼流程集合的第一類核,和,執(zhí)行所述第二解碼流程集合的第二類核。
[0010]其中,根據(jù)以下方式確定超負(fù)載:
[0011]當(dāng)?shù)谝活惡说目傌?fù)載與第二類核的總負(fù)載的差距大于預(yù)設(shè)差距時(shí),確定總負(fù)載較大的一類核超負(fù)載;
[0012]所述對(duì)執(zhí)行解碼任務(wù)的核所執(zhí)行的解碼子流程進(jìn)行調(diào)整,通過(guò)以下方式中的至少一種方式實(shí)現(xiàn):
[0013]方式一:指示將未超負(fù)載的一類核中滿足預(yù)設(shè)調(diào)整條件的至少一個(gè)核調(diào)整為超負(fù)載的一類核,并執(zhí)行超負(fù)載的一類核的解碼任務(wù),其中,所述預(yù)設(shè)調(diào)整條件為當(dāng)前處于休眠狀態(tài)或最早能夠完成當(dāng)前正在執(zhí)行的解碼任務(wù);
[0014]方式二:指示超負(fù)載的一類核將自身所執(zhí)行的部分解碼子流程調(diào)整至未超負(fù)載的一類核中執(zhí)行。
[0015]其中,所述第一解碼流程集合中的一個(gè)元素至少為熵解碼;
[0016]所述獲取執(zhí)行解碼任務(wù)的每個(gè)核的負(fù)載之前,所述方法還包括:
[0017]根據(jù)待解碼視頻流的編碼方式和每一幀圖像中可獨(dú)立熵解碼的最小數(shù)據(jù)塊的數(shù)量和類型,確定所述待解碼視頻流的每一幀圖像在所述第一類核中的解碼方式和所述第二類核中的解碼方式,其中,可獨(dú)立熵解碼的最小數(shù)據(jù)塊為對(duì)該數(shù)據(jù)塊執(zhí)行熵解碼時(shí)不需要所述待解碼視頻流中除該數(shù)據(jù)塊之外的其他數(shù)據(jù)的最小數(shù)據(jù)塊;
[0018]其中,所述第一類核的解碼方式包括以下中的至少一種:幀級(jí)并行解析方式、條帶級(jí)并行解析方式、WPP并行解析方式;
[0019]所述第二類核的解碼方式包括以下中的至少一種:幀級(jí)并行重構(gòu)方式、條帶級(jí)并行重構(gòu)方式、塊/塊行級(jí)并行重構(gòu)方式。
[0020]其中,所述當(dāng)?shù)谝活惡说目傌?fù)載與第二類核的總負(fù)載的差距大于預(yù)設(shè)差距時(shí),確定總負(fù)載較大的一類核超負(fù)載,包括:
[0021]預(yù)測(cè)第一類核中待完成的解碼任務(wù)所需的解碼時(shí)間,和第二類核中待完成的解碼任務(wù)所需的解碼時(shí)間;
[0022]判斷第一類核中待完成的解碼任務(wù)所需的解碼時(shí)間與第二類核中待完成的解碼任務(wù)所需的解碼時(shí)間的時(shí)間差是否大于預(yù)設(shè)時(shí)間差;
[0023]當(dāng)判斷結(jié)果為是時(shí),則所需解碼時(shí)間較長(zhǎng)的一類核超負(fù)載。
[0024]其中,所述方法還包括:
[0025]針對(duì)執(zhí)行解碼任務(wù)的每個(gè)核,當(dāng)監(jiān)測(cè)到該核沒(méi)有待執(zhí)行的解碼任務(wù)且未確定解碼任務(wù)已結(jié)束時(shí),指示該核進(jìn)入休眠狀態(tài)。
[0026]另一方面,本發(fā)明還提供一種多核處理器中視頻并行解碼的控制裝置,所述裝置包括:
[0027]獲取模塊,用于獲取執(zhí)行解碼任務(wù)的每個(gè)核的負(fù)載,其中執(zhí)行解碼任務(wù)的每個(gè)核用于完成解碼流程中的至少一個(gè)解碼子流程,所有執(zhí)行解碼任務(wù)的核并行工作,且所有執(zhí)行解碼任務(wù)的核共同完成所有的解碼子流程;
[0028]調(diào)整模塊,用于當(dāng)確定至少有一個(gè)核超負(fù)載時(shí),對(duì)執(zhí)行解碼任務(wù)的核所執(zhí)行的解碼子流程進(jìn)行調(diào)整,直至每個(gè)核都不超負(fù)載為止。
[0029]所述解碼流程由第一解碼流程集合和第二解碼流程集合組成,所述第一解碼流程集合和所述第二解碼流程集合均各自包括至少一個(gè)解碼子流程,且,所述第一解碼流程集合和所述第二解碼流程集合沒(méi)有交集;
[0030]所述執(zhí)行解碼任務(wù)的核包括:執(zhí)行所述第一解碼流程集合的第一類核,和,執(zhí)行所述第二解碼流程集合的第二類核。
[0031]所述裝置還包括:
[0032]超負(fù)載確定模塊,用于當(dāng)?shù)谝活惡说目傌?fù)載與第二類核的總負(fù)載的差距大于預(yù)設(shè)差距時(shí),確定總負(fù)載較大的一類核超負(fù)載;
[0033]所述調(diào)整模塊,包括:
[0034]第一調(diào)整單元,用于指示將未超負(fù)載的一類核中滿足預(yù)設(shè)調(diào)整條件的至少一個(gè)核調(diào)整為超負(fù)載的一類核,并執(zhí)行超負(fù)載的一類核的解碼任務(wù),其中,所述預(yù)設(shè)調(diào)整條件為當(dāng)前處于休眠狀態(tài)或最早能夠完成當(dāng)前正在執(zhí)行的解碼任務(wù);
[0035]第二調(diào)整單元,用于指示超負(fù)載的一類核將自身所執(zhí)行的部分解碼子流程調(diào)整至未超負(fù)載的一類核中執(zhí)行。
[0036]所述裝置還包括:
[0037]解碼方式確定模塊,用于所述第一解碼流程集合中至少包括熵解碼時(shí);所述獲取模塊獲取執(zhí)行解碼任務(wù)的每個(gè)核的負(fù)載之前,根據(jù)待解碼視頻流的編碼方式和每一幀圖像中可獨(dú)立熵解碼的最小數(shù)據(jù)塊的數(shù)量和類型,確定所述待解碼視頻流的每一幀圖像在所述第一類核中的解碼方式和所述第二類核中的解碼方式,其中,可獨(dú)立熵解碼的最小數(shù)據(jù)塊為對(duì)該數(shù)據(jù)塊執(zhí)行熵解碼時(shí)不需要所述待解碼視頻流中除該數(shù)據(jù)塊之外的其他數(shù)據(jù)的最小數(shù)據(jù)塊;
[0038]其中,所述第一類核的解碼方式包括以下中的至少一種:幀級(jí)并行解析方式、條帶級(jí)并行解析方式、WPP并行解析方式;
[0039]所述第二類核的解碼方式包括以下中的至少一種:幀級(jí)并行重構(gòu)方式、條帶級(jí)并行重構(gòu)方式、塊/塊行級(jí)并行重構(gòu)方式。
[0040]所述超負(fù)載確定模塊包括:
[0041]預(yù)測(cè)單元,用于預(yù)測(cè)第一類核中待完成的解碼任務(wù)所需的解碼時(shí)間,和第二類核中待完成的解碼任務(wù)所需的解碼時(shí)間;
[0042]判斷單元,用于判斷第一類核中待完成的解碼任務(wù)所需的解碼時(shí)間與第二類核中待完成的解碼任務(wù)所需的解碼時(shí)間的時(shí)間差是否大于預(yù)設(shè)時(shí)間差;
[0043]確定單元,用于當(dāng)判斷結(jié)果為是時(shí),則所需解碼時(shí)間較長(zhǎng)的一類核超負(fù)載。
[0044]所述裝置還包括:
[0045]休眠模塊,用于針對(duì)執(zhí)行解碼任務(wù)的每個(gè)核,當(dāng)監(jiān)測(cè)到該核沒(méi)有待執(zhí)行的解碼任務(wù)且未確定解碼任務(wù)已結(jié)束時(shí),指示該核進(jìn)入休眠狀態(tài)。
[0046]本發(fā)明至少具有以下有益效果:在多核處理器中實(shí)現(xiàn)并行解碼,通過(guò)將解碼流程預(yù)先分配給至少兩個(gè)核,并根據(jù)每個(gè)核的負(fù)載情況,改變至少一個(gè)核所執(zhí)行的解碼流程,實(shí)現(xiàn)對(duì)核資源的合理分配,從而提高資源的利用率,進(jìn)而提高并行解碼的效率。此外,本發(fā)明實(shí)施例中,預(yù)先將解碼流程合理地分配為第一流程集合和第二流程集合,并由第一類核執(zhí)行第一流程集合,第二類核執(zhí)行第二流程集合,視第一類核和第二類核的總負(fù)載情況,通過(guò)調(diào)整第一類核的數(shù)量、或第二類核的數(shù)量,又或者通過(guò)改變不同流程集合內(nèi)所包含的解碼流程的子流程,降低超負(fù)載的核的負(fù)載,并提高低負(fù)載核的負(fù)載,從而進(jìn)一步實(shí)現(xiàn)對(duì)多核處理器的資源的合理利用,提高并行解碼的效率。再一方面,進(jìn)一步的,本發(fā)明實(shí)施例中,第一類核對(duì)應(yīng)解析任務(wù),第二類核對(duì)應(yīng)重構(gòu)任務(wù),通過(guò)分析待解碼視頻流的特性,確定出可獨(dú)立進(jìn)行解析的數(shù)據(jù)塊,例如可獨(dú)立進(jìn)行熵解碼的最小數(shù)據(jù)塊,然后為每一類核根據(jù)待處理視頻流的特性,確定出適用的并行解碼方式,使得第一類核和第二類核之間可以以不同的并行解碼方式執(zhí)行解碼任務(wù),從而進(jìn)一步提高并行解碼的效率。
[0047]應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
【附圖說(shuō)明】
[0048]圖1為本發(fā)明實(shí)施例中多核處理器中視頻并行解碼的控制方法的示例性流程圖之一;
[0049]圖2為本發(fā)明實(shí)施例中一種解碼流程示意圖;
[0050]圖3為本發(fā)明實(shí)施例中執(zhí)行解碼任務(wù)的核所執(zhí)行的解碼子流程的示意圖;
[0051]圖4為本發(fā)明實(shí)施例中第一類核的解碼方式的示意圖;
[0052]圖5為本發(fā)明實(shí)施例中第二類核的解碼方式的示意圖;
[0053]圖6為本發(fā)明實(shí)施例中第一類核的解碼方式和第二類核的解碼方式進(jìn)行組合的示意圖;<
當(dāng)前第1頁(yè)1 2 3 4 5 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
墨竹工卡县| 南城县| 双柏县| 丹阳市| 洪江市| 兰溪市| 额尔古纳市| 泰州市| 阿坝| 鸡东县| 滦平县| 故城县| 南靖县| 敦化市| 噶尔县| 渝北区| 昭苏县| 平邑县| 华宁县| 黑山县| 汪清县| 广平县| 横山县| 巴林右旗| 竹山县| 永福县| 湖北省| 汨罗市| 台安县| 神木县| 钟山县| 惠安县| 宜昌市| 瓮安县| 乌鲁木齐县| 隆昌县| 印江| 进贤县| 东平县| 会昌县| 古浪县|