基于硬件的設(shè)備間資源共享的制作方法
【專利摘要】本公開涉及基于硬件的設(shè)備間資源共享。例如,遠(yuǎn)程編排器(RO)可提供致使設(shè)備使至少一個(gè)硬件資源對(duì)其他設(shè)備可用的指令。該設(shè)備中的RO模塊可與該RO交互并且可基于從該RO接收的指令配置該設(shè)備中的配置模塊。當(dāng)該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí),該配置模塊可設(shè)置設(shè)備配置。該設(shè)備還可包括處理模塊,該處理模塊用于基于該設(shè)備配置、接口技術(shù)(IT)和至少一個(gè)硬件資源處理數(shù)據(jù)。該接口技術(shù)可允許該處理模塊與該至少一個(gè)硬件資源交互。該RO模塊可將該IT配置為基于這些指令允許該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
【專利說明】
基于硬件的設(shè)備間資源共享
技術(shù)領(lǐng)域
[0001]本公開涉及資源分配,并且更具體地涉及能夠利用基于硬件的分區(qū)與其他設(shè)備共享硬件資源的設(shè)備。
[0002]背景
[0003]擴(kuò)展“基于云的”數(shù)據(jù)處理解決方案(軟件即服務(wù)(SaaS)等等)已經(jīng)將用于在線交互的大量數(shù)據(jù)處理從用戶設(shè)備轉(zhuǎn)移開并轉(zhuǎn)移入位于遠(yuǎn)處的數(shù)據(jù)中心。示例數(shù)據(jù)中心可包括聯(lián)網(wǎng)數(shù)據(jù)處理設(shè)備或“節(jié)點(diǎn)”(例如,服務(wù)器)陣列以便單獨(dú)地或以聯(lián)合的方式(例如,如在高性能計(jì)算(HPC)架構(gòu)中那樣)處理數(shù)據(jù)。數(shù)據(jù)中心可利用“軟件定義”方法增加數(shù)據(jù)處理、存儲(chǔ)、聯(lián)網(wǎng)及其他硬件資源的靈活性。例如,可通過軟件虛擬化技術(shù)借助于硬件資源使能軟件定義操作。虛擬機(jī)(VM)可仿真物理硬件但是實(shí)際上是在VM管理器(VMM)或管理程序的控制下在硬件平臺(tái)上執(zhí)行的編程構(gòu)造?,F(xiàn)有的軟件定義實(shí)現(xiàn)方式可使用例如硬件分區(qū)、虛擬化(例如,英特爾公司的VT-x或VT-d技術(shù))、機(jī)架規(guī)模架構(gòu)(RSA)等等。
[0004]然而,即使VM允許對(duì)硬件資源的共享訪問的外觀,處理和輸入/輸出(I/O)硬件仍專用于實(shí)現(xiàn)所請(qǐng)求的功能的特定節(jié)點(diǎn)。現(xiàn)有的分區(qū)和虛擬化解決方案可僅僅提供訪問和/或控制平臺(tái)級(jí)資源的非常粗糙的粒度。軟件虛擬化可允許子套接口級(jí)別分區(qū)。子套接口級(jí)別分區(qū)可包括分配來自相同的物理封裝的處理資源(例如,核)以便執(zhí)行單獨(dú)的任務(wù)。例如,VMM可為VM或操作系統(tǒng)(OS)的實(shí)例可在其中執(zhí)行的每個(gè)核創(chuàng)建邏輯分區(qū)。盡管這種操作的益處是明顯的,軟件虛擬化還可抽象并且因此使得有價(jià)值的硬件功能不可用。RSA可允許某些平臺(tái)級(jí)別資源共享(例如,存儲(chǔ)器可被池化并且跨多個(gè)節(jié)點(diǎn)共享)但是在套接口內(nèi)部不存在可用的細(xì)級(jí)別分區(qū)。沒有現(xiàn)有技術(shù)允許在節(jié)點(diǎn)之間共享處理或I/O硬件資源或者允許將I/O硬件資源分配給其中多個(gè)節(jié)點(diǎn)可共享訪問的可用資源池。SW虛擬化目前是計(jì)算和1資源的子套接口級(jí)別分區(qū)的唯一選項(xiàng)。沒有現(xiàn)有架構(gòu)能夠允許經(jīng)由子套接口級(jí)別硬件接口技術(shù)(IT)進(jìn)行硬件資源的池化共享等等,包括例如串行高級(jí)技術(shù)附件(SATA)、千兆字節(jié)以太網(wǎng)(GbE)、串行附件小型計(jì)算機(jī)系統(tǒng)接口(SAS)、通用串行總線(USB)或現(xiàn)有的或者在未來開發(fā)的任何其他IT。
[0005]附圖簡(jiǎn)要描述
[0006]所要求保護(hù)的主題的各實(shí)施例的特征和優(yōu)點(diǎn)將隨著以下詳細(xì)描述的進(jìn)行并且當(dāng)參照附圖時(shí)變得明顯,其中相似的參考號(hào)指示相似的部件,并且在附圖中:
[0007]圖1示出根據(jù)本公開的至少一個(gè)實(shí)施例的基于硬件的設(shè)備間資源共享的示例系統(tǒng);
[0008]圖2示出根據(jù)本公開的至少一個(gè)實(shí)施例的可用設(shè)備的示例配置。
[0009]圖3示出根據(jù)本公開的至少一個(gè)實(shí)施例的基于硬件的設(shè)備間資源共享的示例實(shí)現(xiàn)方式;以及
[0010]圖4示出根據(jù)本公開的至少一個(gè)實(shí)施例的基于硬件的設(shè)備間資源共享的示例操作。
[0011]盡管將參考說明性實(shí)施例進(jìn)行以下詳細(xì)描述,其許多替代、修改和變化將對(duì)本領(lǐng)域普通技術(shù)人員明顯。
[0012]詳細(xì)描述
[0013]本公開涉及基于硬件的設(shè)備間資源共享。在至少一個(gè)實(shí)施例中,遠(yuǎn)程編排器(RO)可提供致使設(shè)備使至少一個(gè)硬件資源對(duì)其他設(shè)備可用的指令。例如,該設(shè)備中的RO模塊可與該RO交互。該RO模塊可基于從該RO接收的指令配置該設(shè)備中的配置模塊。當(dāng)該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí),該配置模塊可然后設(shè)置設(shè)備配置(例如,“分區(qū)”配置或“合并”配置)。該設(shè)備還可包括處理模塊,該處理模塊用于基于該設(shè)備配置、接口技術(shù)(IT)和至少一個(gè)硬件資源處理數(shù)據(jù)。該接口技術(shù)可允許該處理模塊與該至少一個(gè)硬件資源交互。該RO模塊可然后基于這些指令將該IT配置為允許該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0014]在至少一個(gè)實(shí)施例中,能夠進(jìn)行基于硬件的設(shè)備間資源共享的示例設(shè)備可包括例如配置模塊、處理模塊、至少一個(gè)硬件資源、接口技術(shù)以及RO模塊。該配置模塊可以用于設(shè)置設(shè)備配置。該處理模塊可以用于至少基于該設(shè)備配置處理數(shù)據(jù)。該接口技術(shù)可以用于允許處理模塊與該至少一個(gè)硬件資源交互。該RO模塊還可用于至少?gòu)倪h(yuǎn)程編排器接收至少一個(gè)指令、基于該至少一個(gè)指令配置該配置模塊以及基于該至少一個(gè)指令配置該接口技術(shù)以便允許該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0015]在至少一個(gè)實(shí)施例中,該配置模塊可至少包括用于當(dāng)該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí)設(shè)置該設(shè)備配置的固件。在設(shè)置該設(shè)備配置時(shí),該配置模塊可以用于將該設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作。在配置該接口技術(shù)時(shí),該RO模塊可以用于將該接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。例如,當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),該接口技術(shù)可以用于將該至少一個(gè)硬件資源至少?gòu)脑撎幚砟K隱藏。
[0016]在至少一個(gè)實(shí)施例中,當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程地操作時(shí),該至少一個(gè)硬件資源可由至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊訪問。當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程地操作時(shí),該RO模塊可以用于將該接口技術(shù)配置為在該至少一個(gè)硬件資源和該至少一個(gè)其他處理模塊之間路由消息。該RO模塊可以進(jìn)一步用于基于該設(shè)備配置將該處理模塊配置為直接與該至少一個(gè)其他處理模塊交互。該配置模塊可以用于基于該設(shè)備配置禁用該處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與該至少一個(gè)其他處理模塊之間的一致性協(xié)議。
[0017]在至少一個(gè)實(shí)施例中,該設(shè)備可以進(jìn)一步包括交互監(jiān)視器,用于關(guān)于該設(shè)備和該至少一個(gè)其他設(shè)備之間的交互與該遠(yuǎn)程編排器通信。該接口技術(shù)可以是例如外圍組件互連Express(PCIe)接口技術(shù)。在至少一個(gè)示例實(shí)現(xiàn)方式中,該設(shè)備可以在進(jìn)一步包括該遠(yuǎn)程編排器的機(jī)架中。而且,該機(jī)架可以進(jìn)一步包括該至少一個(gè)其他設(shè)備。根據(jù)本公開,用于基于硬件的設(shè)備間資源共享的示例方法可包括從遠(yuǎn)程編排器在設(shè)備中接收至少一個(gè)指令、基于該至少一個(gè)指令在該設(shè)備中的配置模塊中配置設(shè)備配置以及基于該至少一個(gè)指令將該設(shè)備中的接口技術(shù)配置為允許該設(shè)備中的至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0018]圖1示出根據(jù)本公開的至少一個(gè)實(shí)施例的基于硬件的設(shè)備間資源共享的示例系統(tǒng)。系統(tǒng)100可包括例如RO 102、設(shè)備104A、設(shè)備104B...設(shè)備104η (統(tǒng)稱為“設(shè)備104Α...η”)。盡管為了清晰的目的已經(jīng)在圖1中示出了僅三個(gè)設(shè)備104Α...η,然而系統(tǒng)100的實(shí)際實(shí)現(xiàn)方式可基于例如包括R0102和設(shè)備104Α...η的數(shù)據(jù)中心的大小/類型、系統(tǒng)100的設(shè)計(jì)用途(例如,HPC、云計(jì)算裝置、SaaS等等)或其他因素包括更多或更少的設(shè)備104A...η0
[0019]R0 102可包括被配置成用于“編排”設(shè)備104Α...η的操作的至少一個(gè)計(jì)算設(shè)備(例如,計(jì)算機(jī)、服務(wù)器、操作站等等)。編排可包括但不限于確定設(shè)備104Α...η中的硬件資源、確定如何共享每個(gè)設(shè)備104Α...η中的硬件資源、就配置(例如,有待共享的硬件資源)指示每個(gè)設(shè)備104Α...η以及管理設(shè)備104Α...η之間的交互。在此所引用的硬件資源可包括個(gè)體組件(例如,處理器、存儲(chǔ)器、接口等等)、芯片組、多芯片模塊(MCM)、處于模塊、卡、插件等等形式的附加設(shè)備。在操作示例中,RO 102可被賦予至少一個(gè)目標(biāo)的任務(wù),諸如最大化系統(tǒng)100中的數(shù)據(jù)處理效率、消除系統(tǒng)100中的數(shù)據(jù)處理瓶頸、容納系統(tǒng)100中的全新數(shù)據(jù)處理任務(wù)等等,并且在此方面,可向設(shè)備104Α...η發(fā)布重新配置對(duì)硬件資源的訪問的指令。根據(jù)本公開,每個(gè)設(shè)備104Α...η中的硬件資源可被靈活地重新分配給子套接口級(jí)別而無需對(duì)軟件分區(qū)的物理重新配置或依賴。
[0020]現(xiàn)在將描述設(shè)備104Α的還可應(yīng)用于設(shè)備104Β...η的示例配置。設(shè)備104Α可至少包括RO模塊106、配置模塊108、處理模塊110、可對(duì)應(yīng)于每個(gè)硬件資源(HR) 116A、HR 116B、HR116C、HR 116D...HR 116n(統(tǒng)稱為“HR 116A...η”)的 IT 112A、IT 112B、IT 112C、IT112D...112η(統(tǒng)稱為“IT 112A...η”)。設(shè)備104A中的HR 116A...η的實(shí)際數(shù)量可取決于諸如設(shè)備類型、大小、配置等等因素而不同。例如,作為獨(dú)立式計(jì)算設(shè)備(例如,具有全塔情況)的設(shè)備104Α可包括更好的功率、容量、冷卻等等來處理比當(dāng)設(shè)備104Α是更緊湊的機(jī)架或刀片服務(wù)器時(shí)更大種類和/或更大數(shù)量的HR 116Α...η(例如,處理器、驅(qū)動(dòng)器、卡等等)。在至少一個(gè)示例實(shí)現(xiàn)方式中,RO 102和/或設(shè)備104Α可全部是相同裝置中(例如,在相同的房間中、在相鄰的機(jī)架中、在相同的機(jī)架中等等)的機(jī)架/刀片服務(wù)器。
[0021]在至少一個(gè)實(shí)施例中,RO模塊106可被配置成用于與RO 102交互。例如,RO模塊106可接收包括用于配置設(shè)備104Α的指令的“帶外”數(shù)據(jù)。如在此所引用的,帶外可指示與設(shè)備104Α通常與設(shè)備104Β...η通信的方式分離的通信方式。例如,專用通信通道可存在于每個(gè)設(shè)備104Α...η的RO 102與RO模塊106之間。當(dāng)設(shè)備104Α處于關(guān)閉狀態(tài)(例如,關(guān)機(jī)、休眠等等)或處于開啟狀態(tài)(例如,活躍)時(shí),RO模塊106可接收指令。在接收到指令之后,RO模塊106可基于這些指令對(duì)配置模塊108進(jìn)行配置。配置模塊108可包括可重寫非易失性(NV)存儲(chǔ)器,例如在可重寫非易失性(NV)存儲(chǔ)器上是用于當(dāng)設(shè)備104Α從引導(dǎo)、重新引導(dǎo)變活躍、從休眠喚醒等等時(shí)在設(shè)備104Α中設(shè)置模式的編碼固件。在至少一個(gè)實(shí)施例中,配置模塊108可將設(shè)備104Α配置成在或者“分區(qū)”配置或者“合并”配置。分區(qū)配置可以是“典型的”配置,其中,設(shè)備104Α被配置成用于維護(hù)所有HR 106Α...η的所有權(quán),并且其中,在給定現(xiàn)有的共享技術(shù)(諸如虛擬化、RSA等等)的情況下,共享可以是可能的。根據(jù)本公開,合并配置可涉及設(shè)備104Α被重新配置成使用如下所述的基于硬件的設(shè)備間資源共享在子套接口級(jí)別共享硬件資源。
[0022]處理模塊110可包括至少一個(gè)數(shù)據(jù)處理器以及支持該至少一個(gè)數(shù)據(jù)處理器所需的任何電路。在圖2中更詳細(xì)地討論了處理模塊110的示例內(nèi)容。在合并配置中,處理模塊110可被配置成用于直接與設(shè)備104Β...η中的其他處理模塊110交互。為了在此解釋的目的,設(shè)備104Α中的“IT”可包括允許HR 116A...η與設(shè)備104A中的其他資源交互的設(shè)備(例如,套接口、總線、支持電路等等)和軟件(例如,驅(qū)動(dòng)器、配置寄存器等等)兩者。例如,給定采用PCIe接口技術(shù),IT 112Α...η可以是與HR 116Α...η安裝在其中的物理套接口相對(duì)應(yīng)的PCIe根端口。盡管PCIe在此被用作示例,根據(jù)本公開的實(shí)施例不限于僅利用PCIe實(shí)現(xiàn)。根據(jù)本公開,還可采用具有相似操作特點(diǎn)的其他IT。在合并配置中,R0模塊106可將IT 112A...η配置為允許HR 116Α...η本地操作或遠(yuǎn)程操作。設(shè)備104Α可維護(hù)被配置成本地操作的任何HR116Α...η的訪問和所有權(quán),而其他設(shè)備(例如,設(shè)備104Β...η)中的處理模塊110可以能夠訪問并控制被配置成遠(yuǎn)程操作的任何HR116A...η。在至少一個(gè)實(shí)施例中,RO模塊106可在IT112Α...η的配置空間中設(shè)置用于指示本地或遠(yuǎn)程操作的位。例如,IT 112Α.ΙΤ 112C和IT112D在圖1中用“L”標(biāo)志114示出以便指示RO模塊106已經(jīng)將配置空間中的位設(shè)置為允許HR116A、HR 116C和HR 116D本地操作,而IT 112B和IT112η用“R”標(biāo)志114示出以便指示配置空間中的位已經(jīng)被設(shè)置為允許HRl 16Β和HR 116η遠(yuǎn)程操作。以此方式,可單獨(dú)地確定并配置對(duì)HR 116Α...η中的每一個(gè)的共享。
[0023]在操作示例中,RO102可至少向RO模塊106提供配置設(shè)備104以便進(jìn)行合并操作的指令。RO模塊106可設(shè)置配置模塊108中的合并配置,配置模塊108可在上電時(shí)、從休眠恢復(fù)時(shí)等等繼續(xù)配置設(shè)備104Α以便進(jìn)行合并操作。RO模塊106還可基于從RO 102接收的指令配置IT 112Α...η以便進(jìn)行本地或遠(yuǎn)程操作。例如,如標(biāo)志114所示出的,IT 112A、IT 112C和IT 112D可被配置成用于允許HR 116A.HR 116C和HR 116D本地地操作,并且結(jié)果是,HR116A、HR 116C和HR 116D可由處理模塊110訪問。相比之下,IT 112B和IT 112η可被配置成用于允許HR 116Β和HR 116η遠(yuǎn)程地操作。在至少一個(gè)實(shí)施例中,HR 116Β和HR 116η可在設(shè)備104Α的引導(dǎo)期間至少?gòu)奶幚砟K110隱藏并且因此將被認(rèn)為是本地不可訪問的。如圖1所示,至少設(shè)備104Β可能訪問HR 116Β,并且至少設(shè)備104η可能訪問HR 116η。同樣,設(shè)備104Α可能訪問被配置成用于在設(shè)備104η中遠(yuǎn)程地操作的HR,設(shè)備104Β可能訪問被配置成用于在設(shè)備104Β中遠(yuǎn)程地操作的HR等等。在至少一個(gè)實(shí)施例中,可通過在每個(gè)設(shè)備中操作的處理模塊110之間的直接鏈路促進(jìn)訪問其他設(shè)備中的HR。將參照?qǐng)D3中示出的實(shí)現(xiàn)方式討論不同處理模塊110之間的交互示例。
[0024]圖2示出根據(jù)本公開的至少一個(gè)實(shí)施例的可用設(shè)備的示例配置。在項(xiàng)目編號(hào)之后包括單引號(hào)(例如,104A ’)指示正在示出該項(xiàng)目的示例實(shí)施例。例如,設(shè)備104A,可能執(zhí)行在圖1中公開的活動(dòng)中的任何活動(dòng)。然而,設(shè)備104A’僅被呈現(xiàn)為可在根據(jù)本公開的實(shí)施例中使用的裝置的示例,并且不旨在將各個(gè)實(shí)施例中的任何實(shí)施例限制為任何具體的實(shí)現(xiàn)方式。而且,在圖2中示出的設(shè)備104A’的示例配置還可應(yīng)用于設(shè)備104B...η中的一個(gè)或多個(gè)。
[0025]設(shè)備104Α’可包括例如用于管理該設(shè)備的操作的系統(tǒng)模塊200。系統(tǒng)模塊200可包括例如處理模塊110 ’、存儲(chǔ)器模塊202、功率模塊204、用戶接口模塊206以及通信接口模塊208。設(shè)備104Α’可進(jìn)一步包括通信模塊210和RO模塊106’。盡管通信模塊210和RO模塊106’被示出為與系統(tǒng)模塊200分離,然而僅僅處于解釋的目的提供在圖2中示出的示例配置。與通信模塊106和/或RO模塊106’相關(guān)聯(lián)的某些或全部功能還可結(jié)合在系統(tǒng)模塊200中。
[0026]在設(shè)備104Α’中,處理模塊110’可包括位于分離的組件中的一個(gè)或多個(gè)處理器,或者,可包括在單個(gè)組件中(例如,在片上系統(tǒng)(SoC)配置中)實(shí)施的一個(gè)或多個(gè)處理核以及任何處理器相關(guān)的支持電路(例如,橋接接口等等)。示例處理器可包括但不限于可從英特爾公司獲得的各種基于x86的微處理器,包括奔騰、至強(qiáng)、安騰、賽揚(yáng)、凌動(dòng)、夸克、i系列核、M系列核產(chǎn)品族、高級(jí)RISC(例如,精簡(jiǎn)指令集計(jì)算)機(jī)器或“ARM”處理器等等中的那些。支持電路的示例可包括芯片組(例如,可從英特爾公司獲得的北橋、南橋等等),該芯片組被配置成用于提供處理模塊110可通過其與可在設(shè)備104A’內(nèi)在不同速度下、在不同總線上等等操作的其他系統(tǒng)組件交互的接口。與支持電路相關(guān)聯(lián)的某些或全部功能還可被包括在與處理器相同的物理封裝中(例如,諸如包括可從英特爾公司獲得的Sandy Bridge處理器族中)。
[0027]處理模塊110’可被配置成用于在設(shè)備104A’中執(zhí)行各種指令。指令可包括程序代碼,該程序代碼被配置成用于致使處理模塊110’執(zhí)行與讀取數(shù)據(jù)、寫入數(shù)據(jù)、處理數(shù)據(jù)、格式化數(shù)據(jù)、轉(zhuǎn)換數(shù)據(jù)、變換數(shù)據(jù)等等相關(guān)的活動(dòng)。信息(例如,指令、數(shù)據(jù)等等)可被存儲(chǔ)在存儲(chǔ)器模塊202中。存儲(chǔ)器模塊202可包括固定或可移除格式的隨機(jī)存取存儲(chǔ)器(RAM)和/或只讀存儲(chǔ)器(ROM) AAM可包括被配置成用于在設(shè)備104A’的操作期間保持信息的易失性存儲(chǔ)器,諸如例如靜態(tài)RAM(SRAM)或動(dòng)態(tài)RAM(DRAM)。ROM可包括被配置成用于當(dāng)設(shè)備104A ’激活時(shí)提供指令的基于B10S、UEFL等等的非易失性(NV)存儲(chǔ)器模塊、諸如電可編程ROM(EPROM)、閃存等等的可編程存儲(chǔ)器。其他固定和/或可移除存儲(chǔ)器可包括但不限于:磁存儲(chǔ)器,諸如例如軟盤、硬盤驅(qū)動(dòng)器等等;電子存儲(chǔ)器,諸如固態(tài)閃存(例如,嵌入式多媒體卡(e麗C)等等)、可移除存儲(chǔ)器卡或棒(例如,微型存儲(chǔ)設(shè)備USD)、USB等等);光學(xué)存儲(chǔ)器,諸如基于致密盤的ROM(CD-ROM)、數(shù)字視頻盤(DVD)、藍(lán)光盤等等。
[0028]功率模塊204可包括內(nèi)部電源(例如,電池、燃料電池等等)和/或外部電源(例如,電磁或太能發(fā)電機(jī)、電網(wǎng)、外部燃料電池等等)以及被配置成用于為設(shè)備104A’提供操作所需的功率的模塊。用戶接口模塊206可包括用于允許用戶與設(shè)備104A’交互的硬件和/或軟件,諸如各種輸入機(jī)制(例如,麥克風(fēng)、開關(guān)、按鈕、旋鈕、鍵盤、揚(yáng)聲器、觸敏表面、一個(gè)或多個(gè)被配置成用于捕獲圖像和/或感測(cè)接近、距離、運(yùn)動(dòng)、姿勢(shì)、朝向、生物計(jì)量數(shù)據(jù)等等的傳感器)和各種輸出機(jī)制(例如揚(yáng)聲器、顯示器、發(fā)光/閃爍指示器、用于振動(dòng)、運(yùn)動(dòng)等等的機(jī)電組件)。用戶接口模塊206中的硬件可結(jié)合在設(shè)備104A’中和/或可經(jīng)由有線或無線通信介質(zhì)耦合到設(shè)備104A’。用戶接口模塊206’可以在某些情況下(諸如其中設(shè)備104A’是不包括用戶接口模塊206而是依賴于用于用戶接口功能的另一個(gè)設(shè)備(例如,管理終端)的服務(wù)器(例如,機(jī)架式服務(wù)器、刀片式服務(wù)器等等))的情況下是可選的。
[0029]通信接口模塊208可被配置成用于管理通信模塊210的分組路由和其他控制功能,通信模塊210可包括被配置成用于支持有線和/或無線通信的資源。在某些情形下,設(shè)備104A ’可包括由中央通信接口模塊208管理的多于一個(gè)通信模塊210 (例如,包括用于有線協(xié)議和/或無線協(xié)議的分離的物理接口模塊)。有線通信可包括串行和并行有線介質(zhì),諸如例如,以太網(wǎng)、USB、火線、Thunderbo11、數(shù)字視頻接口(DVI)、高清晰多媒體接口(HDMI)等等。無線通信可包括例如近距離無線介質(zhì)(例如,射頻(RF),諸如基于RF識(shí)別(RFID)或近場(chǎng)通信(NFC)標(biāo)準(zhǔn)、紅外(IR)等等)、短距離無線介質(zhì)(例如,藍(lán)牙、WLAN、W1-Fi等等)、長(zhǎng)距離無線介質(zhì)(例如,蜂窩廣域無線電通信技術(shù)、基于衛(wèi)星的通信等等)、經(jīng)由聲波的電子通信等等。在一個(gè)實(shí)施例中,通信接口模塊208可被配置成用于防止通信模塊210中活躍的無線通信彼此干擾。當(dāng)執(zhí)行該功能時(shí),通信接口模塊208可基于等待傳輸?shù)南⒌南鄬?duì)優(yōu)先級(jí)調(diào)度通信模塊210的活動(dòng)。盡管在圖2中公開的實(shí)施例示出通信接口模塊208與通信模塊210分離,然而還有可能的是將通信接口模塊208和通信模塊201的功能結(jié)合到同一模塊中。
[0030]根據(jù)本公開,RO模塊106’可至少與系統(tǒng)模塊200、存儲(chǔ)器模塊202和通信模塊201交互。在操作示例中,RO模塊106’可經(jīng)由通過通信模塊201進(jìn)行的有線和/或無線通信與RO102交互。在經(jīng)由通信模塊201從R0102接收到指令之后,RO模塊106’可配置存儲(chǔ)器模塊202中的配置模塊108’。而且,RO模塊106’可通常與系統(tǒng)模塊200中的IT 112A...η交互(未在圖2中示出)以便將IT 112Α...η配置為允許HR 116Α...η本地或遠(yuǎn)程操作和/或還允許設(shè)備104Α ’訪問可從其他設(shè)備獲得的遠(yuǎn)程HR。
[0031]圖3示出根據(jù)本公開的至少一個(gè)實(shí)施例的基于硬件的設(shè)備間資源共享的示例實(shí)現(xiàn)方式。示例設(shè)備104Α’和示例設(shè)備104Β’在圖3中被示出為交互,其描述可參考英特爾公司開發(fā)的各個(gè)產(chǎn)品、技術(shù)等等。盡管這些應(yīng)用可用作從其理解在圖3中示出的交互的容易理解的示例,它們不旨在將根據(jù)本公開的實(shí)施例限制為任何具體實(shí)現(xiàn)方式、實(shí)現(xiàn)技術(shù)等等。
[0032]現(xiàn)有的計(jì)算設(shè)備(例如,服務(wù)器)可支持“分區(qū)”配置,其中,包含兩個(gè)節(jié)點(diǎn)的平臺(tái)可以被硬分區(qū)到兩個(gè)分離的平臺(tái)中。這種分區(qū)是“硬的”,因?yàn)檫@兩個(gè)單節(jié)點(diǎn)平臺(tái)之間不存在任何HR 116Α...η共享。軟件虛擬化(例如,經(jīng)由VM)可提供某種共享能力但是可以消除訪問有價(jià)值的硬件功能的能力。PCIe交換機(jī)可以能夠在細(xì)粒度水平共享硬件資源,但是這種解決方案可能增加在系統(tǒng)級(jí)別需要的離散組件總數(shù)。根據(jù)本公開,可以用通過使得任何節(jié)點(diǎn)或分區(qū)能夠物理地將所選的IT 112Α…η(例如,PCIe根端口層級(jí)或PCIe設(shè)備)重新分配給任何其他節(jié)點(diǎn)或分區(qū)所支持的HR 116Α...η的池化和共享增強(qiáng)傳統(tǒng)的硬分區(qū)。在至少一個(gè)實(shí)施例中,分區(qū)可被限制為僅僅一致域,并且可以與一個(gè)節(jié)點(diǎn)或分區(qū)共享物理地在另一個(gè)節(jié)點(diǎn)或分區(qū)中實(shí)現(xiàn)的硬件資源(諸如PCIe根端口和/或PCIe設(shè)備)。
[0033]在現(xiàn)有的分區(qū)方法中,可禁用點(diǎn)到點(diǎn)處理器連接技術(shù),諸如英特爾公司開發(fā)的快速路徑互連(QPI)、凱撒技術(shù)互連(KTI)、同樣由英特爾公司開發(fā)的開放核連接技術(shù)。更具體地,可不利用允許處理器在分區(qū)節(jié)點(diǎn)之間直接傳輸并接收消息的QPI/KTI鏈路。然而,根據(jù)本公開,在池化資源架構(gòu)中,可在節(jié)點(diǎn)或分區(qū)之間采用QPI/KTI鏈路以便使得能夠共享HR116A…η。在至少一個(gè)實(shí)施例中,可在沒有用于跨分區(qū)維護(hù)一致性的特征的情況下采用QPI/KT1
[0034]在圖3中示出設(shè)備104A’和104B’的示例實(shí)現(xiàn)方式。設(shè)備104A’可包括例如北管芯300A和南管芯302A。在至少一個(gè)實(shí)施例中,北管芯300A可經(jīng)由例如英特爾公司開發(fā)的直接媒體接口(DMI)與南管芯302A通信。北管芯300A(例如,北橋)可包括通常在微處理器組件、芯片組、MCM等等中發(fā)現(xiàn)的組件。例如,北管芯300A可包括一個(gè)或多個(gè)處理核304A、存儲(chǔ)器控制器306A和PCIe配置空間308A。存儲(chǔ)器控制器306A可控制設(shè)備104A’中的存儲(chǔ)器的數(shù)據(jù)訪問操作。PCIe配置空間308A可控制如何至少根據(jù)數(shù)據(jù)路由配置PCIe根端口(例如,與設(shè)備104A’中的物理PCIe插槽相對(duì)應(yīng))以及集成和/或離散PCIe I/O設(shè)備。南管芯302A(例如,南橋)可包括通常與設(shè)備104A’的通用I/O功能相關(guān)聯(lián)的組件。南管芯302A還可被稱為平臺(tái)控制器中樞(PCH)。例如,南管芯302A可包括管理引擎(ME)310A、功率管理控制器(PMC)312A和交互監(jiān)視器314AJE 310A可包括與圖1中的RO模塊106相對(duì)應(yīng)的獨(dú)立式處理器。例如,ME310A可以能夠甚至在設(shè)備104A’的剩余部分不活躍時(shí)接收OOB網(wǎng)絡(luò)通信(例如,從遠(yuǎn)程編排器102) IMC 312A可管理包括HR 116Α...η的設(shè)備104A’的功率操作。在至少一個(gè)實(shí)施例中,交互監(jiān)視器314Α可監(jiān)視節(jié)點(diǎn)(例如,設(shè)備104Α’和104Β’)之間的交互并且可向RO 102提供有關(guān)這些交互的信息。盡管未在圖3中示出,根據(jù)本公開,作為PCH操作的南管芯302Α可進(jìn)一步包括SATA控制器、USB控制器、以太網(wǎng)控制器、增強(qiáng)SPI低引腳數(shù)總線串行外圍接口(eSPI/LPC)、通用異步接收器/發(fā)射器(UART)以及其他通信主/從接口。相應(yīng)的元件300B至314B可對(duì)設(shè)備104B’執(zhí)行與以上結(jié)合設(shè)備104A’描述的相同的或類似的操作。
[0035]現(xiàn)在將討論其中設(shè)備104A’可被配置成用于至少與設(shè)備104B’的合并操作的操作示例。盡管將結(jié)合設(shè)備104A’呈現(xiàn)這些操作,它們等效地可應(yīng)用于設(shè)備104B’。如在圖3中“I”處所示,可在設(shè)備104A’處接收包括“分區(qū)”或“合并”的指令的OOB數(shù)據(jù)。例如,RO 102可向ME310A傳達(dá)設(shè)備104A’將在傳統(tǒng)/非傳統(tǒng)對(duì)稱多處理(SMP)配置中或者在共享硬件配置中(例如,合并)獨(dú)立地操作(例如,分區(qū))。這種交互可在設(shè)備104A’在S5狀態(tài)(例如,關(guān)機(jī))中時(shí)發(fā)生。當(dāng)設(shè)備104A’轉(zhuǎn)變到SO(例如,開機(jī)狀態(tài))時(shí),ME 310A可通過狀態(tài)寄存器向B1S(例如,配置模塊108)指示操作模式。如在圖3中“2”處所示,RO 102還可向ME 310A指示哪些PCIe根端口和/或本地集成/離散PCIe I/O設(shè)備被分配給遠(yuǎn)程節(jié)點(diǎn)(例如,設(shè)備KMB’hRO 102還可列舉本地PCIe 1設(shè)備已經(jīng)被重新分配給哪個(gè)遠(yuǎn)程節(jié)點(diǎn)(例如,并且可同樣通知遠(yuǎn)程節(jié)點(diǎn)遠(yuǎn)程操作的PCIe 1設(shè)備已經(jīng)被分配給它們)。在至少一個(gè)實(shí)施例中,ME 310A可針對(duì)所有PCIe根端口并針對(duì)所有PCIe集成/離散設(shè)備設(shè)置PCIe配置空間308A中的本地/遠(yuǎn)程(L/R)位。
[0036]在設(shè)備104A,從關(guān)閉狀態(tài)(例如,S4或S5)轉(zhuǎn)變到開啟狀態(tài)(例如,SO)之后,ME31A可針對(duì)已經(jīng)被重新分配給遠(yuǎn)程節(jié)點(diǎn)(例如,設(shè)備104B’)的每一個(gè)PCIe根端口和/或集成/離散PCIe設(shè)備將集成1/0(110)路由位設(shè)置為將所有I/O操作重定向或重新映射到特定的KTI/QPI鏈路編號(hào)。例如,在每一個(gè)節(jié)點(diǎn)中,I1功率控制單元(PCU)可基于遠(yuǎn)程節(jié)點(diǎn)ID(例如,標(biāo)識(shí)共享HR 116Α...η的設(shè)備(諸如設(shè)備104B’))確定到遠(yuǎn)程PCIe I/O設(shè)備的路徑。I1可被修改為基于路徑從/向遠(yuǎn)程節(jié)點(diǎn)路由例如PCIe配置周期、PCIe供應(yīng)商定義消息、直接存儲(chǔ)器訪問(DMA)和存儲(chǔ)器映射Ι/0(ΜΜΙ0)周期。在至少一個(gè)實(shí)施例中,傳統(tǒng)INTR引腳可能不受支持以便避免中斷路由,除非可仍支持消息信令中斷(例如,MS1-X擴(kuò)展)。110可旁路遠(yuǎn)程設(shè)備事務(wù)的轉(zhuǎn)換后備緩沖器(TLB)。
[0037]如在圖3中“3”處所示,PMC 312A可在PCIe配置空間308A中隱藏具有“R”配置的設(shè)備。隱藏可包括將IT 112Α...η的配置改變?yōu)橹率笻R116A…η對(duì)于設(shè)備104A’不可見。結(jié)果是,如果其被分配為給遠(yuǎn)程節(jié)點(diǎn),本地B1S將不發(fā)現(xiàn)或列舉PCIe根端口或PCIe組件/設(shè)備。如圖3中“4”處所示,在每個(gè)節(jié)點(diǎn)中,B1S應(yīng)當(dāng)配置QPI/KTI連接但是可禁用節(jié)點(diǎn)之間的QPI/KTI上的高速緩存/存儲(chǔ)器一致性協(xié)議。I1中的可編程的精確寄存器可以是非架構(gòu)的但是可致使B1S禁用跨節(jié)點(diǎn)的所有監(jiān)聽并且因此每個(gè)節(jié)點(diǎn)可以是其自身的一致性域。北管芯300A可然后開始通過如在圖3中“5”處所示的0ΡΙ/ΚΤΙ鏈路至少與北管芯300B交互。如圖3中“6”處所示,交互監(jiān)視器314A可用于作為通用00B數(shù)據(jù)消息傳送引擎處理節(jié)點(diǎn)內(nèi)交互。在至少一個(gè)實(shí)施例中,I1可擴(kuò)展以便重新路由經(jīng)由0ΡΙ/ΚΤΙ連接到設(shè)備104A’的設(shè)備的遠(yuǎn)程訪問服務(wù)(RAS)/錯(cuò)誤處理、安全性和功率管理消息。重置序列化也可被擴(kuò)展以便支持池化/共享資源。盡管使用QPI/KTI可利用現(xiàn)有技術(shù),可通過其他現(xiàn)有連接技術(shù)、定制連接技術(shù)、通用工業(yè)標(biāo)準(zhǔn)實(shí)現(xiàn)方式等等實(shí)現(xiàn)未來連接。
[0038]圖4示出根據(jù)本公開的至少一個(gè)實(shí)施例的基于硬件的設(shè)備間資源共享的示例操作。在操作400中,可從RO接收指令(例如,到設(shè)備中的RO模塊中)。在操作402中,該設(shè)備可從關(guān)閉狀態(tài)(例如,S4或S5)轉(zhuǎn)變到開啟狀態(tài)(例如,SO)。在操作404中,從RO接收的指令可用于配置該設(shè)備中的配置模塊(B1S)。然后可在操作406中確定該設(shè)備是否已經(jīng)被指示在合并配置中操作。如果在操作406中確定該設(shè)備不應(yīng)當(dāng)在合并配置中操作,則在操作408中,該設(shè)備的開機(jī)可繼續(xù)以便進(jìn)行分區(qū)操作。
[0039]在操作406中確定該設(shè)備應(yīng)當(dāng)在合并配置中操作之后,可在操作410中進(jìn)一步確定該設(shè)備中的至少一個(gè)HR是否將與至少一個(gè)其他設(shè)備共享(例如,基于從RO接收的指令)。如果在操作410中確定該設(shè)備中的至少一個(gè)RO將被共享,則在操作412中可在IT配置空間中配置本地(L)或遠(yuǎn)程(R)位。設(shè)置L/R位可包括為每一個(gè)HR設(shè)置一個(gè)位(例如,“I”指示本地而“O”指示遠(yuǎn)程)或者為每一個(gè)HR設(shè)置不同的位。在操作414中,可為已經(jīng)被標(biāo)志進(jìn)行遠(yuǎn)程操作的每一個(gè)HR配置路由(例如,PCIe、I10、MM10、DMA、錯(cuò)誤處理等等),并且另外,遠(yuǎn)程地操作的每一個(gè)HR可被隱藏以便防止它們被該設(shè)備在引導(dǎo)期間識(shí)別為可用的HR。
[0040]在操作410或操作414中的“否”確定之后可進(jìn)一步在操作416中確定該設(shè)備是否應(yīng)當(dāng)被配置成用于訪問另一個(gè)設(shè)備中的遠(yuǎn)程HR(例如,基于從RO接收的指令)。如果在操作416中確定將訪問至少一個(gè)遠(yuǎn)程HR,則在操作418中可在該設(shè)備中設(shè)置路由以便至少允許該設(shè)備中的處理模塊訪問遠(yuǎn)程HR。在操作410或操作414中的“否”確定之后可以是操作420,其中,可配置處理模塊間通信,包括例如,配置QPI/KTI鏈路、禁用高速緩存/存儲(chǔ)器一致性協(xié)議、配置中斷路由等等。在操作422中,交互監(jiān)視器可被使能以便管理并報(bào)告節(jié)點(diǎn)之間的交互。在操作424中,開機(jī)可在該設(shè)備中繼續(xù)以便進(jìn)行合并操作。
[0041]盡管圖4示出了根據(jù)實(shí)施例的各操作,將要理解的是在圖4中描繪的所有操作對(duì)于其他實(shí)施例而言不是全部必需的。實(shí)際上,在此充分考慮了在本公開的其他實(shí)施例中,在圖4中描繪的操作和/或在此描述的其他操作可以用未在任何附圖中明確示出的方式結(jié)合,但是仍充分地與本公開保持一致。因此,涉及未在一個(gè)附圖中準(zhǔn)確示出的特征和/或操作的權(quán)利要求被認(rèn)為在本公開的范圍和內(nèi)容內(nèi)。
[0042]如在本申請(qǐng)中和在權(quán)利要求書中所使用的,用術(shù)語(yǔ)“和/或”連結(jié)的項(xiàng)目列表可意指所列出的項(xiàng)目的任何組合。例如,短語(yǔ)“A、B和/或C"可指A; B; C; A和B; A和C; B和C;或A、B和C。如在本申請(qǐng)中和在權(quán)利要求書中所使用的,用術(shù)語(yǔ)中的至少一個(gè)”連結(jié)的項(xiàng)目列表可意指所列出的項(xiàng)目的任何組合。例如,短語(yǔ)“A、B或C中的至少一個(gè)”可指A;B;C;A和B;A和C; B和C;或A、B和C。
[0043]如在此在任何實(shí)施例中所使用的,術(shù)語(yǔ)“模塊”可指代被配置成用于執(zhí)行任何前述操作的軟件、固件和/或電路。軟件可被實(shí)現(xiàn)為記錄在非瞬態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上的軟件包、代碼、指令、指令集和/或數(shù)據(jù)。固件可被實(shí)現(xiàn)為硬編碼(例如,非易失性的)在存儲(chǔ)器設(shè)備中的代碼、指令或指令集和/或數(shù)據(jù)。如在此在任何實(shí)施例中所使用的“電路”可單獨(dú)地或在任何組合中包括例如存儲(chǔ)由可編程電路執(zhí)行的指令的硬連線電路、可編程電路(諸如包括一個(gè)或多個(gè)單獨(dú)的指令處理核的計(jì)算機(jī)處理器)、狀態(tài)機(jī)電路、和/或固件。這些模塊可一起或單獨(dú)地被實(shí)現(xiàn)為形成更大的系統(tǒng)的一部分的電路,例如,集成電路(1C)、片上系統(tǒng)(SoC)、臺(tái)式計(jì)算機(jī)、膝上型計(jì)算機(jī)、平板計(jì)算機(jī)、服務(wù)器、智能電話等等。
[0044]可在包括一個(gè)或多個(gè)存儲(chǔ)介質(zhì)(例如,非瞬態(tài)存儲(chǔ)介質(zhì))的系統(tǒng)中實(shí)現(xiàn)在此所描述的任何操作,該一個(gè)或多個(gè)存儲(chǔ)介質(zhì)在其上單獨(dú)地或結(jié)合地存儲(chǔ)當(dāng)被一個(gè)或多個(gè)處理器執(zhí)行時(shí)執(zhí)行該方法的指令。在此,處理器可包括例如服務(wù)器CPU、移動(dòng)設(shè)備CPU、和/或其他可編程電路。因此,旨在根據(jù)在此所描述的操作可跨多個(gè)物理設(shè)備分布,諸如在多于一個(gè)不同物理位置的處理結(jié)構(gòu)。存儲(chǔ)介質(zhì)可包括任何類型的有形介質(zhì),例如任何類型的盤,包括硬盤、軟盤、光盤、致密盤只讀存儲(chǔ)(CD-ROM)、致密盤可重寫(CD-RW)、以及磁光盤、半導(dǎo)體器件,諸如只讀存儲(chǔ)器(R0M)、隨機(jī)存取存儲(chǔ)器(RAM),諸如動(dòng)態(tài)和靜態(tài)RAM、可擦可編程只讀存儲(chǔ)器(EPROM)、電可擦可編程只讀存儲(chǔ)器(EEPROM)、閃存、固態(tài)盤(SSD)、嵌入式多媒體卡(eMMC)、安全數(shù)字輸入/輸出(SD1)卡、磁卡或光卡、或任何其他類型的適合用于存儲(chǔ)電子指令的介質(zhì)。其他實(shí)施例可被實(shí)現(xiàn)為由可編程控制設(shè)備執(zhí)行的軟件模塊。
[0045]因此,本公開涉及基于硬件的設(shè)備間資源共享。例如,遠(yuǎn)程編排器(RO)可提供致使設(shè)備使得至少一個(gè)硬件資源對(duì)其他設(shè)備可用的指令。該設(shè)備中的RO模塊可與該RO交互并且可基于從該RO接收的指令配置該設(shè)備中的配置模塊。當(dāng)該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí),該配置模塊可設(shè)置設(shè)備配置。該設(shè)備還可包括處理模塊,該處理模塊用于基于該設(shè)備配置、接口技術(shù)(IT)和至少一個(gè)硬件資源處理數(shù)據(jù)。該接口技術(shù)可允許該處理模塊與該至少一個(gè)硬件資源交互。該RO模塊可將該IT配置為基于這些指令允許該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0046]以下示例涉及進(jìn)一步的實(shí)施例。本公開的以下示例可包括主題材料,諸如設(shè)備、方法、用于存儲(chǔ)指令的至少一種機(jī)器可讀介質(zhì)、用于基于該方法執(zhí)行動(dòng)作的裝置和/或用于設(shè)備不可知功率監(jiān)測(cè)和分析的系統(tǒng),當(dāng)被執(zhí)行時(shí),這些指令致使機(jī)器基于該方法執(zhí)行動(dòng)作。
[0047]根據(jù)示例I,提供了一種能夠進(jìn)行基于硬件的設(shè)備間資源共享的設(shè)備。該設(shè)備可包括:配置模塊,該配置模塊用于設(shè)置設(shè)備配置;處理模塊,該處理模塊用于至少基于該設(shè)備配置處理數(shù)據(jù);至少一個(gè)硬件資源;接口技術(shù),該接口技術(shù)用于允許該處理模塊與該至少一個(gè)硬件資源交互;以及遠(yuǎn)程編排器模塊,該遠(yuǎn)程編排器模塊用于:從遠(yuǎn)程編排器接收至少一個(gè)指令;基于該至少一個(gè)指令配置該配置模塊;以及配置該接口技術(shù)以便允許該至少一個(gè)硬件資源基于該至少一個(gè)指令本地操作或遠(yuǎn)程操作。
[0048]示例2可包括示例I所述的元素,其中,該配置模塊至少包括用于當(dāng)該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí)設(shè)置該設(shè)備配置的固件。
[0049]示例3可包括示例2所述的元素,其中,在設(shè)置該設(shè)備配置時(shí),該配置模塊將該設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作。
[0050]示例4可包括示例I至3中任一項(xiàng)所述的元素,其中,在配置該接口技術(shù)時(shí),該遠(yuǎn)程編排器模塊將該接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0051]示例5可包括示例I至4中任一項(xiàng)所述的元素,其中,當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),該接口技術(shù)將該至少一個(gè)硬件資源至少?gòu)脑撎幚砟K隱藏。
[0052]示例6可包括示例I至5中任一項(xiàng)所述的元素,其中,當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),該至少一個(gè)硬件資源可由至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊訪問。
[0053]示例7可包括示例6所述的元素,其中,當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),該遠(yuǎn)程編排器模塊將該接口技術(shù)配置為在該至少一個(gè)硬件資源和該至少一個(gè)其他處理模塊之間路由消息。
[0054]示例8可包括示例6至7中任一項(xiàng)所述的元素,其中,該遠(yuǎn)程編排器模塊將該處理模塊配置為基于該設(shè)備配置直接與該至少一個(gè)其他處理模塊交互。
[0055]示例9可包括示例8所述的元素,其中,該處理模塊和該至少一個(gè)其他處理模塊直接利用快速路徑互連(QPI)連接或凱撒技術(shù)互連(KTI)連接交互。
[0056]示例10可包括示例8至9中任一項(xiàng)所述的元素,其中,該配置模塊基于該設(shè)備配置禁用該處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與該至少一個(gè)其他處理模塊之間的一致性協(xié)議。
[0057]示例11可包括示例6至10中任一項(xiàng)所述的元素,其中,當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),該遠(yuǎn)程編排器模塊將該接口技術(shù)配置為在該至少一個(gè)硬件資源和該至少一個(gè)其他處理模塊之間路由消息并且基于該設(shè)備配置將該處理模塊配置成用于直接與該至少一個(gè)其他處理模塊交互。
[0058]示例12可包括示例6至11中任一項(xiàng)所述的元素,并且可進(jìn)一步包括交互監(jiān)視器,該交互監(jiān)視器用于關(guān)于該設(shè)備與該至少一個(gè)其他設(shè)備之間的交互與該遠(yuǎn)程編排器通信。
[0059]示例13可包括示例6至12中任一項(xiàng)所述的元素,其中,機(jī)架中的該設(shè)備進(jìn)一步包括該遠(yuǎn)程編排器。
[0060]示例14可包括示例13所述的元素,其中,該機(jī)架進(jìn)一步包括該至少一個(gè)其他設(shè)備。
[0061]示例15可包括示例I至14中任一項(xiàng)所述的元素,其中,該接口技術(shù)是外圍組件互連Express (PCIe)接口技術(shù)。
[0062]示例16可包括示例I至15中任一項(xiàng)所述的元素,其中,該遠(yuǎn)程編排器模塊用于經(jīng)由帶外通信與該遠(yuǎn)程編排器通信。
[0063]示例17可包括示例I至16中任一項(xiàng)所述的元素,其中,該遠(yuǎn)程編排器模塊是管理引擎(ME) 0
[0064]示例18可包括示例I至17中任一項(xiàng)所述的元素,其中,該配置模塊至少包括用于當(dāng)該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí)設(shè)置該設(shè)備配置的固件。
[0065]根據(jù)示例19,提供了一種能夠進(jìn)行基于硬件的設(shè)備間資源共享的方法。該方法可包括:從遠(yuǎn)程編排器在設(shè)備中接收至少一個(gè)指令;基于該至少一個(gè)指令在該設(shè)備中的配置模塊中配置設(shè)備配置;以及基于該至少一個(gè)指令將該設(shè)備中的接口技術(shù)配置為允許該設(shè)備中的至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0066]示例20可包括示例19所述的元素,并且可進(jìn)一步包括致使該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變?yōu)殚_啟狀態(tài)并且基于該設(shè)備配置將該設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作。
[0067]示例21可包括示例19至20中任一項(xiàng)所述的元素,其中,配置該接口技術(shù)包括將該接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。
[0068]示例22可包括示例19至21中任一項(xiàng)所述的元素,并且可進(jìn)一步包括當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將該至少一個(gè)硬件資源至少?gòu)脑撛O(shè)備中的處理模塊隱藏。
[0069]示例23可包括示例22所述的元素,并且可進(jìn)一步包括當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將該接口技術(shù)配置為在該至少一個(gè)硬件資源與至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊之間路由消息。
[0070]示例24可包括示例23所述的元素,并且可進(jìn)一步包括基于該設(shè)備配置將該處理模塊配置為直接與該至少一個(gè)其他處理模塊交互并且基于該設(shè)備配置禁用該處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與該至少一個(gè)其他處理模塊之間的一致性協(xié)議。
[0071]示例25可包括示例23至24中任一項(xiàng)所述的元素,并且可進(jìn)一步包括關(guān)于該設(shè)備與該至少一個(gè)其他設(shè)備之間的交互與該遠(yuǎn)程編排器通信。
[0072]示例26可包括示例22至25中任一項(xiàng)所述的元素,并且可進(jìn)一步包括:當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),將該接口技術(shù)配置為在該至少一個(gè)硬件資源與至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊之間路由消息;基于該設(shè)備配置將該處理模塊配置為直接與該至少一個(gè)其他處理模塊交互;并且基于該設(shè)備配置禁用該處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與該至少一個(gè)其他處理模塊之間的一致性協(xié)議。
[0073]根據(jù)示例27,提供了一種包括至少一個(gè)設(shè)備的系統(tǒng),該系統(tǒng)被安排成用于執(zhí)行上述示例19至26中任一項(xiàng)所述的方法。
[0074]根據(jù)示例28,提供了一種被安排成用于執(zhí)行上述示例19至26中任一項(xiàng)所述的方法的芯片組。
[0075]根據(jù)示例29,提供了至少一種機(jī)器可讀介質(zhì),包括多個(gè)指令,響應(yīng)于在計(jì)算設(shè)備上被執(zhí)行,這些指令致使該計(jì)算設(shè)備執(zhí)行上述示例19至26中任一項(xiàng)所述的方法。
[0076]根據(jù)示例30,提供了被配置成用于進(jìn)行基于硬件的設(shè)備間資源共享的至少一個(gè)設(shè)備,該至少一個(gè)設(shè)備被安排成用于執(zhí)行上述示例19至26中任一項(xiàng)所述的方法。
[0077]根據(jù)示例31,提供了一種能夠進(jìn)行基于硬件的設(shè)備間資源共享的系統(tǒng)。該系統(tǒng)可包括:用于從遠(yuǎn)程編排器在設(shè)備中接收至少一個(gè)指令的裝置;用于基于該至少一個(gè)指令在該設(shè)備中的配置模塊中配置設(shè)備配置的裝置;以及用于基于該至少一個(gè)指令將該設(shè)備中的接口技術(shù)配置為允許該設(shè)備中的至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作的裝置。
[0078]示例32可包括示例31所述的元素,并且可進(jìn)一步包括用于致使該設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變?yōu)殚_啟狀態(tài)的裝置以及用于基于該設(shè)備配置將該設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作的裝置。
[0079]示例33可包括示例31至32中任一項(xiàng)所述的元素,其中,用于配置該接口技術(shù)的該裝置包括用于將該接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示該至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作的裝置。
[0080]示例34可包括示例31至33中任一項(xiàng)所述的元素,并且可進(jìn)一步包括用于當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將該至少一個(gè)硬件資源至少?gòu)脑撛O(shè)備中的處理模塊隱藏的裝置。[0081 ] 示例35可包括示例34所述的元素,并且可進(jìn)一步包括用于當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將該接口技術(shù)配置為在該至少一個(gè)硬件資源與至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊之間路由消息的裝置。
[0082]示例36可包括示例35所述的元素,并且可進(jìn)一步包括用于基于該設(shè)備配置將該處理模塊配置為直接與該至少一個(gè)其他處理模塊交互的裝置以及用于基于該設(shè)備配置禁用該處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與該至少一個(gè)其他處理模塊之間的一致性協(xié)議的裝置。
[0083]示例37可包括示例35至36中任一項(xiàng)所述的元素,并且可進(jìn)一步包括用于關(guān)于該設(shè)備與該至少一個(gè)其他設(shè)備之間的交互與該遠(yuǎn)程編排器通信的裝置。
[0084]示例38可包括示例34至37中任一項(xiàng)所述的元素,并且可進(jìn)一步包括:用于當(dāng)該至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將該接口技術(shù)配置為在該至少一個(gè)硬件資源與至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊之間路由消息的裝置;用于基于該設(shè)備配置將該處理模塊配置為直接與該至少一個(gè)其他處理模塊交互的裝置;以及用于基于該設(shè)備配置禁用該處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與該至少一個(gè)其他處理模塊之間的一致性協(xié)議的裝置。
[0085]已經(jīng)在此使用的術(shù)語(yǔ)和表達(dá)被用作描述而非限制術(shù)語(yǔ),并且不旨在使用這種術(shù)語(yǔ)和表達(dá)時(shí)排除所展示和描述的特征的任何等效方案(或其部分),并且認(rèn)識(shí)到在權(quán)利要求書的范圍內(nèi)各種修改是可能的。因此,權(quán)利要求書旨在覆蓋所有這種等效方案。
【主權(quán)項(xiàng)】
1.一種能夠進(jìn)行基于硬件的設(shè)備間資源共享的設(shè)備,包括: 配置模塊,所述配置模塊用于設(shè)置設(shè)備配置; 處理模塊,所述處理模塊用于至少基于所述設(shè)備配置處理數(shù)據(jù); 至少一個(gè)硬件資源; 接口技術(shù),所述接口技術(shù)用于允許所述處理模塊與所述至少一個(gè)硬件資源交互;以及 遠(yuǎn)程編排器模塊,所述遠(yuǎn)程編排器模塊用于至少: 從遠(yuǎn)程編排器接收至少一個(gè)指令; 基于所述至少一個(gè)指令配置所述配置模塊;以及 配置所述接口技術(shù)以便允許所述至少一個(gè)硬件資源基于所述至少一個(gè)指令本地操作或遠(yuǎn)程操作。2.如權(quán)利要求1所述的設(shè)備,其中,所述配置模塊至少包括用于當(dāng)所述設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)時(shí)設(shè)置所述設(shè)備配置的固件。3.如權(quán)利要求2所述的設(shè)備,其中,在設(shè)置所述設(shè)備配置時(shí),所述配置模塊將所述設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作。4.如權(quán)利要求1所述的設(shè)備,其中,在配置所述接口技術(shù)時(shí),所述遠(yuǎn)程編排器模塊將所述接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示所述至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。5.如權(quán)利要求1所述的設(shè)備,其中,當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),所述接口技術(shù)將所述至少一個(gè)硬件資源至少?gòu)乃鎏幚砟K隱藏。6.如權(quán)利要求1所述的設(shè)備,其中,當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),所述至少一個(gè)硬件資源可由至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊訪問。7.如權(quán)利要求6所述的設(shè)備,其中,當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),所述遠(yuǎn)程編排器模塊將所述接口技術(shù)配置為在所述至少一個(gè)硬件資源和所述至少一個(gè)其他處理模塊之間路由消息。8.如權(quán)利要求6所述的設(shè)備,其中,所述遠(yuǎn)程編排器模塊將所述處理模塊配置為基于所述設(shè)備配置直接與所述至少一個(gè)其他處理模塊交互。9.如權(quán)利要求8所述的設(shè)備,其中,所述配置模塊基于所述設(shè)備配置禁用所述處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與所述至少一個(gè)其他處理模塊之間的一致性協(xié)議。10.如權(quán)利要求6所述的設(shè)備,進(jìn)一步包括改革引擎,所述改革引擎用于關(guān)于所述設(shè)備與所述至少一個(gè)其他設(shè)備之間的交互與所述遠(yuǎn)程編排器通信。11.如權(quán)利要求1所述的設(shè)備,其中,所述接口技術(shù)是外圍組件互連ExpresS(PCI e)接口技術(shù)。12.—種用于基于硬件的設(shè)備間資源共享的方法,包括: 在設(shè)備中從遠(yuǎn)程編排器接收至少一個(gè)指令; 基于所述至少一個(gè)指令在所述設(shè)備的配置模塊中配置設(shè)備配置;以及在所述設(shè)備中配置接口技術(shù)以便允許所述設(shè)備中的所述至少一個(gè)硬件資源基于所述至少一個(gè)指令本地操作或遠(yuǎn)程操作。13.如權(quán)利要求12所述的方法,進(jìn)一步包括: 致使所述設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài);以及 基于所述設(shè)備配置將所述設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作。14.如權(quán)利要求12所述的方法,其中,配置所述接口技術(shù)包括將所述接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示所述至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作。15.如權(quán)利要求12所述的方法,進(jìn)一步包括: 當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),將所述至少一個(gè)硬件資源至少?gòu)乃鲈O(shè)備中的處理模塊隱藏。16.如權(quán)利要求15所述的方法,進(jìn)一步包括: 當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí),將所述接口技術(shù)配置為在所述至少一個(gè)硬件資源與至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊之間路由消息。17.如權(quán)利要求16所述的方法,進(jìn)一步包括: 基于所述設(shè)備配置將所述處理模塊配置為直接與所述至少一個(gè)其他處理模塊交互;以及 基于所述設(shè)備配置禁用所述處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與所述至少一個(gè)其他處理模塊之間的一致性協(xié)議。18.如權(quán)利要求16所述的方法,進(jìn)一步包括: 關(guān)于所述設(shè)備與所述至少一個(gè)其他設(shè)備之間的交互與所述遠(yuǎn)程編排器通信。19.一種用于基于硬件的設(shè)備間資源共享的系統(tǒng),包括: 用于在設(shè)備中從遠(yuǎn)程編排器接收至少一個(gè)指令的裝置; 用于基于所述至少一個(gè)指令在所述設(shè)備的配置模塊中配置設(shè)備配置的裝置;以及用于在所述設(shè)備中配置接口技術(shù)以便允許所述設(shè)備中的所述至少一個(gè)硬件資源基于所述至少一個(gè)指令本地操作或遠(yuǎn)程操作的裝置。20.如權(quán)利要求19所述的系統(tǒng),進(jìn)一步包括: 用于致使所述設(shè)備從關(guān)閉狀態(tài)轉(zhuǎn)變到開啟狀態(tài)的裝置;以及 用于基于所述設(shè)備配置將所述設(shè)備設(shè)置為在分區(qū)配置或合并配置中操作的裝置。21.如權(quán)利要求19所述的系統(tǒng),其中,用于配置所述接口技術(shù)的所述裝置包括用于將所述接口技術(shù)的配置空間中的至少一個(gè)位設(shè)置為指示所述至少一個(gè)硬件資源本地操作或遠(yuǎn)程操作的裝置。22.如權(quán)利要求19所述的系統(tǒng),進(jìn)一步包括: 用于當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將所述至少一個(gè)硬件資源至少?gòu)乃鲈O(shè)備中的處理模塊隱藏的裝置。23.如權(quán)利要求22所述的系統(tǒng),進(jìn)一步包括: 用于當(dāng)所述至少一個(gè)硬件資源遠(yuǎn)程操作時(shí)將所述接口技術(shù)配置為在所述至少一個(gè)硬件資源與至少一個(gè)其他設(shè)備中的至少一個(gè)其他處理模塊之間路由消息的裝置。24.如權(quán)利要求23所述的系統(tǒng),進(jìn)一步包括: 用于基于所述設(shè)備配置將所述處理模塊配置為直接與所述至少一個(gè)其他處理模塊交互的裝置;以及 用于基于所述設(shè)備配置禁用所述處理模塊的處理器高速緩存或存儲(chǔ)器中的至少一個(gè)與所述至少一個(gè)其他處理模塊之間的一致性協(xié)議的裝置。25.如權(quán)利要求23所述的系統(tǒng),進(jìn)一步包括: 用于關(guān)于所述設(shè)備與所述至少一個(gè)其他設(shè)備之間的交互與所述遠(yuǎn)程編排器通信的裝置。
【文檔編號(hào)】G06F9/50GK105988877SQ201610087356
【公開日】2016年10月5日
【申請(qǐng)日】2016年2月16日
【發(fā)明人】R·克里斯瓦斯, B·帕塔薩拉蒂
【申請(qǐng)人】英特爾公司