[發(fā)明專利]使用多核心處理器的并行處理在審
| 申請?zhí)枺?/td> | 201380073411.7 | 申請日: | 2013-11-22 |
| 公開(公告)號: | CN105144087A | 公開(公告)日: | 2015-12-09 |
| 發(fā)明(設(shè)計)人: | 戴蒙·芬尼;阿肖克·馬圖爾 | 申請(專利權(quán))人: | 恩邦德網(wǎng)絡(luò)公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38;G06F9/46 |
| 代理公司: | 北京潤平知識產(chǎn)權(quán)代理有限公司 11283 | 代理人: | 羅攀;肖冰濱 |
| 地址: | 美國加利*** | 國省代碼: | 美國;US |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 使用 多核 處理器 并行 處理 | ||
相關(guān)申請交叉引用
本申請要求2012年12月20號提交的美國臨時申請序列號61/740,374的權(quán)益。
本申請要求2013年3月5號提交的美國專利申請序列號13/786,144的權(quán)益。
技術(shù)領(lǐng)域
本發(fā)明大體上涉及并行處理。更具體地,本發(fā)明涉及使用多核心處理器的并行處理。
背景技術(shù)
多核心處理器是具有兩個或多個獨立的實際中央處理單元(稱為“核心”)的單一計算部件,實際中央處理單元是讀取并執(zhí)行程序指令的單元。多核心處理器被用于許多應(yīng)用領(lǐng)域,包括一般用途的、嵌入式的、網(wǎng)絡(luò)、數(shù)字信號處理(DSP),以及圖形。通過使用多核心處理器所取得的性能上的改進在很大程度上取決于所用的軟件算法及其實施。特別是,可能取得的改進被可被同時并行在多個核心上運行的軟件的部分所限制。
在多核心網(wǎng)絡(luò)處理中,一個關(guān)鍵的挑戰(zhàn)是如何利用這些裝置中所有的核心以獲得最大的網(wǎng)絡(luò)性能,盡管在對稱多處理操作系統(tǒng)中存在固有的性能限制。在當前的多核心網(wǎng)絡(luò)處理器架構(gòu)中,數(shù)據(jù)包的處理是由一個或多個核心處理器完成的。各個核心處理器和核心處理器的各個線程、存儲器管理等之間的同步是通過軟件編程來實現(xiàn)的。此外,當數(shù)據(jù)包的處理從一個核心傳遞到另一個核心時,狀態(tài)或同步信息在核心之間被傳遞或在處理數(shù)據(jù)包的核心的線程之間傳遞。
大量的資源被消耗在在線程或處理器之間傳遞狀態(tài)/同步信息,從而降低了用于執(zhí)行實際網(wǎng)絡(luò)應(yīng)用相關(guān)的任務(wù)的資源的可用性。因此,傳遞狀態(tài)/同步信息的開銷降低了處理器的效率。
另外,在現(xiàn)有的結(jié)構(gòu)中,在等待下一個數(shù)據(jù)包到達時,核心處理器不執(zhí)行任何有用的網(wǎng)絡(luò)相關(guān)的操作。核心處理器可以是空閑狀態(tài),直到下一個數(shù)據(jù)包到達核心處理器。在目前具有管線專用核心的陣列的多核心處理器的系統(tǒng)中,多核心處理器被專用核心的性能和管線深度所限制。多核心還受到最慢核心的限制。
概述
這里介紹的是使用多核心處理器進行并行處理的方法、系統(tǒng)、范例和結(jié)構(gòu)。所公開的解決方案可以在各種應(yīng)用中被使用,例如通用處理、網(wǎng)絡(luò)處理、存儲系統(tǒng)等。在一實施方式中,上述多核心處理器可以在通信網(wǎng)絡(luò)中被用作(網(wǎng)絡(luò))處理器用于處理數(shù)據(jù)包。該網(wǎng)絡(luò)處理器包括用于原子地(atomically,不可分割地)和并行地處理數(shù)據(jù)的多個多線程核心處理器和多個專用處理器。網(wǎng)絡(luò)處理器通過對數(shù)據(jù)包執(zhí)行一組網(wǎng)絡(luò)操作以處理數(shù)據(jù)包。該組網(wǎng)絡(luò)操作可以是基于應(yīng)用/網(wǎng)絡(luò)協(xié)議,如資源預留協(xié)議(RSVP)。
特定的數(shù)據(jù)包是通過單核心處理器和核心處理器的單線程進行處理的。該核心處理器可以請求一個或多個專用處理器以對數(shù)據(jù)包執(zhí)行一組網(wǎng)絡(luò)操作的子集。專用處理器是專門處理特定的一組共享資源的所有的訪問和更新、使得這些共享資源總是原子地被訪問和更新的任何處理元件。該專用處理器可以是專門設(shè)計用于處理狀態(tài)數(shù)據(jù)的某些類型(例如,測量器、隊列、統(tǒng)計數(shù)據(jù)、卷目錄表(VTOC)等)的硬件或已被專用于處理特定的一組共享資源的通用的核心。一個或多個專用處理器通過原子地執(zhí)行一組操作處理數(shù)據(jù)包。也就是說,網(wǎng)絡(luò)處理器確保當特定的數(shù)據(jù)包被處理時,用于處理特定數(shù)據(jù)包的網(wǎng)絡(luò)處理器的共享資源不被網(wǎng)絡(luò)處理器的其它資源使用。在該過程中所涉及的共享資源的鎖定確保了過程的原子性。
在網(wǎng)絡(luò)處理器內(nèi)的入口模塊分配存儲器用于傳入數(shù)據(jù)包并將該數(shù)據(jù)包存儲在網(wǎng)絡(luò)處理器的存儲器中。對于大小超過緩沖區(qū)大小的數(shù)據(jù)包,入口模塊生成包緩沖區(qū)鏈,其鏈接含有數(shù)據(jù)包的部分的各種緩沖區(qū)。入口模塊將傳入數(shù)據(jù)包添加到輸入隊列,核心處理器中的一個從其中獲得數(shù)據(jù)包用于進一步的處理。在網(wǎng)絡(luò)處理器中的輸出包處理器基于與輸出隊列相關(guān)聯(lián)的服務(wù)質(zhì)量(QoS)將處理過的數(shù)據(jù)包添加到多個輸出隊列中的一個,并基于QoS轉(zhuǎn)發(fā)包含在輸出隊列中的數(shù)據(jù)包到它們的目標地址。
由于核心處理器的單線程對數(shù)據(jù)包執(zhí)行所有組網(wǎng)絡(luò)操作,沒有狀態(tài)信息或同步信息在處理器之間傳遞,這導致更快和更有效地數(shù)據(jù)包的處理。此外,存儲器讀取和寫入的次數(shù)被最小化以降低由于存儲器讀取和寫入造成的延遲。所討論的方法、系統(tǒng)、結(jié)構(gòu)和范例增加了每包有效操作(EOPP)的數(shù)量,也即,對數(shù)據(jù)包可被執(zhí)行以執(zhí)行應(yīng)用相關(guān)的任務(wù)的指令的數(shù)量。
本發(fā)明的一些實施方式,除了以上描述的或代替以上描述的,具有其它的方面、元件、特征和步驟。這些潛在的補充和替代將在整個說明書的其余部分中被描述。
附圖說明
圖1是本發(fā)明的一實施方式可以操作的示例性的網(wǎng)絡(luò)處理器。
圖2示出了由網(wǎng)絡(luò)處理器處理數(shù)據(jù)包的過程的流程圖。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于恩邦德網(wǎng)絡(luò)公司,未經(jīng)恩邦德網(wǎng)絡(luò)公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201380073411.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





