[發(fā)明專(zhuān)利]用于具有多個(gè)處理器核心的處理器系統(tǒng)的同步器有效
| 申請(qǐng)?zhí)枺?/td> | 201210370444.5 | 申請(qǐng)日: | 2012-09-28 |
| 公開(kāi)(公告)號(hào): | CN102880585A | 公開(kāi)(公告)日: | 2013-01-16 |
| 發(fā)明(設(shè)計(jì))人: | 許勇;鄭方;高紅光;楊萱;施晶晶;過(guò)鋒 | 申請(qǐng)(專(zhuān)利權(quán))人: | 無(wú)錫江南計(jì)算技術(shù)研究所 |
| 主分類(lèi)號(hào): | G06F15/167 | 分類(lèi)號(hào): | G06F15/167;G06F9/52 |
| 代理公司: | 北京眾合誠(chéng)成知識(shí)產(chǎn)權(quán)代理有限公司 11246 | 代理人: | 龔燮英 |
| 地址: | 214083 江蘇*** | 國(guó)省代碼: | 江蘇;32 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 用于 具有 處理器 核心 系統(tǒng) 同步器 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及計(jì)算機(jī)設(shè)計(jì)領(lǐng)域,更具體地說(shuō),本發(fā)明涉及一種用于具有多個(gè)處理器核心的處理器系統(tǒng)的同步器。
背景技術(shù)
隨著單核處理器芯片集成度和主頻的提高,處理器技術(shù)遇到了制造成本、功耗、散熱等問(wèn)題,促使多核、多線程技術(shù)成為處理器系統(tǒng)發(fā)展的新方向。其中集成幾百甚至上千個(gè)核的處理器系統(tǒng)一般稱(chēng)為眾核處理器系統(tǒng)。多核處理器系統(tǒng)以及眾核處理器系統(tǒng)中的核數(shù)的增加保證了計(jì)算和數(shù)據(jù)處理能力持續(xù)提高。
多核處理器以及眾核處理器內(nèi)的同步操作比較頻繁,對(duì)同步效率的要求也越來(lái)越高,使用專(zhuān)用硬件同步器進(jìn)行同步效率遠(yuǎn)遠(yuǎn)高于傳統(tǒng)的鎖方式效率。
同時(shí),在多核及眾核處理器系統(tǒng)中,某個(gè)核心出現(xiàn)故障的概率大大提高。核心降級(jí)是最常用的容錯(cuò)方式,為支持容錯(cuò),降低軟件并行程序開(kāi)發(fā)復(fù)雜度,就需要同步器具有支持降級(jí)同步的能力。
要充分發(fā)揮多核處理器以及眾核處理器的性能,程序就必須采用多線程并發(fā)計(jì)算的方式。但是,多線程必然會(huì)遇到同步問(wèn)題,如果同步控制出現(xiàn)問(wèn)題,就可能出現(xiàn)死鎖。具體地說(shuō),當(dāng)一個(gè)線程因等待另一個(gè)線程的資源而阻塞,而同時(shí)該資源永遠(yuǎn)不會(huì)被釋放時(shí),就發(fā)生死鎖。死鎖檢查功能是進(jìn)行死鎖避免和消除的基礎(chǔ)支撐。
因此,希望能夠提供一種能夠有效提高本處理器的容錯(cuò)能力并支持死鎖檢查機(jī)制的處理器同步方案。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有技術(shù)中存在上述缺陷,提供一種能夠有效提高處理器系統(tǒng)的健壯性和容錯(cuò)能力、并支持死鎖檢查機(jī)制和可降級(jí)同步的同步器以及處理器系統(tǒng)。
根據(jù)本發(fā)明的第一方面,提供了一種用于具有多個(gè)處理器核心的處理器系統(tǒng)的同步器,其包括:同步向量表、同步處理部件、以及斷連分析處理部件;其中,所述同步向量表由多個(gè)條目組成,分別用于接收并對(duì)應(yīng)保存來(lái)自多個(gè)處理器核心的當(dāng)前待同步位圖請(qǐng)求信息;所述同步處理部件用于通過(guò)查詢(xún)所述同步向量表來(lái)對(duì)同步向量表中的情況進(jìn)行分析和處理,從而在待同步處理器核心均符合同步要求時(shí)向處理器核心返回同步完成信號(hào);所述斷連分析處理部件用于接收降級(jí)指示信號(hào),并且根據(jù)降級(jí)指示信號(hào)將所述同步器設(shè)置為降級(jí)同步模式或者非降級(jí)同步模式;此外,所述斷連分析處理部件用于接收斷連位信號(hào),根據(jù)斷連位信號(hào)更改所述同步向量表,從而實(shí)現(xiàn)在位處理器核心與降級(jí)斷連處理器核心的同步功能。
優(yōu)選地,上述用于具有多個(gè)處理器核心的處理器系統(tǒng)的同步器,其特征在于還包括:死鎖檢查部件,用于完成對(duì)所述同步向量表的死鎖條件檢查,當(dāng)同步向量表中描述的待同步位圖信息存在死鎖時(shí),進(jìn)行提示和報(bào)警。
根據(jù)本發(fā)明的第二方面,提供了一種用于具有多個(gè)處理器核心的處理器系統(tǒng)的同步器,其特征在于包括:同步向量表、同步處理部件、以及死鎖檢查部件;其中,所述同步向量表由多個(gè)條目組成,分別用于接收并對(duì)應(yīng)保存來(lái)自多個(gè)處理器核心的當(dāng)前待同步位圖請(qǐng)求信息;所述同步處理部件用于通過(guò)查詢(xún)所述同步向量表來(lái)對(duì)同步向量表中的情況進(jìn)行分析和處理,從而在待同步處理器核心均符合同步要求時(shí)向處理器核心返回同步完成信號(hào);所述死鎖檢查部件,用于完成對(duì)所述同步向量表的死鎖條件檢查,當(dāng)同步向量表中描述的待同步位圖信息存在死鎖時(shí),進(jìn)行提示和報(bào)警。
優(yōu)選地,上述用于具有多個(gè)處理器核心的處理器系統(tǒng)的同步器,其特征在于還包括述斷連分析處理部件,所述斷連分析處理部件用于接收降級(jí)指示信號(hào),并且根據(jù)降級(jí)指示信號(hào)將所述同步器設(shè)置為降級(jí)同步模式或者非降級(jí)同步模式;此外,所述斷連分析處理部件用于接收斷連位信號(hào),根據(jù)斷連位信號(hào)更改所述同步向量表,從而實(shí)現(xiàn)在位處理器核心與降級(jí)斷連處理器核心的同步功能。
優(yōu)選地,所述同步處理部件通過(guò)查詢(xún)所述同步向量表判斷處理器系統(tǒng)中的各個(gè)處理器核心是否滿(mǎn)足同步完成條件。
優(yōu)選地,在所述同步器處于降級(jí)同步模式時(shí),如果待同步的處理器核心視圖中存在不可同步的降級(jí)處理器核心,則同步處理部件使所述不可同步處理器核心排除在同步操作之外;并且當(dāng)所述同步請(qǐng)求信號(hào)攜帶至少兩個(gè)待同步的處理器核的信息時(shí),同步處理部件生成同步完成信號(hào)并且將所述同步完成信號(hào)傳遞給可同步未降級(jí)的待同步的處理器核心。
優(yōu)選地,在所述同步器處于非降級(jí)同步模式時(shí),如果待同步的處理器核中存在故障核心或者已經(jīng)被屏蔽的核心,則判斷發(fā)生異常,同步操作被撤銷(xiāo)。例如,在判斷發(fā)生異常時(shí),可通過(guò)斷連分析處理部件發(fā)出斷連異常信號(hào)。
優(yōu)選地,所述死鎖檢查器周期掃描所述同步向量表登記信息,根據(jù)資源依賴(lài)關(guān)系進(jìn)行硬件死鎖檢查,當(dāng)存在同步死鎖時(shí),發(fā)出異常信號(hào)。
該專(zhuān)利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專(zhuān)利權(quán)人授權(quán)。該專(zhuān)利全部權(quán)利屬于無(wú)錫江南計(jì)算技術(shù)研究所,未經(jīng)無(wú)錫江南計(jì)算技術(shù)研究所許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買(mǎi)此專(zhuān)利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210370444.5/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專(zhuān)利網(wǎng)。
- 同類(lèi)專(zhuān)利
- 專(zhuān)利分類(lèi)
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F15-00 通用數(shù)字計(jì)算機(jī)
G06F15-02 .通過(guò)鍵盤(pán)輸入的手動(dòng)操作,以及應(yīng)用機(jī)內(nèi)程序的計(jì)算,例如,袖珍計(jì)算器
G06F15-04 .在引入被處理的數(shù)據(jù)的同時(shí),進(jìn)行編制程序的,例如,在同一記錄載體上
G06F15-08 .應(yīng)用插接板編制程序的
G06F15-16 .兩個(gè)或多個(gè)數(shù)字計(jì)算機(jī)的組合,其中每臺(tái)至少具有一個(gè)運(yùn)算器、一個(gè)程序器及一個(gè)寄存器,例如,用于數(shù)個(gè)程序的同時(shí)處理
G06F15-18 .其中,根據(jù)計(jì)算機(jī)本身在一個(gè)完整的運(yùn)行期間內(nèi)所取得的經(jīng)驗(yàn)來(lái)改變程序的;學(xué)習(xí)機(jī)器





