TW201810035A - 動態虛擬晶片上系統之方法與裝置 - Google Patents

動態虛擬晶片上系統之方法與裝置 Download PDF

Info

Publication number
TW201810035A
TW201810035A TW106113271A TW106113271A TW201810035A TW 201810035 A TW201810035 A TW 201810035A TW 106113271 A TW106113271 A TW 106113271A TW 106113271 A TW106113271 A TW 106113271A TW 201810035 A TW201810035 A TW 201810035A
Authority
TW
Taiwan
Prior art keywords
virtual
resource
wafer
resources
given
Prior art date
Application number
TW106113271A
Other languages
English (en)
Other versions
TWI800480B (zh
Inventor
拉傑恩 高亞
穆罕默德 瑞格希布 胡珊
理查E 克萊思勒
Original Assignee
凱為公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 凱為公司 filed Critical 凱為公司
Publication of TW201810035A publication Critical patent/TW201810035A/zh
Application granted granted Critical
Publication of TWI800480B publication Critical patent/TWI800480B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/4557Distribution of virtual machine instances; Migration and load balancing

Abstract

一種處理器設備,包括多個虛擬晶片上系統,多個虛擬晶片上系統被配置為根據多個虛擬晶片上系統和多個資源之間的資源對準來使用多個資源中的資源。處理器設備還可以包括被配置為回應於至少一個事件來動態地修改資源對準的資源對準單元。動態地修改資源對準可以防止否則由至少一個事件實現的處理量的損失。

Description

動態虛擬晶片上系統之方法與裝置
虛擬機器是與物理機類似地進行操作的物理機的軟體實現。可以在物理機上實現多個虛擬機器以允許共用底層物理機資源。
根據一個示例實施例,一種處理器設備可以包括多個虛擬晶片上系統,多個虛擬晶片上系統被配置為根據多個虛擬晶片上系統和多個資源之間的資源對準來利用多個資源中的資源。處理器設備還可以包括被配置為回應於至少一個事件來動態地修改資源對準的資源對準單元。
資源對準單元還可以被配置為動態地修改資源對準,以回應於至少一個事件實現處理器設備的處理量。
處理器設備還可以包括配置單元,其在操作上耦接到資源對準單元並且被配置為回應于對資源對準的至少一個修改來動態地應用修改的資源對準。
配置單元還可以被配置為偵測資源對準單元已經修改資源對準。
配置單元還可以被配置為從資源對準單元接收指示資源對準單元已經修改資源對準的通信。
為了動態地應用修改的資源對準,配置單元還可以被配置為 更新處理器設備的配置,以強制多個虛擬晶片上系統根據修改的資源對準來利用資源。
至少一個修改可以包括對多個虛擬晶片上系統中的給定虛擬晶片上系統與多個資源中的給定資源之間的對準的修改。配置單元還可以被配置為基於給定虛擬晶片上系統放棄使用給定資源或者基於應用於其的預定時間值的到期來應用至少一個修改。
處理器設備還可以包括在操作上耦接到資源對準單元的監測單元。監測單元可以被配置為監測至少一個事件的至少一個實例,並且將至少一個事件的至少一個實例傳送給資源對準單元,以觸發資源對準單元動態地修改資源對準。
為了監測至少一個事件的至少一個實例,至少一個監測單元還可以被配置為監測多個資源中的至少一個資源的狀態或多個虛擬晶片上系統的至少一個虛擬系統狀態。
至少一個資源的狀態可以包括故障狀態、利用狀態或其組合。
至少一個虛擬系統狀態可以包括故障狀態、利用狀態或其組合。
資源對準可以包括多個資源和多個虛擬晶片上系統之間的多個映射。為了動態地修改資源對準,資源對準單元還可以被配置為回應於至少一個事件來動態地修改多個映射中的至少一個映射。
至少一個映射可以將多個資源中的給定資源與多個虛擬晶片上系統中的給定虛擬晶片上系統對準。動態地修改至少一個映射可以包 括將給定資源與多個虛擬晶片上系統中的至少一個其他虛擬晶片上系統對準,以阻止給定虛擬晶片上系統採用給定資源,並且使得至少一個其他虛擬系統能夠採用給定資源。
為了動態地修改資源對準,資源對準單元還可以被配置為向資源對準添加至少一個映射,至少一個映射將多個資源中的資源與多個虛擬晶片上系統中的虛擬晶片上系統對準。
資源對準可以包括多個資源和多個虛擬晶片上系統之間的多個映射,並且動態地修改資源對準可以包括從多個映射中移除至少一個映射。
資源對準可以使得多個虛擬晶片上系統中的多個虛擬晶片上系統能夠共用多個資源中的給定資源。
多個虛擬晶片上系統中的多個虛擬晶片上系統每個可以被配置為基於給定資源的被分配給相應虛擬晶片上系統的相應使用百分比來使用給定資源。
資源對準可以使得多個虛擬晶片上系統中的給定虛擬晶片上系統能夠排他性地使用給定資源。
至少一個事件可以包括在處理器設備外部發生的外部事件。
至少一個事件可以包括基於一天中的時間的預排程的事件。
至少一個事件可以包括指示多個資源中的給定資源的失效的故障事件。
至少一個事件可以包括過度訂閱事件,過度訂閱事件指示多個資源中的至少一個資源被過度訂閱或者指示多個虛擬晶片上系統中的至 少一個虛擬晶片上系統被過度訂閱。
至少一個事件可以包括閒置事件,閒置事件指示與多個虛擬晶片上系統中的給定虛擬晶片上系統對準的多個資源中的給定資源被該給定虛擬晶片上系統的使用百分比低於臨界值。
可以動態地修改資源對準,以防止否則由至少一個事件實現的處理量的損失。
根據另一示例實施例,一種方法可以包括配置處理器設備的多個虛擬晶片上系統以根據多個虛擬晶片上系統和多個資源之間的資源對準來利用多個資源中的資源。該方法還可以包括回應於至少一個事件來動態地修改資源對準。
回應於至少一個事件來動態地修改資源對準使得回應於至少一個事件而實現處理器設備的處理量。
該方法還可以包括回應于資源對準的至少一個修改來動態地應用修改的資源對準。
該方法還可以包括偵測對資源對準的至少一個修改。
該方法還可以包括接收對資源對準的至少一個修改的通信。
該方法還可以包括更新處理器設備的配置以強制多個虛擬晶片上系統根據修改的資源對準來利用資源。
至少一個修改可以包括對多個虛擬晶片上系統中的給定虛擬晶片上系統與多個資源中的給定資源之間的對準的修改。應用至少一個修改可以基於給定虛擬晶片上系統放棄使用給定資源,或者可以基於應用於其的預定時間值的到期。
該方法還可以包括監測至少一個事件的至少一個實例,以及傳送至少一個事件的至少一個實例以觸發對資源對準的動態修改。
監測可以包括監測多個資源中的至少一個資源的狀態或者多個虛擬晶片上系統的至少一個虛擬晶片上系統狀態。
資源對準可以包括多個資源和多個虛擬晶片上系統之間的多個映射,並且動態地修改資源對準可以包括回應於至少一個事件來動態地修改多個映射中的至少一個映射。
至少一個映射可以將多個資源中的給定資源與多個虛擬晶片上系統中的給定虛擬晶片上系統對準。動態地修改至少一個映射可以包括將給定資源與多個虛擬晶片上系統中的至少一個其他虛擬晶片上系統對準,以阻止給定虛擬晶片上系統採用給定資源並且使得至少一個其他虛擬晶片上系統能夠使用給定資源。
動態地修改資源對準可以包括將至少一個映射添加到資源對準,至少一個映射可以將多個資源中的資源與多個虛擬晶片上系統中的虛擬晶片上系統對準。
資源對準可以包括在多個資源和多個虛擬晶片上系統之間的多個映射,並且動態地修改資源對準可以包括從多個映射中移除至少一個映射。
該方法還可以包括使得多個虛擬晶片上系統中的多個虛擬晶片上系統能夠基於資源對準來共用多個資源中的給定資源。
使能多個虛擬晶片上系統可以包括配置多個虛擬晶片上系統基於給定資源的被分配給相應虛擬晶片上系統的相應使用百分比來使用 給定資源。
該方法還可以包括使得多個虛擬晶片上系統中的給定虛擬晶片上系統能夠基於資源對準來排他性地使用給定資源。
動態地修改資源對準可以防止否則由至少一個事件實現的處理量的損失。
又一示例實施例可以包括其上存儲有指令序列的非暫態電腦可讀取媒體,指令序列在被處理器載入和執行時使得處理器完成本文中所公開的方法。
應當理解,本文中所公開的實施例可以以方法、裝置、系統或其上包含程式碼的電腦可讀取媒體的形式來實現。
100‧‧‧方塊圖
102‧‧‧處理器設備
104a-104n‧‧‧虛擬晶片上系統
106a-106m‧‧‧資源
108‧‧‧資源對準
110‧‧‧資源對準單元
112‧‧‧修改
114‧‧‧事件
200‧‧‧方塊圖
202‧‧‧處理器設備
204a-204n‧‧‧虛擬晶片上系統
206a-206m‧‧‧資源
208‧‧‧資源對準
210‧‧‧資源對準單元
214‧‧‧事件
216‧‧‧配置單元
218‧‧‧資源對準
219‧‧‧資源使用資訊
220‧‧‧修改
221‧‧‧配置更新
222‧‧‧通信
224‧‧‧配置
226‧‧‧監測單元
227‧‧‧監測資訊
229‧‧‧事件調度器
300‧‧‧方塊圖
304a-304n‧‧‧虛擬晶片上系統
306a-306m‧‧‧資源
308‧‧‧資源對準
340a-340l‧‧‧映射
400‧‧‧方塊圖
408‧‧‧資源識別字
460a-460n‧‧‧條目
462‧‧‧虛擬晶片上系統識別字
464‧‧‧資源識別字
466a-466n‧‧‧晶片上系統識別字
468a-468n‧‧‧資源識別字
470‧‧‧位元
472‧‧‧位
474‧‧‧位
500‧‧‧方法
502-508‧‧‧步驟
600‧‧‧電腦
602‧‧‧匯流排
604‧‧‧I/O設備介面
606‧‧‧網路介面
608‧‧‧記憶體
610‧‧‧電腦軟體指令
612‧‧‧資料
614‧‧‧光碟存儲裝置
618‧‧‧中央處理器單元
從下面對附圖中所示的本發明的示例性實施例的更具體的描述中,上述內容將是顯而易見的,其中在不同的視圖中相同的附圖標記指代相同的部分。附圖不一定是按比例的,重點反而在於圖示本發明的實施例。
第一圖是處理器設備的示例實施例的方塊圖;第二圖是處理器設備的另一示例實施例的方塊圖;第三圖是資源對準的示例實施例的方塊圖;第四圖是資源對準的另一示例實施例的方塊圖;第五圖是一種方法的示例實施例的流程圖;以及第六圖是在本文中所公開的實施例內可選的電腦的示例性內部結構的方塊圖。
虛擬晶片上系統(VSoC)是允許在不同虛擬系統之間共用底層物理機資源的機器的實現。在VSoC實現下,多個作業系統應用可以在同一物理機上共存,彼此完全隔離和保護。可以使用硬體和軟體特徵的組合來執行不同虛擬系統之間的物理機資源的分配。
通過在多個虛擬晶片上系統之間分配資源,本文中所公開的實施例可以提供在晶晶片上執行多個嵌入式應用和作業系統,同時允許在保護的情況下在多個虛擬晶片上系統之間共用資源。
處理器設備可以用於各種網路和存放裝置,包括路由器、交換機、安全裝置、內容感知交換機、三網融合(triple-play)閘道、聚合設備和閘道、存儲陣列、存儲網路設備和伺服器、或者可以受益於虛擬化的任何其它合適的裝置或系統。根據本文中所公開的實施例,處理器設備的VSoC可以基於資源對準來利用分配給VSoC的資源,資源對準定義哪些資源被分配由處理器設備的哪個VSoC使用。資源可以包括處理核、記憶體、快取記憶體、輸入/輸出(I/O)埠、I/O設備、硬體加速器、作業系統、軟體應用、或者可以由VSoC使用的任何其它合適的資源。
例如,處理器設備可以包括各種資源,例如分流(offload)處理核以使得處理器設備能夠實現高處理量的應用特定的輔助處理器。處理核可以是全功能和高性能整數或浮點算數邏輯單位(ALU)實現,並且直接支持工業標準C/C++或任何其它合適的程式設計環境。處理核可以具有所有必要的要求來在虛擬晶片上系統內引導並且運行全功能作業系統。
資源可以在處理器設備內部或外部。資源對準可以包括將處 理器設備的資源分組成對應於處理器設備的虛擬晶片上系統的子集的對準。子集的一些資源可以交疊,例如,例如處理核等資源可以由多個虛擬晶片上系統共用,如資源對準所定義的。根據本文中所公開的實施例,基於資源對準,例如處理核的資源可以由多個不同的虛擬晶片上系統利用。共用可以基於被分配給相應的虛擬晶片上系統的百分比。
共用資源可以包括基於被分配給相應的虛擬晶片上系統的範圍來共用資源。例如,雖然多個虛擬晶片上系統可以與例如記憶體的相同的資源對準,但是每個虛擬晶片上系統可以被限制到記憶體的特定範圍,以針對記憶體內的每個記憶體位置提供隔離。
替選地,根據資源對準,資源可以由特定VSoC排他性地使用。例如,例如特定類型的I/O埠的某些資源可以不被共用。
資源對準可以被動態地修改,並且在本文中可以被可互換地稱為動態資源對準、資源配置或動態資源指派。根據本文中所公開的實施例,資源對準可以定義如何在多個虛擬晶片上系統之間劃分處理器設備的資源。資源對準可以在執行時間之前創建,或者替選地,在運行時期間創建。可以基於至少一個事件在執行時間期間動態地修改資源對準。可以在執行時間期間基於計時器、被監測的度量或外部事件來動態地修改資源對準。例如,至少一個事件可以基於指示一天中的時間的計時器。至少一個事件可以基於度量,例如運行時使用度量、故障度量、服務品質(QoS)度量、高或低浮水印、或任何其他合適的度量。
第一圖是處理器設備102的示例實施例的方塊圖100。處理器設備102包括多個虛擬晶片上系統104a-n。多個虛擬晶片上系統104a-n可以 被配置為根據多個虛擬晶片上系統104a-n和多個資源106a-m之間的資源對準108來利用多個資源106a-m中的資源。資源對準108可以定義多個資源106a-m中的哪些資源被分配給多個虛擬晶片上系統104a-n中的哪些虛擬晶片上系統。處理器設備102還包括資源對準單元110,資源對準單元110被配置為回應於至少一個事件114來動態地修改112資源對準108。根據一個實施例,處理器設備102可以包括至少一個處理核(未示出)以及其上存儲有指令序列的至少一個記憶體(未示出),指令序列在被至少一個處理核載入和執行時使得使得處理器設備102實現資源對準單元110。根據另一實施例,處理器設備102可以包括用以實現資源對準單元110的一個或多個電路系統佈置,例如在2010年4月28日提交的美國專利申請第12/769,463號(現在的美國專利第8,826,271號,其全部教導通過引用併入本文)和第六圖(其將在下文公開)或其等同物中公開的。
多個資源106a-m可以包括處理核、記憶體、快取記憶體、輸入/輸出(I/O)埠、I/O設備、硬體加速器、作業系統、軟體應用、或可以由VSoC利用的任何其它合適的資源。這樣的資源可以在處理器設備102內部或外部。在多個虛擬晶片上系統104a-n和多個資源106a-m之間的資源對準108可以分割多個資源106a-m,從而使得一些資源在多個虛擬晶片上系統104a-n中的虛擬晶片上系統之間被共用並且一些資源不被共用。資源對準108可以定義多個資源106a-m中的哪些資源被分配由多個虛擬晶片上系統104a-n中的哪些虛擬晶片上系統使用。
資源對準單元110還可以被配置為動態地修改資源對準108,以回應於至少一個事件114來實現處理器設備102的處理量。例如,可 以修改動態資源對準108以根據需要向特定虛擬晶片上系統添加資源或移除資源,以便維持處理量需求。
至少一個事件可以包括在處理器設備外部發生的外部事件。例如,在聯網環境中,外部事件可以是邊界閘道協議(BGP)路由抖動(flap)。在聯網環境中,BGP路由抖動可以指示較少的分組需要被路由。因此,可以修改資源對準以從支援分組應用的虛擬晶片上系統中移除資源。外部事件可以是病毒攻擊的通知。病毒攻擊的通知可以是需要更嚴格地檢查分組的指示,從而增加了處理器設備102的計算工作負荷。動態資源對準108可以被修改為例如向包括用於分組檢查的應用的給定VSoC分配更多的資源,例如處理核或其他合適的資源。BGP路由抖動和病毒攻擊的通知是外部事件的示例;然而,外部事件可以是處理器設備外部的任何合適的事件。
至少一個事件可以包括基於一天中的時間的預排程的事件。一天中的時間可以是可以被理解為處理器設備被大量利用(例如,在繁重的業務負載下)的時間。根據一天中的時間來重新對準虛擬晶片上系統的資源可以主動地實現將額外資源配置給在一天中的時間上大量被利用的這些虛擬晶片上系統,重新對準在本文中也可互換地稱為重新分配。因此,可以主動地修改動態重新對準,以防止業務丟棄並且維持處理器設備的處理量要求。
至少一個事件可以包括指示多個資源中的給定資源的失效的故障事件。可以修改失效資源與VSoC之間的對準,使得VSoC不再訪問失效資源,而是與另一資源對準。
至少一個事件可以包括指示多個資源中的至少一個資源被過度訂閱(oversubscription)或指示多個虛擬晶片上系統中的至少一個虛擬晶片上系統被過度訂閱的過度訂閱事件。可以基於度量來確定這種過度訂閱。例如,反映業務丟棄的QoS度量可以用於確定過度訂閱事件。回應於過度訂閱事件,可以通過修改動態資源對準來減少與至少一個資源對準的虛擬晶片上系統的數目。此外,可以通過修改動態資源對準來增加與至少一個虛擬晶片上系統對準的資源的數目。
至少一個事件可以包括閒置(idling)事件,閒置事件指示與多個虛擬晶片上系統中的給定虛擬晶片上系統對準的多個資源中的給定資源被給定虛擬晶片上系統的使用百分比低於臨界值。因此,可以修改動態資源對準以增加共用給定資源的虛擬晶片上系統的數目。
可以動態地修改資源對準,以防止否則由至少一個事件招致(effectuate)的處理量的損失。例如,基於指示在一天的特定時間的業務量損失的歷史度量,可以在一天的特定時間修改動態資源對準以防止在一天的特定時間發生未來的業務損失。這樣,至少一個事件可以包括基於一天中的時間的預排程的事件。
第二圖是處理器設備202的另一示例實施例的方塊圖200。處理器設備202包括多個虛擬晶片上系統204a-n。多個虛擬晶片上系統204a-n可以被配置為根據多個虛擬晶片上系統204a-n和多個資源206a-m之間的資源對準208來利用多個資源206a-m中的資源。處理器設備202還包括資源對準單元210,資源對準單元210可以被配置為回應於至少一個事件214來動態地修改資源對準208。
處理器設備202還包括配置單元216,配置單元216在操作上耦接到資源對準單元210。配置單元216可以被配置為回應于對資源對準208的至少一個修改220來動態地應用修改之後的資源對準218。配置單元216可以被配置為通過監測資源對準208的內容來偵測資源對準單元210已經修改資源對準208。
例如,資源對準208可以是資料結構,並且配置單元216可以被配置為監測資料結構的內容用於改變。根據一些實施例,可以基於對資源對準208的至少一個修改220來斷言中斷(未示出)。偵測對資源對準208的至少一個修改220可以是斷言的中斷的函數;然而,可以以任何合適的方式執行偵測對資源對準208的至少一個修改220。
例如,根據一些實施例,配置單元216可以被配置為從資源對準單元210接收通信222,通信222指示資源對準單元210修改資源對準208。通信222可以是經由處理器設備202的郵箱、釋放的旗語、或任何其它合適的通信機制所發送的通信消息。
為了動態地應用修改之後的資源對準218,配置單元216可以發送配置更新221以更新處理器設備202的配置224,以強制多個虛擬晶片上系統204a-n根據修改之後的資源對準218來利用多個資源206a-m。例如,配置224可以包括強制對多個資源206a-m的VSoC訪問許可的硬體寄存器配置設置(未示出)。配置224可以包括強制對多個資源206a-m的VSoC訪問許可的任何合適的配置設置。配置224可以包括用於處理器設備202的供應資訊(未示出),其中供應資訊是資源對準208的函數。
例如,供應資訊可以包括用於處理器設備202的二級快取記 憶體控制器(未示出)的配置,其中二級快取記憶體控制器控制對被包括在多個資源206a-m中的記憶體的記憶體訪問。例如,對處理器設備的記憶體的所有訪問可以被路由以通過由二級快取記憶體控制器所控制的二級快取記憶體(未示出),因為二級快取記憶體可以用作處理器設備208的記憶體訪問的中央位置。
多個虛擬晶片上系統204a-n可以用作用於執行作業系統和嵌入式應用的虛擬化執行環境。配置單元216可以更新配置224以根據資源對準208來強制每個VSoC訪問其相應的資源。考慮到由多個虛擬晶片上系統204a-n提供的保護,在處理器設備202的每個VSoC內運行的應用和作業系統可能不知道在處理器設備202的其他虛擬晶片上系統內運行的其他應用和作業系統。
配置224可以實現或防止VSoC訪問資源對準208所規定的資源或其分區。例如,例如動態隨機存取記憶體(DRAM)的資源的分區可以被配置為使得一個分區可以由VSoC訪問,而不被其他虛擬晶片上系統訪問。配置224可以使得一組虛擬晶片上系統能夠共用給定資源或其一部分,並且防止其他虛擬晶片上系統訪問該給定共用資源。
配置224可以對共用資源強加VSoC優先順序,從而使得一個VSoC可以具有用於在處理器設備的其他虛擬晶片上系統上訪問共用資源的嚴格的或加權的優先順序。這樣的優先順序資訊(未示出)可以被包括作為配置224的一部分或者被存儲作為資源對準208的一部分。
至少一個修改220可以包括對多個虛擬晶片上系統204a-n中的給定虛擬晶片上系統與多個資源206a-m中的給定資源之間的對準的修 改。配置單元216還可以被配置為基於給定虛擬晶片上系統放棄給定資源的使用或者基於應用於其的預定時間值的到期來應用至少一個修改220。
例如,雖然至少一個修改220可以將給定資源與不同於給定虛擬晶片上系統的虛擬晶片上系統對準(即分配),但是給定資源可能仍然在由給定虛擬晶片上系統使用。配置單元216可以基於可以在處理器設備202上本地訪問的資源使用資訊219來確定給定資源仍然由給定虛擬晶片上系統使用。該資源使用資訊219可以由多個虛擬晶片上系統204a-n或可以以任何其它合適的方式更新。
配置單元216可以延遲應用至少一個修改220,直到給定虛擬晶片上系統已經放棄其對給定資源的使用。替選地,配置單元216可以採用預定時間值來等待給定虛擬晶片上系統放棄其對給定資源的使用。配置單元216可以基於預定時間值的期滿來應用至少一個修改220。
處理器設備202還可以包括在操作上耦接到資源對準單元210的監測單元226。監測單元226可以被配置為監測至少一個事件214的至少一個實例,並且向資源對準單元210傳送至少一個事件214的至少一個實例以觸發資源對準單元210動態地修改資源對準208。
為了監測至少一個事件214的至少一個實例,至少一個監測單元226還可以被配置為監測多個資源206a-m中的至少一個資源的狀態或多個虛擬晶片上系統204a-n的至少一個虛擬系統狀態。多個資源206a-m中的至少一個資源的狀態可以包括故障狀態、利用狀態或其組合。多個虛擬晶片上系統204a-n的至少一個狀態虛擬系統狀態可以包括故障狀態、利用狀態或其組合。
為了監測至少一個事件214的至少一個實例,監測單元226可以監測處理器設備202的監測資訊227。監測資訊227可以包括各種資訊,例如一天中的時間、過度訂閱度量、閒置度量、資源浮水印、網路資訊、資源故障資訊等。監測資訊227可以包括可以被監測以確定至少一個事件214的任何合適的資訊,針對該至少一個事件214,對其作出回應的資源對準208的動態修改是有利的。
監測單元226可以包括事件調度器229。事件調度器229可以基於重新對準調度(未示出)來調度至少一個事件214。重新對準調度可以是靜態調度或本身週期性地調整的動態調度。重新對準調度可以包括一天中的一個或多個時間條目。例如,重新對準調度器可以包括一天中的一個或多個時間條目,對於該一天中的一個或多個時間條目,重新對準對於處理器設備的性能是有利的。可以基於整個處理器設備的使用度量、每個VSoC使用度量、資源度量或任何其它合適的度量來動態地調整重新對準調度。重新對準可以基於外部事件,例如BGP路由抖動、或任何其他合適的外部事件。
根據一個實施例,資源可以是記憶體。記憶體可以包括一個或多個組塊(chunk)。一個或多個組塊中的每個組塊可以是記憶體的包括來自記憶體的相應固定數目的位元的一部分。固定數目的位元可以是連續的。替選地,一個或多個組塊可以包括來自記憶體的散佈在記憶體中的固定數目的位元。基於至少一個事件,一個或多個組塊中的每個組塊可以被釋放或分配給給定VSoC。至少一個事件可以是重新對準調度的函數,因此,記憶體的一個或多個組塊可以在調度的基礎上動態地重新對準。例如, 由於至少一個事件可以是重新對準調度的函數,所以可以在給定VSoC已知例如處於輕負載的時間如調度地釋放記憶體的一個或多個組塊,反之,可以在給定VSoC已知處於重負載的時間將記憶體的一個或多個組塊如調度地分配給給定VSoC。
根據本文中所公開的實施例,監測單元226可以被配置為監測各種度量以確定上文所公開的故障、過度訂閱或閒置事件。例如,監測單元226可以被配置為監測例如同位或改錯碼(ECC)錯誤的等度量以確定故障事件。監測單元226可以向同位或改錯碼(ECC)錯誤應用臨界值以確定故障事件。可以以任何合適的方式來確定故障事件。例如,資源可以具有可以用於確定故障事件的硬體故障或退化類型指示符。例如QoS統計等指標可以由監測單元226監測以確定過度訂閱或閒置事件。可以執行動態地修改資源對準以使得給定虛擬晶片上系統能夠滿足特定的QoS要求,例如銀等級或其他合適的QoS等級。
根據一個實施例,處理器設備202可以包括至少一個處理核(未示出)和其上存儲有指令序列的至少一個記憶體(未示出),指令序列在由至少一個處理核(未示出)載入和執行時使得處理器設備202實現資源對準單元210、配置單元216和監測單元226。根據另一實施例,處理器設備202可以包括用於以實現資源對準單元210、配置單元216和監測單元226的一個或多個電路系統佈置,例如在2010年4月28日提交的美國No.12/769,463,現在的美國專利No.8,826,271,其全部教導通過引用併入本文,以及第六圖或其等同物中公開的。
第三圖是資源對準308的示例實施例的方塊圖300。資源對準 308可以包括多個資源306a-m和多個虛擬晶片上系統304a-n之間的多個映射340a-k。為了動態地修改資源對準308,資源對準單元還可以被配置為回應於至少一個事件來動態地修改多個映射340a-k中的至少一個映射,資源對準單元例如如上文公開的第一圖的資源對準單元110或第二圖的資源對準單元210,至少一個事件例如上文公開的第一圖的至少一個事件114或第二圖的至少一個事件214。
至少一個映射可以將多個資源306a-m中的給定資源與多個虛擬晶片上系統304a-n中的給定虛擬晶片上系統對準。例如,映射1,1 304a將VSoC1 304a與資源1 306a映射,映射1,2 304b將VSoC1 304a與資源2 306b映射,映射1,2 304c將VSoC2 304b與資源2 306b映射,並且映射i,j 304k將VSoCi 304i與資源j 306j映射。
動態地修改至少一個映射可以包括將給定資源與多個虛擬晶片上系統304a-n中的至少一個其他虛擬晶片上系統對準,以阻止給定虛擬晶片上系統使用給定資源並且使得至少一個其他虛擬系統能夠使用給定資源。例如,修改至少一個映射可以包括移除映射i,j 304k並且添加映射n,j 304l,阻止VSoCi 304i使用資源j306j,並且使得VSoCn 304n能夠採用資源j306j。
為了動態地修改資源對準308,例如以上公開的第一圖的資源對準單元110或第二圖的資源對準210單元的資源對準單元還可以被配置為向資源對準308添加至少一個映射,至少一個映射將多個資源306a-m中的資源與多個虛擬晶片上系統304a-n中的虛擬晶片上系統對準。例如,添加映射n,j 304l可以使得VSoCn 304n能夠採用資源j 306j。
資源對準308可以包括多個資源306a-m和多個虛擬晶片上系統304a-n之間的多個映射,例如多個映射340a-k,並且動態地修改資源對準308可以包括從多個映射340a-k中移除至少一個映射,例如映射i,j 304k。
資源對準308可以使得多個虛擬晶片上系統304a-n中的多個虛擬晶片上系統能夠共用多個資源306a-m的給定資源。例如,資源對準308的映射1,2 340b和映射2,2 340c使得資源2 306b能夠被VSoC1 304a和VSoC2 304b共用。
多個虛擬晶片上系統304a-n中的多個虛擬晶片上系統均可以被配置為基於給定資源的被分配給相應虛擬系統的相應使用百分比來使用給定資源。使用百分比可以是給定資源的類型、在相應的虛擬晶片上系統上運行的應用的類型或其組合的函數。
使用百分比可以由相應的虛擬晶片上系統控制。使用百分比可以由虛擬機器監測器(VMM)(未示出)來監測,其在本文中也可互換地稱為管理程式,其可以迫使相應的虛擬晶片上系統基於看門狗來放棄使用給定資源。
資源對準308可以使得多個虛擬晶片上系統中的給定虛擬晶片上系統能夠排他性地使用給定資源。例如,資源1 306a可以是非共用資源,例如特定類型的I/O埠或任何其他合適的非共用資源,並且映射1,1 340a可以使得VSoC1 304n能夠排他性地使用資源1 306a。
第四圖是資源對準408的另一示例實施例的方塊圖400。資源對準408可以是資源對準表,其包括多個條目460a-460n,每個條目將唯一的虛擬晶片上系統識別字462與資源識別字408對準。例如,多個條目460a-460n 可以將唯一的晶片上系統識別字466a-466n分別與資源識別字468a-468n相關聯。
唯一的虛擬晶片上系統識別字466a-466n每個可以唯一地標識多個虛擬晶片上系統中的虛擬晶片上系統,多個虛擬晶片上系統例如如上所述的第一圖、第二圖和第三圖的多個虛擬晶片上系統104a-n、204a-n和304a-n。資源識別字468a-468n可以指示多個資源中的哪個可以被通過唯一的虛擬晶片上系統識別字466a-466n標識的相應的一個或多個虛擬晶片上系統使用,多個資源例如第一圖、第二圖和第三圖的多個資源106a-106m、206a-206m和306a-306m。
例如,資源對準408的條目460b可以將虛擬系統識別字466b與資源識別字468b相關聯。根據一個實施例,資源識別字468a-468n可以包括點陣圖,點陣圖中的每個位提供相應資源的對準指示符;然而,資源識別字可以以使虛擬晶片上系統與資源對準的任何合適的方式來實現。資源識別字的點陣圖的每個位在本文中可以可互換地被稱為資源對準指示符。
與具有第一狀態的虛擬晶片上系統識別字(例如虛擬晶片上系統識別字460a-460n)相關聯的資源識別字(例如資源識別字468a-468n)的點陣圖的每個位可以將與位相關聯的相應資源映射到與虛擬晶片上系統識別字相關聯的VSoC,即,相應資源與VSoC對準。具有第二狀態的點陣圖的每個位元可以反映在相應資源和與虛擬晶片上系統識別字相關聯的VSoC之間不存在映射,即,相應資源和VSoC不對準。例如,點陣圖468a的位470可以用於將與虛擬晶片上系統識別字466a相關聯的虛擬晶片上系統與和位元470的位位置相關聯的資源對準。具有第一狀態“1”的位元470 可以將虛擬晶片上系統與資源對準,使得虛擬晶片上系統能夠使用資源,而具有第二狀態“0”的位元470可以阻止虛擬晶片上系統使用資源。通過修改點陣圖中的相應位,可以將資源從一個虛擬晶片上系統“移動”到另一虛擬晶片上系統。
例如,資源識別字468b和468c的位472和位474可以各自與特定資源相關聯。特定資源可以與位472和474的位位置相關聯。通過將其值從“1”改變為“0”來修改位472可以改變與虛擬晶片上系統識別字460b相關聯的虛擬晶片上系統的資源對準,從而使得其不再能夠訪問特定資源。通過將其值從“0”改變為“1”來修改位474可改變與虛擬晶片上系統識別字460c相關聯的虛擬晶片上系統的資源對準,從而使得其能夠訪問特定資源。因此,特定資源實際上(即,不是物理上)已經從一個虛擬晶片上系統“移動”到另一虛擬晶片上系統。
基於與特定資源相關聯的資源類型,本文中所公開的實施例可以提供對與特定資源相對應的資源對準的資源對準指示符的原子更新。例如,如上文所公開的,修改相應資源識別字468b和468c的位472和474可以包括原子地執行修改,使得對位472和474的值的修改每個同時對於與包括位472和474的資源識別字468b和468c相關聯的相應的VSoC是可見的。原子更新可以防止每個需要對特定資源進行獨佔訪問的不同VSoC之間的潛在衝突。
根據本文中所公開的實施例,對應於與非共用資源類型(例如記憶體位置或I/O埠、或可以以排他性方式使用的任何其它合適類型的資源)相關聯的相同資源的資源對準指示符可以被原子地更新,而對應於具 有共用資源類型(例如處理核或任何其他合適的共用資源類型)的相同資源的資源對準指示符可以在個體基礎上修改。應當理解,共用和非共用資源類型的示例不限制要共用或非共用的資源的類型的具體示例。例如,在一些實例中,I/O埠可以是共用資源,而處理核可以是非共用資源。
根據本文中所公開的實施例,可以基於從接收到的分組(未示出)提取欄位來確定虛擬晶片上系統識別字,例如虛擬晶片上系統識別字462。提取的欄位可以用於形成可以用於索引到將金鑰映射到虛擬晶片上系統識別字的查閱資料表(LUT)(未示出)中的金鑰,例如5元組金鑰。因此,可以基於在用於金鑰的LUT中找到的虛擬晶片上系統識別字462來將接收到的分組調度到給定VSoC。使用在用於金鑰的LUT中找到的虛擬晶片上系統識別字462,可以為給定VSoC標識相應的資源識別字464。相應的資源識別字464指示給定VSoC可以採用哪些資源,如上文所公開的。
雖然給定VSoC正在使用特定資源來處理所接收的分組,但是至少一個事件可以使得資源對準408被修改,從而使得特定資源不再與給定VSoC對準。因此,配置單元216可以偵測修改之後的資源對準218,並且延遲應用配置更新221,否則其將阻止給定VSoC使用特定資源,直到特定資源不再由給定VSoC使用或者預定的時間值已經過期。
第五圖是方法(500)的示例實施例的流程圖。該方法可以開始(502)並且配置處理器設備的多個虛擬晶片上系統以根據多個虛擬晶片上系統和多個資源之間的資源對準來利用多個資源中的資源(504)。在示例實施例中,該方法可以回應於至少一個事件來動態地修改資源對準(508),並且該方法此後結束(508)。
根據本文中所公開的實施例,安全裝置(未示出)可以包括處理器設備102或202。處理器設備102或202可以是網路服務處理器。安全設備可以是獨立系統,其可以將在一個網路介面處接收到的封包交換到另一網路介面,並且可以在轉發分組之前對接收到的分組執行多個安全功能。例如,安全設備可以用於在將經處理的分組轉發到局域網(LAN)或任何其他合適的網路之前對可能在廣域網路(WAN)或任何其他合適的網路上接收的分組執行安全處理。
處理器設備102或202可以被配置為處理被封裝在接收到的分組中的開放系統互相連線(OSI)網路L2-L7層協定。如本領域技術人員所公知的,OSI參考模型定義了七個網路通訊協定層(L1-L7)。實體層(L1)表示將處理器設備連接到傳輸媒體的實際的電和物理介面。資料連結層(L2)執行資料成幀。網路層(L3)將資料格式化為分組。傳輸層(L4)處理端到端傳輸。工作階段層(L5)管理設備之間的通信,例如,無論通信是半雙工還是全雙工。展示層(L6)管理資料格式化和呈現,例如語法、控制代碼、特殊圖形和字元集。應用層(L7)允許用戶之間的通信,例如檔案傳輸和電子郵件。
處理器設備102或202可以為例如L4-L7的上層網路通訊協定調度和排列工作(例如,分組處理操作),並且使得能夠處理接收到的分組中的上層網路通訊協定以便以線速度轉發分組。通過處理協議以便以線速度轉發分組,處理器設備102或202不會減慢網路資料傳輸速率。處理器設備102或202可以從可以是物理硬體介面的網路介面(未示出)接收分組,並且可以對接收到的分組執行L2-L7網路通訊協定處理。處理器設備102或 202隨後可以通過網路介面將處理後的分組轉發到網路中的另一跳、最終目的地或通過另一匯流排由主處理器進一步處理。例如多個虛擬晶片上系統104a-n或多個虛擬晶片上系統204a-n的多個虛擬晶片上系統可以包括用於處理網路安全協定的應用,例如防火牆、應用防火牆、包括IP安全(IPSec)和/或安全通訊端層(SSL)的虛擬私人網路絡(VPN)、入侵偵測系統(IDS)、防病毒(AV)或任何其它合適的網路通訊協定。
多個虛擬晶片上系統104a-n或204a-n可以使用與多個虛擬晶片上系統104a-n或204a-n對準的多個處理核來傳遞高應用性能。每個處理核可以專用於執行資料平面、控制平面操作或其組合。資料平面操作可以包括用於轉發分組的分組操作。控制平面操作可以包括處理複雜更高層協定的部分,例如網際網路協定安全(IPSec)、傳輸控制協議(TCP)、安全通訊端層(SSL)或任何其他合適的更高級協議。資料平面操作可以包括處理這些複雜的更高層協定的其他部分。
根據本文中所公開的實施例,例如多個處理核、記憶體、輸入/輸出埠的資源可以在執行時間期間被動態地分配給一個或多個虛擬晶片上系統。如上文所公開的,可以基於至少一個事件在多個虛擬晶片上系統之間動態地重新對準資源配置。
多個處理核可以被分配給支援資料平面或控制平面應用的虛擬晶片上系統。資源可以在被分配用於資料平面的那些虛擬晶片上系統之間重新對準。例如,第一資源集合可以被指定為可用於資料平面使用,並且從一個資料平面VSoC動態分配到另一資料平面VSoC,例如轉發、IDS或AV類型的VSoC。類似地,第二資源集合可以被指定為可用於控制平面使 用,並且第二資源集合可以被動態地從一個控制平面VSoC分配到另一控制平面VSoC。根據本文中所公開的實施例,資源可以與VSoC動態對準。
第六圖是其中可以實現本發明的各種實施例的電腦600的內部結構的示例的方塊圖。電腦600包含系統匯流排602,其中匯流排是用於電腦或處理系統的元件之間的資料傳輸的硬體線集合。系統匯流排602本質上是連接使得能夠在元件之間傳遞資訊的電腦系統的不同元件(例如,處理器、磁碟記憶體、記憶體、輸入/輸出埠、網路埠等)的共用導管。耦接到系統匯流排602的是用於將各種輸入和輸出設備(例如,鍵盤、滑鼠、顯示器、印表機、揚聲器等)連接到電腦600的I/O設備介面604。網路介面606允許電腦600連接到附接到網路的各種其他設備。記憶體608為可以用於實現本發明的實施例的電腦軟體指令610和資料612提供易失性存儲。盤存儲裝置614為可以用於實現本發明的實施例的電腦軟體指令610和資料612提供非易失性存儲。中央處理器單元618也耦接到系統匯流排602並且提供電腦指令的執行。
本文中所公開的其他示例實施例可以使用電腦程式產品來配置;例如,控制項可以在用於實現示例實施例的軟體中程式設計。另外的示例實施例可以包括包含可以由處理器執行並且當被載入和執行時使得處理器完成本文中所描述的方法的指令的非暫態電腦可讀取媒體。應當理解,例如資源對準單元110或210、配置單元216和監測單元226或本文中所公開的框和流程圖的任何其它元件等框和流程圖的元件可以用軟體、硬體(例如通過在2010年4月28日提交的美國專利申請第12/769,463號(現在的美國專利第8,826,271號中公開的一個或多個電路系統佈置,其全部教導通 過引用併入本文)和第六圖或其等同物中公開的)、韌體、其組合、或將來確定的其它類似實現來實現。另外,本文中所描述的框和流程圖的元件可以以任何方式在軟體、硬體或韌體中組合或劃分。如果在軟體中實現,則軟體可以用能夠支援本文中所公開的示例實施例的任何語言編寫。軟體可以存儲在任何形式的電腦可讀取媒體中,例如隨機存取記憶體(RAM)、唯讀記憶體(ROM)、光碟唯讀記憶體(CD-ROM)等。在操作中,通用或專用處理器或處理核以本領域良好理解的方式載入和執行軟體。還應當理解,方塊圖和流程圖可以包括更多或更少的元件,不同地佈置或定向,或者不同地表示。應當理解,實現可以實現示出本文中所公開的實施例的執行的框、流程和/或網路圖以及方塊和流程圖的數目。
雖然已經參照本發明的示例性實施例具體示出和描述了本發明,但是本領域技術人員將理解,在不脫離所附申請專利範圍限定的本發明的範圍的情況下,可以在形式和細節上進行各種改變。

Claims (72)

  1. 一種處理器設備,包括:多個虛擬晶片上系統,被配置為根據所述多個虛擬晶片上系統與多個資源之間的資源對準來利用所述多個資源中的資源;以及一資源對準單元,被配置為回應於至少一個事件來動態地修改該資源對準。
  2. 根據申請專利範圍第1項所述的處理器設備,其中該資源對準單元還被配置為動態地修改該資源對準,以回應於該至少一個事件來實現該處理器設備的處理量。
  3. 根據申請專利範圍第1項所述的處理器設備,進一步包括一配置單元,其係操作地耦接到該資源對準單元,且被配置為回應於對該資源對準的至少一個修改來動態地應用所修改的資源對準。
  4. 根據申請專利範圍第3項所述的處理器設備,其中該配置單元係進一步被配置以偵測該資源對準單元修改了該資源對準。
  5. 根據申請專利範圍第3項所述的處理器設備,其中該配置單元係進一步被配置以自該資源對準單元接收一通信,該通信係指示該資源對準單元修改了該資源對準。
  6. 根據申請專利範圍第3項所述的處理器設備,其中為了動態地應用所修改的資源對準,該配置單元係進一步被配置以更新該處理器設備的一配置,以強制所述多個虛擬晶片上系統根據所修改的資源對準來利用該資源。
  7. 根據申請專利範圍第3項所述的處理器設備,其中該至少一個修改包括對所述多個虛擬晶片上系統中的一給定虛擬晶片上系統與所述多個資源中的一給定資源之間的一對準之一修改,且其中該配置單元係進一步被配置以基於該給定虛擬晶片上系統放棄使用該給定資源、或基於對其應用的一預定時間值的到期來應用該至少一個修改。
  8. 根據申請專利範圍第1項所述的處理器設備,進一步包括一監測單元,其係操作地耦接到該資源對準單元,該監測單元被配置以監測該至少一個事件的至少一個實例,並且向該資源對準單元傳送該至少一個事件的該至少一個實例,以觸發該資源對準單元動態地修改該資源對準。
  9. 根據申請專利範圍第8項所述的處理器設備,其中為了監測該至少一個事件的該至少一個實例,該至少一個監測單元係進一步被配置以監測所述多個資源中的至少一個資源的一狀態、或所述多個虛擬晶片上系統的至少一個虛擬系統狀態。
  10. 根據申請專利範圍第9項所述的處理器設備,其中所述多個資源中的該至少一個資源的該狀態包括一故障狀態、一利用狀態、或其組合。
  11. 根據申請專利範圍第9項所述的處理器設備,其中所述多個虛擬晶片上系統中的該至少一個虛擬晶片上系統狀態包括一故障狀態、一利用狀態、或其組合。
  12. 根據申請專利範圍第1項所述的處理器設備,其中:所述資源對準包括所述多個資源與所述多個虛擬晶片上系統之間的多個映射;以及為了動態地修改所述資源對準,該資源對準單元係進一步被配置以 回應於該至少一個事件來動態地修改所述多個映射中的至少一個映射。
  13. 根據申請專利範圍第12項所述的處理器設備,其中:該至少一個映射係對準所述多個資源中的一給定資源與所述多個虛擬晶片上系統中的一給定虛擬晶片上系統;以及動態地修改所述至少一個映射包括將所述給定資源與所述多個虛擬晶片上系統中的至少一個其他虛擬晶片上系統對準,以阻止所述給定虛擬晶片上系統採用所述給定資源並且使得所述至少一個其他虛擬晶片上系統能夠採用所述給定資源。
  14. 根據申請專利範圍第1項所述的處理器設備,其中為了動態地修改所述資源對準,所述資源對準單元還被配置為向所述資源對準添加至少一個映射,所述至少一個映射將所述多個資源中的資源與所述多個虛擬晶片上系統中的虛擬晶片上系統對準。
  15. 根據申請專利範圍第1項所述的處理器設備,其中:所述資源對準包括所述多個資源與所述多個虛擬晶片上系統之間的多個映射;以及動態地修改所述資源對準包括從所述多個映射中移除至少一個映射。
  16. 根據申請專利範圍第1項所述的處理器設備,其中所述資源對準使得所述多個虛擬晶片上系統中的多個虛擬晶片上系統能夠共用所述多個資源中的一給定資源。
  17. 根據申請專利範圍第16項所述的處理器設備,其中所述多個虛擬晶片上系統中的所述多個虛擬晶片上系統係各被配置以基於被分配給相應虛 擬晶片上系統的該給定資源之一使用百分比來使用該給定資源。
  18. 根據申請專利範圍第1項所述的處理器設備,其中所述資源對準使得所述多個虛擬晶片上系統中的一給定虛擬晶片上系統能夠排他性地使用一給定資源。
  19. 根據申請專利範圍第1項所述的處理器設備,其中該至少一個事件包括在該處理器設備外部發生的一外部事件。
  20. 根據申請專利範圍第1項所述的處理器設備,其中該至少一個事件包括基於一天中的時間之一預排程事件。
  21. 根據申請專利範圍第1項所述的處理器設備,其中該至少一個事件包括一故障事件,該故障事件係指示所述多個資源中的一給定資源之一失效。
  22. 根據申請專利範圍第1項所述的處理器設備,其中該至少一個事件包括一過度訂閱事件,該過度訂閱事件係指示所述多個資源中的至少一個資源被過度訂閱,或指示所述多個虛擬晶片上系統中的至少一個虛擬晶片上系統被過度訂閱。
  23. 根據申請專利範圍第1項所述的處理器設備,其中該至少一個事件包括一閒置事件,該閒置事件係指示與所述多個虛擬晶片上系統中的一給定虛擬晶片上系統對準的所述多個資源中的一給定資源具有低於一臨界值的該給定虛擬晶片上系統之一使用百分比。
  24. 根據申請專利範圍第1項所述的處理器設備,其中所述資源對準被動態地修改,以防止否則由該至少一個事件所實現之一處理量損失。
  25. 一種方法,包括: 配置一處理器設備的多個虛擬晶片上系統,以根據所述多個虛擬晶片上系統與多個資源之間之一資源對準來利用所述多個資源中的一資源;以及回應於至少一個事件,動態地修改該資源對準。
  26. 根據申請專利範圍第25項所述的方法,其中回應於該至少一個事件而動態地修改該資源對準係回應於該至少一個事件而實現該處理器設備的一處理量。
  27. 根據申請專利範圍第25項所述的方法,進一步包括:回應於對所述資源對準的至少一個修改來動態地應用所修改的資源對準。
  28. 根據申請專利範圍第27項所述的方法,進一步包括:偵測對所述資源對準的所述至少一個修改。
  29. 根據申請專利範圍第27項所述的方法,進一步包括:接收對所述資源對準的所述至少一個修改之一通信。
  30. 根據申請專利範圍第27項所述的方法,進一步包括:更新該處理器設備之一配置,以強制所述多個虛擬晶片上系統根據所修改的資源對準來利用該資源。
  31. 根據申請專利範圍第27項所述的方法,其中所述至少一個修改包括對所述多個虛擬晶片上系統中的一給定虛擬晶片上系統與所述多個資源中的一給定資源之間之一對準的一修改,且其中應用所述至少一個修改是基於該給定虛擬晶片上系統放棄使用該給定資源、或基於對其應用之一預定時間值的到期。
  32. 根據申請專利範圍第25項所述的方法,進一步包括:監測所述至少一個 事件的至少一個實例,並傳送所述至少一個事件的該至少一個實例以觸發對所述資源對準之動態修改。
  33. 根據申請專利範圍第32項所述的方法,其中所述監測包括監測所述多個資源中的至少一個資源之一狀態、或所述多個虛擬晶片上系統的至少一個虛擬晶片上系統狀態。
  34. 根據申請專利範圍第33項所述的方法,其中所述多個資源中的所述至少一個資源之該狀態包括一故障狀態、一利用狀態、或其組合。
  35. 根據申請專利範圍第33項所述的方法,其中所述多個虛擬晶片上系統中的該至少一個虛擬晶片上系統狀態包括一故障狀態、一利用狀態、或其組合。
  36. 根據申請專利範圍第25項所述的方法,其中:所述資源對準包括所述多個資源與所述多個虛擬晶片上系統之間的多個映射;以及動態地修改所述資源對準包括回應於所述至少一個事件來動態地修改所述多個映射中的至少一個映射。
  37. 根據申請專利範圍第36項所述的方法,其中:所述至少一個映射係對準所述多個資源中的一給定資源與所述多個虛擬晶片上系統中的一給定虛擬晶片上系統;以及動態地修改所述至少一個映射係包括將該給定資源與所述多個虛擬晶片上系統中的至少一個其他虛擬晶片上系統對準,以阻止該給定虛擬晶片上系統採用該給定資源,並且使得所述至少一個其他虛擬晶片上系統能夠採用該給定資源。
  38. 根據申請專利範圍第25項所述的方法,其中動態地修改所述資源對準係包括添加至少一個映射至所述資源對準,所述至少一個映射使所述多個資源中之一資源與所述多個虛擬晶片上系統中之一虛擬晶片上系統對準。
  39. 根據申請專利範圍第25項所述的方法,其中:所述資源對準包括所述多個資源與所述多個虛擬晶片上系統之間的多個映射;以及動態地修改所述資源對準包括從所述多個映射中移除至少一個映射。
  40. 根據申請專利範圍第25項所述的方法,進一步包括:致能所述多個虛擬晶片上系統中的多個虛擬晶片上系統,以基於所述資源對準來共用所述多個資源中的一給定資源。
  41. 根據申請專利範圍第40項所述的方法,其中致能所述多個虛擬晶片上系統包括:配置所述多個虛擬晶片上系統,以基於該給定資源之被分配給一相應虛擬晶片上系統的一相應使用百分比來使用該給定資源。
  42. 根據申請專利範圍第25項所述的方法,進一步包括:使得所述多個虛擬晶片上系統中的一給定虛擬晶片上系統能夠基於所述資源對準來排他性地使用一給定資源。
  43. 根據申請專利範圍第25項所述的方法,其中所述至少一個事件包括在一處理器設備外部發生的一外部事件。
  44. 根據申請專利範圍第25項所述的方法,其中所述至少一個事件包括基於 一天中的時間之一預排程事件。
  45. 根據申請專利範圍第25項所述的方法,其中所述至少一個事件包括一故障事件,其係指示所述多個資源中的一給定資源的失效。
  46. 根據申請專利範圍第25項所述的方法,其中所述至少一個事件包括一過度訂閱事件,其係指示所述多個資源中的至少一個資源被過度訂閱,或指示所述多個虛擬晶片上系統中的至少一個虛擬晶片上系統被過度訂閱。
  47. 根據申請專利範圍第25項所述的方法,其中所述至少一個事件包括一閒置事件,其係指示與所述多個虛擬晶片上系統中的一給定虛擬晶片上系統對準的所述多個資源中的一給定資源具有低於一臨界值的該給定虛擬晶片上系統之一使用百分比。
  48. 根據申請專利範圍第25項所述的方法,其中動態地修改所述資源對準係防止否則由所述至少一個事件實現的一處理量損失。
  49. 一種非暫態電腦可讀取媒體,其上編碼有一指令序列,該指令序列在由一處理器設備載入和執行時,係使得該處理器設備:配置該處理器設備的多個虛擬晶片上系統,以根據所述多個虛擬晶片上系統與多個資源之間的一資源對準來利用所述多個資源中的一資源;以及回應於至少一個事件來動態地修改所述資源對準。
  50. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中回應於所述至少一個事件來動態地修改所述資源對準係回應於所述至少一個事件而實現該處理器設備之一處理量。
  51. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備回應於對所述資源對準的至少一個修改來動態地應用所修改的資源對準。
  52. 根據申請專利範圍第51項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備偵測對所述資源對準的所述至少一個修改。
  53. 根據申請專利範圍第51項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備接收對所述資源對準的所述至少一個修改的通信。
  54. 根據申請專利範圍第51項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備更新該處理器設備的配置,以強制所述多個虛擬晶片上系統根據所修改的資源對準來利用該資源。
  55. 根據申請專利範圍第51項所述的非暫態電腦可讀取媒體,其中所述至少一個修改包括對所述多個虛擬晶片上系統中的一給定虛擬晶片上系統與所述多個資源中的一給定資源之間之一對準的修改,並且其中應用所述至少一個修改是基於該給定虛擬晶片上系統放棄使用該給定資源、或基於對其應用之一預定時間值的到期。
  56. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備監測所述至少一個事件的至少一個實例,並且傳送所述至少一個事件的所述至少一個實例以觸發對所述資源對準之一動態修改。
  57. 根據申請專利範圍第56項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備監測所述多個資源中的至少一個資源之一 狀態、或所述多個虛擬晶片上系統的至少一個虛擬晶片上系統狀態。
  58. 根據申請專利範圍第57項所述的非暫態電腦可讀取媒體,其中所述多個資源中的所述至少一個資源的狀態包括一故障狀態、一利用狀態、或其組合。
  59. 根據申請專利範圍第57項所述的非暫態電腦可讀取媒體,其中所述多個虛擬晶片上系統中的所述至少一個虛擬晶片上系統狀態包括一故障狀態、一利用狀態、或其組合。
  60. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中:所述資源對準包括所述多個資源與所述多個虛擬晶片上系統之間的多個映射;以及其中該指令序列進一步使得該處理器設備回應於所述至少一個事件來動態地修改所述多個映射中的至少一個映射。
  61. 根據申請專利範圍第60項所述的非暫態電腦可讀取媒體,其中:所述至少一個映射將所述多個資源中的一給定資源與所述多個虛擬晶片上系統中的一給定虛擬晶片上系統對準;以及其中該指令序列進一步使得該處理器設備將該給定資源與所述多個虛擬晶片上系統中的至少一個其他虛擬晶片上系統對準,以阻止該給定虛擬晶片上系統採用該給定資源,並且使得所述至少一個其他虛擬晶片上系統能夠採用該給定資源。
  62. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備對所述資源對準添加至少一個映射,所述至少一個映射將所述多個資源中的一資源與所述多個虛擬晶片上系統中 的一虛擬晶片上系統對準。
  63. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中:所述資源對準包括所述多個資源與所述多個虛擬晶片上系統之間的多個映射;以及其中該指令序列進一步使得該處理器設備從所述多個映射中移除至少一個映射。
  64. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備使所述多個虛擬晶片上系統中的多個虛擬晶片上系統能夠基於所述資源對準來共用所述多個資源中的一給定資源。
  65. 根據申請專利範圍第64項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得該處理器設備:使所述多個虛擬晶片上系統中的所述多個虛擬晶片上系統基於被分配給一相應虛擬晶片上系統之該給定資源的一相應使用百分比來使用該給定資源。
  66. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中該指令序列進一步使得所述處理器設備:使所述多個虛擬晶片上系統中的一給定虛擬晶片上系統能夠基於所述資源對準來排他性地使用一給定資源。
  67. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中所述至少一個事件包括在一處理器設備外部發生的一外部事件。
  68. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中所述至少一個事件包括基於一天中的時間之一預排程事件。
  69. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中所述至少 一個事件包括一故障事件,該故障事件指示所述多個資源中的一給定資源之失效。
  70. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中所述至少一個事件包括一過度訂閱事件,該過度訂閱事件指示所述多個資源中的至少一個資源被過度訂閱,或指示所述多個虛擬晶片上系統中的至少一個虛擬晶片上系統被過度訂閱。
  71. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中所述至少一個事件包括一閒置事件,該閒置事件指示與所述多個虛擬晶片上系統中的一給定虛擬晶片上系統對準的所述多個資源中的一給定資源具有低於一臨界值的該給定虛擬晶片上系統之一使用百分比。
  72. 根據申請專利範圍第49項所述的非暫態電腦可讀取媒體,其中藉由動態地修改所述資源對準,係防止否則由所述至少一個事件實現的一處理量損失。
TW106113271A 2016-04-22 2017-04-20 動態虛擬晶片上系統之方法、處理器設備與非暫存電腦可讀取媒體 TWI800480B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/136,330 US10235211B2 (en) 2016-04-22 2016-04-22 Method and apparatus for dynamic virtual system on chip
US15/136,330 2016-04-22

Publications (2)

Publication Number Publication Date
TW201810035A true TW201810035A (zh) 2018-03-16
TWI800480B TWI800480B (zh) 2023-05-01

Family

ID=60020886

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106113271A TWI800480B (zh) 2016-04-22 2017-04-20 動態虛擬晶片上系統之方法、處理器設備與非暫存電腦可讀取媒體

Country Status (6)

Country Link
US (1) US10235211B2 (zh)
JP (2) JP2017199369A (zh)
KR (2) KR102362826B1 (zh)
CN (2) CN116820763A (zh)
DE (1) DE102017206710A1 (zh)
TW (1) TWI800480B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8826271B2 (en) 2010-04-28 2014-09-02 Cavium, Inc. Method and apparatus for a virtual system on chip
US11159376B2 (en) * 2018-05-24 2021-10-26 International Business Machines Corporation System and method for network infrastructure analysis and convergence
JP7102950B2 (ja) * 2018-05-30 2022-07-20 富士通株式会社 情報処理システム、情報処理システムの制御方法及び管理装置の制御プログラム
CN113165664B (zh) * 2018-11-21 2023-11-07 Lg电子株式会社 设置于车辆的装置及其控制方法
US11840219B2 (en) * 2019-01-09 2023-12-12 Lg Electronics Inc. Method for controlling vehicle through multi SoC system
US11316713B2 (en) 2019-11-25 2022-04-26 International Business Machines Corporation Virtual drawers in a server
JP7342753B2 (ja) 2020-03-18 2023-09-12 株式会社デンソー 車両用位置特定装置及び車両用位置特定方法
WO2022187432A2 (en) * 2021-03-03 2022-09-09 Battelle Memorial Institute Systems and methods for providing virtual system-on-chip (vsoc) instances

Family Cites Families (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6381682B2 (en) 1998-06-10 2002-04-30 Compaq Information Technologies Group, L.P. Method and apparatus for dynamically sharing memory in a multiprocessor system
US6587938B1 (en) 1999-09-28 2003-07-01 International Business Machines Corporation Method, system and program products for managing central processing unit resources of a computing environment
JP2001331331A (ja) * 2000-05-18 2001-11-30 Nec Corp 唯一プロセス・マルチスレッドオペレーティングシステム
US7054930B1 (en) * 2000-10-26 2006-05-30 Cisco Technology, Inc. System and method for propagating filters
JP2002202959A (ja) 2000-12-28 2002-07-19 Hitachi Ltd 動的な資源分配をする仮想計算機システム
JP4087072B2 (ja) 2001-01-25 2008-05-14 株式会社日立製作所 ストレージシステム及び仮想プライベートボリューム制御方法
US7561526B2 (en) * 2002-12-17 2009-07-14 Nortel Networks Limited Communication network route determination
US7299468B2 (en) 2003-04-29 2007-11-20 International Business Machines Corporation Management of virtual machines to utilize shared resources
WO2005036367A2 (en) 2003-10-08 2005-04-21 Unisys Corporation Virtual data center that allocates and manages system resources across multiple nodes
DE102004037024B4 (de) * 2004-07-30 2006-07-13 Siemens Ag Verfahren und Netzelement für ein die Dienstgüte erhaltendes Umrouten von Verkehr in Netzen mit langsamer Routenkonvergenz
US20060070065A1 (en) 2004-09-29 2006-03-30 Zimmer Vincent J Memory support for heterogeneous virtual machine guests
US7831749B2 (en) 2005-02-03 2010-11-09 Solarflare Communications, Inc. Including descriptor queue empty events in completion events
US8141156B1 (en) * 2005-12-28 2012-03-20 At&T Intellectual Property Ii, L.P. Method and apparatus for mitigating routing misbehavior in a network
US8295275B2 (en) 2006-03-20 2012-10-23 Intel Corporation Tagging network I/O transactions in a virtual machine run-time environment
JP4756603B2 (ja) 2006-10-10 2011-08-24 ルネサスエレクトロニクス株式会社 データプロセッサ
US7958320B2 (en) 2006-12-05 2011-06-07 Intel Corporation Protected cache architecture and secure programming paradigm to protect applications
US8024728B2 (en) 2006-12-28 2011-09-20 International Business Machines Corporation Virtual machine dispatching to maintain memory affinity
JP4620097B2 (ja) * 2007-09-19 2011-01-26 株式会社東芝 仮想計算機システム及び同システムにおけるスケジュール調整方法
US8200992B2 (en) 2007-09-24 2012-06-12 Cognitive Electronics, Inc. Parallel processing computer systems with reduced power consumption and methods for providing the same
CN101631110B (zh) 2008-07-15 2013-01-02 国际商业机器公司 基于相对位置动态确定连接建立机制的装置和方法
US8898049B2 (en) 2009-04-20 2014-11-25 International Business Machines Corporation System level power profiling of embedded applications executing on virtual multicore system-on-chip platforms
US9740533B2 (en) * 2009-08-03 2017-08-22 Oracle International Corporation Altruistic dependable memory overcommit for virtual machines
US11132237B2 (en) * 2009-09-24 2021-09-28 Oracle International Corporation System and method for usage-based application licensing in a hypervisor virtual execution environment
CN201540564U (zh) * 2009-12-21 2010-08-04 东南大学 利用虚存机制对片上异构存储资源动态分配的电路
KR101658035B1 (ko) * 2010-03-12 2016-10-04 삼성전자주식회사 가상 머신 모니터 및 가상 머신 모니터의 스케줄링 방법
US8543728B2 (en) * 2010-03-25 2013-09-24 Verizon Patent And Licensing Inc. Dampening interface flapping
US8826271B2 (en) 2010-04-28 2014-09-02 Cavium, Inc. Method and apparatus for a virtual system on chip
US8909783B2 (en) * 2010-05-28 2014-12-09 Red Hat, Inc. Managing multi-level service level agreements in cloud-based network
JP2012018515A (ja) * 2010-07-07 2012-01-26 Fujitsu Ltd 情報処理装置,制御方法,制御プログラム
US8543471B2 (en) 2010-08-24 2013-09-24 Cisco Technology, Inc. System and method for securely accessing a wirelessly advertised service
US9600315B2 (en) * 2010-10-22 2017-03-21 Netapp, Inc. Seamless takeover of a stateful protocol session in a virtual machine environment
EP2665228B1 (en) * 2011-04-07 2020-05-20 Huawei Technologies Co., Ltd. Method for adjusting resources dynamically and scheduling device
US8484392B2 (en) * 2011-05-31 2013-07-09 Oracle International Corporation Method and system for infiniband host channel adaptor quality of service
US8954961B2 (en) * 2011-06-30 2015-02-10 International Business Machines Corporation Geophysical virtual machine policy allocation using a GPS, atomic clock source or regional peering host
US20130024857A1 (en) * 2011-07-19 2013-01-24 Nexenta Systems, Inc. Method and system for flexible resource mapping for virtual storage appliances
US9639379B1 (en) * 2011-07-19 2017-05-02 Open Invention Network Llc Dynamic configuration of virtual machines
US20130024856A1 (en) * 2011-07-19 2013-01-24 Nexenta Systems, Inc. Method and apparatus for flexible booting virtual storage appliances
TWI533146B (zh) * 2011-11-10 2016-05-11 財團法人資訊工業策進會 虛擬資源調整裝置、方法及儲存其之電腦可讀取紀錄媒體
US8977886B2 (en) 2012-02-14 2015-03-10 Alcatel Lucent Method and apparatus for rapid disaster recovery preparation in a cloud network
US20130263117A1 (en) * 2012-03-28 2013-10-03 International Business Machines Corporation Allocating resources to virtual machines via a weighted cost ratio
US8964735B2 (en) 2012-05-18 2015-02-24 Rackspace Us, Inc. Translating media access control (MAC) addresses in a network hierarchy
JP6099323B2 (ja) 2012-06-13 2017-03-22 株式会社富士通マーケティング サーバ制御装置およびサーバ制御プログラム
US20140007097A1 (en) * 2012-06-29 2014-01-02 Brocade Communications Systems, Inc. Dynamic resource allocation for virtual machines
KR101393237B1 (ko) * 2012-07-23 2014-05-08 인하대학교 산학협력단 그리드 컴퓨팅에서 동적 유효자원 재배치 기반 작업 할당 장치 및 방법
US8825550B2 (en) 2012-08-23 2014-09-02 Amazon Technologies, Inc. Scaling a virtual machine instance
CN103888420A (zh) * 2012-12-20 2014-06-25 中国农业银行股份有限公司广东省分行 一种虚拟服务器系统
US9223597B2 (en) * 2012-12-21 2015-12-29 Commvault Systems, Inc. Archiving virtual machines in a data storage system
KR101718374B1 (ko) 2013-01-11 2017-03-21 후아웨이 테크놀러지 컴퍼니 리미티드 네트워크 장치에 대한 네트워크 기능 가상화
JP2014138407A (ja) * 2013-01-18 2014-07-28 Hitachi Ltd ノード装置、通信システム及び仮想スイッチの切替方法
US9135126B2 (en) * 2013-02-07 2015-09-15 International Business Machines Corporation Multi-core re-initialization failure control system
US20140258595A1 (en) * 2013-03-11 2014-09-11 Lsi Corporation System, method and computer-readable medium for dynamic cache sharing in a flash-based caching solution supporting virtual machines
JP6191686B2 (ja) * 2013-03-21 2017-09-06 富士通株式会社 情報処理装置、資源割当方法、及びプログラム
TW201525717A (zh) * 2013-12-25 2015-07-01 Univ Nat Pingtung Sci & Tech 雲端服務的資源調適方法
US9519596B2 (en) * 2014-03-06 2016-12-13 Stmicroelectronics (Grenoble 2) Sas Resource access control in a system-on-chip
US9838253B2 (en) 2014-04-10 2017-12-05 Fujitsu Limited Object-oriented network virtualization
US9424063B2 (en) * 2014-04-29 2016-08-23 Vmware, Inc. Method and system for generating remediation options within a cluster of host computers that run virtual machines
CN106416156B (zh) 2014-05-23 2020-04-07 日本电气株式会社 通信装置、通信方法、通信系统和程序
US9690608B2 (en) * 2014-06-12 2017-06-27 Vmware, Inc. Method and system for managing hosts that run virtual machines within a cluster
US9800592B2 (en) * 2014-08-04 2017-10-24 Microsoft Technology Licensing, Llc Data center architecture that supports attack detection and mitigation
US9703951B2 (en) * 2014-09-30 2017-07-11 Amazon Technologies, Inc. Allocation of shared system resources
CN104331331B (zh) * 2014-11-02 2017-07-28 中国科学技术大学 任务数目和性能感知的可重构多核处理器的资源分配方法
US9584377B2 (en) * 2014-11-21 2017-02-28 Oracle International Corporation Transparent orchestration and management of composite network functions
US9462084B2 (en) * 2014-12-23 2016-10-04 Intel Corporation Parallel processing of service functions in service function chains
JP6447217B2 (ja) * 2015-02-17 2019-01-09 富士通株式会社 実行情報通知プログラム、情報処理装置および情報処理システム
JP2016163180A (ja) * 2015-03-02 2016-09-05 日本電気株式会社 通信システム、通信方法、及びプログラム
US9769206B2 (en) * 2015-03-31 2017-09-19 At&T Intellectual Property I, L.P. Modes of policy participation for feedback instances
CN104915151B (zh) * 2015-06-02 2018-12-07 杭州电子科技大学 多虚拟机系统中一种主动共享的内存超量分配方法
US9973432B2 (en) * 2015-07-10 2018-05-15 International Business Machines Corporation Load balancing in a virtualized computing environment based on a fabric limit
US10169066B2 (en) * 2015-08-06 2019-01-01 Ionroad Technologies Ltd. System and method for enhancing advanced driver assistance system (ADAS) as a system on a chip (SOC)
JP2017107274A (ja) * 2015-12-07 2017-06-15 富士通株式会社 仮想マシン増設方法、情報処理装置および仮想マシン増設システム
US9967165B2 (en) * 2015-12-07 2018-05-08 Keysight Technologies Singapore (Holdings) Pte. Ltd. Methods, systems, and computer readable media for packet monitoring in a virtual environment
US20170177395A1 (en) * 2015-12-21 2017-06-22 Mingqiu Sun Embedded architecture based on process virtual machine
EP3188017A1 (en) * 2015-12-29 2017-07-05 Harmonic Inc. Scheduler of processes having timed predictions of computing loads
JP6604220B2 (ja) * 2016-02-02 2019-11-13 富士通株式会社 管理装置、管理システム、及びスケーリング方法

Also Published As

Publication number Publication date
KR102516167B1 (ko) 2023-03-30
TWI800480B (zh) 2023-05-01
JP2017199369A (ja) 2017-11-02
DE102017206710A1 (de) 2017-10-26
JP7334396B2 (ja) 2023-08-29
US10235211B2 (en) 2019-03-19
CN107436808B (zh) 2023-07-07
KR20170121056A (ko) 2017-11-01
CN116820763A (zh) 2023-09-29
JP2022123018A (ja) 2022-08-23
TW202328915A (zh) 2023-07-16
CN107436808A (zh) 2017-12-05
KR102362826B1 (ko) 2022-02-11
US20170308408A1 (en) 2017-10-26
KR20220017985A (ko) 2022-02-14

Similar Documents

Publication Publication Date Title
JP7334396B2 (ja) 動的仮想システム・オン・チップのための方法および装置
US10789199B2 (en) Network traffic rate limiting in computing systems
US10382331B1 (en) Packet segmentation offload for virtual networks
US9954798B2 (en) Network interface card having embedded virtual router
US10263832B1 (en) Physical interface to virtual interface fault propagation
US9942148B1 (en) Tunneled packet aggregation for virtual networks
EP2928136B1 (en) Host network accelerator for data center overlay network
US10860374B2 (en) Real-time local and global datacenter network optimizations based on platform telemetry data
US9703743B2 (en) PCIe-based host network accelerators (HNAS) for data center overlay network
US7996569B2 (en) Method and system for zero copy in a virtualized network environment
US10637781B2 (en) Method for reliable data delivery between tunnel endpoints using BFD protocol
US11729098B2 (en) Methods and apparatus to manage a physical network to reduce network dependencies in a multi-fabric virtual network
US11277382B2 (en) Filter-based packet handling at virtual network adapters
US9485191B2 (en) Flow-control within a high-performance, scalable and drop-free data center switch fabric
US10877822B1 (en) Zero-copy packet transmission between virtualized computing instances
CN115733782A (zh) 用于数据包处理操作的双用户空间-内核空间数据路径
US11451643B2 (en) Managed traffic processing for applications with multiple constituent services
US20210224138A1 (en) Packet processing with load imbalance handling
TWI838190B (zh) 動態虛擬晶片上系統之方法、其處理器設備以及其非暫態電腦可讀取媒體
US20230388398A1 (en) Encoding of an implicit packet sequence number in a packet
US11477274B2 (en) Capability-aware service request distribution to load balancers