TW202211035A - 用於資源分配的系統、元件以及方法 - Google Patents
用於資源分配的系統、元件以及方法 Download PDFInfo
- Publication number
- TW202211035A TW202211035A TW110108539A TW110108539A TW202211035A TW 202211035 A TW202211035 A TW 202211035A TW 110108539 A TW110108539 A TW 110108539A TW 110108539 A TW110108539 A TW 110108539A TW 202211035 A TW202211035 A TW 202211035A
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- server
- switch
- cluster
- workload
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17331—Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/62—Details of cache specific to multiprocessor cache arrangements
- G06F2212/621—Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Mathematical Physics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
提供一種用於資源分配的系統、方法及設備。所述方法可包括:確定參數的與第一群集中的至少一個第一元件相關聯的第一值;基於參數的第一值確定臨限值;接收對第一元件處的工作負荷進行處理的請求;確定參數的與第二群集中的至少一個第二元件相關聯的第二值滿足臨限值;以及因應於滿足臨限值,將工作負荷的至少一部分路由至第二元件。
Description
本揭露一般而言是有關於快取同調性(cache coherency),且更具體而言,是有關於可組合同調元件之系統及方法。
[相關申請案的交叉參考]
本申請案主張優先於以下美國臨時申請案以及主張以下美國臨時申請案的權益:在2020年5月28日提出申請且名稱為「利用新穎的快取同調連接件擴展記憶體存取(EXTENDING MEMORY ACCESSES WITH NOVEL CACHE COHERENCE CONNECTS)」的第63/031,508號美國臨時申請案;以及在2020年5月28日提出申請且名稱為「為了計算效率而彙集伺服器記憶體資源(POOLING SERVER MEMORY RESOURCES FOR COMPUTE EFFICIENCY)」的第63/031,509號美國臨時申請案;以及在2020年8月20日提出申請且名稱為「具有快取同調記憶體及伺服器連結交換機場的系統(SYSTEM WITH CACHE-COHERENT MEMORY AND SERVER-LINKING SWITCH FIELD)」的第63/068,054號美國臨時申請案;以及在2020年7月28日提出申請且名稱為「具有新穎內連件的分解式記憶體架構(DISAGGREGATED MEMORY ARCHITECTURE WITH NOVEL INTERCONNECTS)」的第63/057,746號美國臨時申請案,所有所述美國臨時申請案的全部內容併入本案供參考。
一些伺服器系統可包括藉由網路協定連接的伺服器的集合。此種系統中的伺服器中的每一者可包括處理資源(例如,處理器)及記憶體資源(例如,系統記憶體)。在某些情況下,一個伺服器的處理資源存取另一伺服器的記憶體資源可能是有利的,且在將任一伺服器的處理資源最小化的同時進行此種存取可能是有利的。
因此,需要一種用於管理包括一或多個伺服器的系統中的記憶體資源的改善的系統及方法。
本先前技術部分中揭露的以上資訊僅用於增強對本揭露的背景的理解,且因此以上資訊可能包含不構成先前技術的資訊。
在各種實施例中,本文所述包括用於資源分配的系統、方法及設備。在一些實施例中,闡述一種用於資源分配的方法。所述方法可包括:確定參數的與第一群集中的至少一個第一元件相關聯的第一值;基於所述參數的所述第一值確定臨限值;接收對所述第一元件處的工作負荷進行處理的請求;確定所述參數的與第二群集中的至少一個第二元件相關聯的第二值滿足所述臨限值;以及因應於滿足所述臨限值,將所述工作負荷的至少一部分路由至所述第二元件。
在各種實施例中,所述方法可更包括:確定所述參數的與第二群集中的至少一個第二元件相關聯的所述第二值超過所述臨限值;以及因應於超過所述臨限值,維持所述第一元件處的所述工作負荷的至少一部分。在另一實施例中,所述第一群集或所述第二群集包括直接附接式記憶體架構、彙集式記憶體架構、分佈式記憶體架構、或分解式記憶體架構中的至少一者。在一些實施例中,所述直接附接式記憶體架構包括儲存類記憶體(storage class memory,SCM)元件、動態隨機存取記憶體(dynamic random-access memory,DRAM)元件、及基於DRAM的垂直反及元件中的至少一者。在另一實施例中,所述彙集式記憶體架構包括快取同調加速器元件。在另一實施例中,所述分佈式記憶體架構包括與快速周邊組件互連(Peripheral Component Interconnect Express,PCIe)互連件進行連接的快取同調元件。在一些實施例中,所述分解式記憶體架構包括機箱(chassis)中的在實體上群集化的記憶體及加速器擴展。
在各種實施例中,所述方法可更包括:基於所述工作負荷的預計記憶體使用量、所述第一值及所述第二值來計算得分;以及基於所述得分將所述工作負荷的至少一部分路由至所述第二元件。在另一實施例中,所述快取同調協定包括CXL協定或GenZ協定中的至少一者,且所述第一群集及所述第二群集藉由PCIe結構進行耦合。在一個實施例中,所述資源包括記憶體資源或計算資源中的至少一者。在另一實施例中,所述效能參數包括功率特性、單位能量效能特性、遠端記憶體容量、及直接記憶體容量中的至少一者。在一些實施例中,所述方法可包括向主機呈現至少所述第二元件。
類似地,進一步揭露出用於實行與上述實質上相同或類似的操作的元件及系統。
因此,可實施本文中闡述的標的的特定實施例,以達成以下優點中的一或多個優點。減少網路延遲,且改善網路穩定性及運行資料傳輸速率,且繼而改善使用者體驗。降低與對網路流量(network traffic)、網路維護、網路升級、及/或類似項進行路由相關聯的成本。此外,在一些態樣中,所揭露的系統可用於降低網路上的元件的功耗及/或頻寬,且可用於提高元件之間的通訊的速度及/或效率。
本文中闡述的標的一或多個實施例的細節在附圖及以下說明中進行陳述。根據說明、圖式及申請專利範圍,本標的的其他特徵、態樣及優點將變得顯而易見。
現在將在下文中參照附圖更全面地闡述本揭露的各種實施例,在附圖中示出一些實施例,但非所有實施例。實際上,本揭露可以許多不同的形式來實施且不應被解釋為限制於本文中陳述的實施例;相反,提供該些實施例是為了使本揭露滿足適用的法律要求。除非另有指示,否則用語「或」在本文中以替代及結合兩種意義使用。用語「例示性的」及「示例性的」被用作不具有品質水準指示的實例。相同的編號始終指代相同的部件。所述圖中的每一者中的箭頭繪示出雙向資料流及/或雙向資料流能力。用語「路徑」、「途徑」及「路線」在本文中可互換使用。
本揭露的實施例可以各種方式(包括作為包括製造物品的電腦程式產品)實施。電腦程式產品可包括儲存應用、程式、程式組件、腳本、源代碼、程式代碼、目標代碼、位元組代碼、編譯代碼、解釋代碼、機器代碼、可執行指令、及/或類似物(本文中亦稱為可執行指令、用於執行的指令、電腦程式產品、程式代碼、及/或類似本文中可互換使用的用語)的非暫時性電腦可讀取儲存媒體。此種非暫時性電腦可讀取儲存媒體包括所有電腦可讀取媒體(包括揮發性媒體及非揮發性媒體)。
在一個實施例中,非揮發性電腦可讀取儲存媒體可包括軟碟、軟性碟、硬碟、固態儲存體(solid-state storage,SSS)(例如固態驅動器(solid-state drive,SSD))、固態卡(solid state card,SSC)、固態組件(solid state component,SSM)、企業快閃驅動器(enterprise flash drive)、磁帶或任何其他非暫時性磁性媒體、及/或類似物。非揮發性電腦可讀取儲存媒體亦可包括打孔卡(punch card)、紙帶、光學標記片(optical mark sheet)(或具有孔洞圖案或其他光學可辨識記號的任何其他實體媒體)、光盤唯讀記憶體(compact disc read only memory,CD-ROM)、可重寫光盤(compact disc-rewritable,CD-RW)、數位多功能盤(digital versatile disc,DVD)、藍光盤(Blu-ray disc,BD)、任何其他非暫時性光學媒體、及/或類似物。此種非揮發性電腦可讀取儲存媒體亦可包括唯讀記憶體(read-only memory,ROM)、可程式化唯讀記憶體(programmable read-only memory,PROM)、可抹除可程式化唯讀記憶體(erasable programmable read-only memory,EPROM)、電性可抹除可程式化唯讀記憶體(electrically erasable programmable read-only memory,EEPROM)、快閃記憶體(例如串列、反及、反或、及/或類似物)、多媒體記憶卡(multimedia memory card,MMC)、安全數位(secure digital,SD)記憶卡、智慧媒體卡、緊湊快閃(CompactFlash,CF)卡、記憶棒、及/或類似物。此外,非揮發性電腦可讀取儲存媒體亦可包括導電橋接隨機存取記憶體(conductive-bridging random access memory,CBRAM)、相變隨機存取記憶體(phase-change random access memory,PRAM)、鐵電隨機存取記憶體(ferroelectric random-access memory,FeRAM)、非揮發性隨機存取記憶體(non-volatile random-access memory,NVRAM)、磁阻式隨機存取記憶體(magnetoresistive random-access memory,MRAM)、電阻式隨機存取記憶體(resistive random-access memory,RRAM)、矽-氧化物-氮化物-氧化物-矽記憶體(Silicon-Oxide-Nitride-Oxide-Silicon memory,SONOS)、浮置接面閘極隨機存取記憶體(floating junction gate random access memory,FJG RAM)、馬陸(Millipede)記憶體、跑道記憶體(racetrack memory)、及/或類似物。
在一個實施例中,揮發性電腦可讀取儲存媒體可包括隨機存取記憶體(random access memory,RAM)、動態隨機存取記憶體(dynamic random access memory,DRAM)、靜態隨機存取記憶體(static random access memory,SRAM)、快速頁面模式動態隨機存取記憶體(fast page mode dynamic random access memory,FPM DRAM)、擴展資料輸出動態隨機存取記憶體(extended data-out dynamic random access memory,EDO DRAM)、同步動態隨機存取記憶體(synchronous dynamic random access memory,SDRAM)、雙倍資料速率同步動態隨機存取記憶體(double data rate synchronous dynamic random access memory,DDR SDRAM)、雙倍資料速率類型二同步動態隨機存取記憶體(double data rate type two synchronous dynamic random access memory,DDR2 SDRAM)、雙倍資料速率類型三同步動態隨機存取記憶體(double data rate type three synchronous dynamic random access memory,DDR3 SDRAM)、蘭巴斯(Rambus)動態隨機存取記憶體(Rambus dynamic random access memory,RDRAM)、雙電晶體RAM(Twin Transistor RAM,TTRAM)、閘流體RAM(Thyristor RAM,T-RAM)、零位電容器(Zero-capacitor,Z-RAM)、蘭巴斯行記憶體組件(Rambus in-line memory component,RIMM)、雙行記憶體組件(dual in-line memory component,DIMM)、單行記憶體組件(single in-line memory component,SIMM)、視訊隨機存取記憶體(video random access memory,VRAM)、快取記憶體(包括各種層級)、快閃記憶體、暫存器記憶體、及/或類似物。應理解,在實施例被闡述為使用電腦可讀取儲存媒體的情況下,除了上述電腦可讀取儲存媒體之外,可替代或使用其他類型的電腦可讀取儲存媒體。
應理解,本揭露的各種實施例亦可被實施成方法、設備、系統、計算元件、計算實體、及/或類似物。如此一來,本揭露的實施例可採取執行儲存於電腦可讀取儲存媒體上的指令以實行某些步驟或操作的設備、系統、計算元件、計算實體、及/或類似物的形式。因此,本揭露的實施例亦可採取完全硬體實施例、完全電腦程式產品實施例、及/或包括電腦程式產品與實行特定步驟或操作的硬體的組合的實施例的形式。
以下參照方塊圖及流程圖例示闡述本揭露的實施例。因此,應理解,方塊圖的每一方塊及流程圖例示可以電腦程式產品、完全硬體實施例、硬體與電腦程式產品的組合、及/或設備、系統、計算元件、計算實體、及/或類似物的形式來實施,所述電腦程式產品、完全硬體實施例、硬體與電腦程式產品的組合、及/或設備、系統、計算元件、計算實體、及/或類似物對用於執行的電腦可讀取儲存媒體施行指令、操作、步驟、及類似可互換使用的詞語(例如,可執行指令、用於執行的指令、程式代碼、及/或類似物)。可依序實行例如,對代碼的檢索、加載及執行,進而使得一次檢索、加載及執行一個指令。在一些示例實施例中,可並行地實行檢索、加載及/或執行,進而使得一起檢索、加載及/或執行多個指令。因此,此種實施例可產生實行方塊圖及流程圖例示中規定的步驟或操作的特定配置的機器。因此,方塊圖及流程圖例示支援用於實行規定指令、操作或步驟的實施例的各種組合。
在一些態樣中,隨著資料需求的增加,網路計算及儲存可面臨一些問題。具體而言,超大規模工作負荷要求越來越高,此乃因工作負荷除了具有高頻寬分配需要之外,亦可表現出記憶體及輸入/輸出(input/output,IO)延遲方面的多樣性。此外,一些現有系統在不重新配置硬體機架系統的條件下可降低資源彈性,此可能導致效率低下,進而可妨礙資料處理及儲存要求。此外,計算資源與記憶體資源的耦合越來越緊密,並且對其中一種資源的要求增加可影響對另一資源的要求。此外,整個行業正面臨著可行的分佈式共享記憶體及大的位址空間系統的短缺。在一些態樣中,固定資源可增加擁有成本(例如,對於基於資料中心的環境),並且亦可限制子系統的峰值效能。在一些態樣中,在此種環境中使用的硬體可能具有不同的更換週期及相關聯的時間線,此可能使此種系統的更新更加複雜。因此,需要改善資源共享並與網路計算系統中的工作負荷相匹配。
在一些,快取同調協定(例如計算快速鏈路(compute express link,CXL))可使得能夠達成記憶體擴展及同調加速器。在各種實施例中,所揭露的系統可使用快取同調協定(例如CXL)來使得能夠在適應需要獨特配置的不同工作負荷的同時達成一類記憶體系統及加速器。因此,所揭露的系統可使得能夠藉由利用結構(fabric)及架構來達成可組合的快取同調(例如,CXL)記憶體資源及加速器資源,所述結構及架構為例如,在資料中心的一或多個群集中跨機架運行的每一工作負荷呈現系統視圖。在一些態樣中,所揭露的系統可用於將快取同調擴展至單個伺服器之外,基於工作負荷需求提供異構機架的管理,並提供資源的可組合性。此外,在一些實例中,藉由PCIe結構進行的CXL可用作另一協定(例如藉由結構進行的快速非揮發性記憶體(Non-Volatile Memory express over fabric,NVMeoF))的對應方(counterpart),所述對應方可用於遠端I/O元件的可組合性。如本文中所使用,可組合可指給定元件(例如,特定群集中的快取同調賦能元件)可自網路的不同部分(例如,第二群集中的至少一個其他快取同調賦能元件)請求及/或獲得資源(例如,記憶體資源、計算資源及/或網路資源),例如以執行工作負荷的至少一部分。在一些實施例中,如本文中使用的可組合性可包括將實體計算資源及虛擬計算資源、儲存資源、以及結構資源的流體池(fluid pool)用於任何適合的配置中,以運行任何應用或工作負荷。
在各種實施例中,所揭露的系統可包括一或多個架構組件,所述一或多個架構組件包括具有可被配置以執行與控制平面相關聯的各種操作的一或多個處理器(例如,精簡指令集計算-V(Reduced instruction set computing-V,RISC-V)處理器)。此外,所揭露的系統可使得能夠使用將在以下進一步論述的一或多個同質的快取同調CXL資源池。具體而言,所揭露的系統可以管理計算元件為特徵,以展示及利用快取同調資源的效能、容量及加速特性,供各種網路元件使用。具體而言,管理計算元件可確定與管理計算元件在其中進行操作的系統相關聯的一或多個參數,且基於所述參數將工作負荷路由至不同的群集。
在各種實施例中,所揭露的系統可使得能夠使用多個同質的資源池,每一池專用於特定的快取同調架構。具體而言,所揭露的系統可使用類型A群集、類型B群集、類型C群集及類型D群集,類型A群集可指具有直接附接式記憶體擴展元件(SCM、DRAM、DRAM-低延遲垂直反及(ZNAND)混合)的伺服器的集合,類型B群集可指CXL類型2投訴同調加速器的集合,類型C群集可包括以具有後門(backdoor)PCIe互連件的分佈式記憶體系統架構連接的CXL元件,由此製程共享相同的位址空間,類型D群集包括相同結構(機箱)中的實體群集記憶體及加速器擴展。
在各種實施例中,所揭露的包括管理計算元件的系統可以智慧型元件架構為特徵。具體而言,所揭露的系統可以插入至快取同調介面(例如,CXL/PCIe5介面)上的元件為特徵且可實施各種快取及記憶體協定(例如,基於類型2元件的CXL.cache及CXL.memory協定)。此外,在一些實例中,所述元件可包括可被配置以將遠端同調元件呈現為本地系統的部分的、使用快取同調協定(例如,CXL.IO協定)進行協商的可程式化控制器或處理器(例如,RISC-V處理器)。
在各種實施例中,所揭露的系統可使得能夠達成群集層級的基於效能的控制及管理能力,由此可基於遠端架構配置及元件效能、功率特性、及/或類似物自動地對工作負荷進行路由(例如,藉由演算法方式及/或基於機器學習的方式)。在一些實例中,所揭露的系統可至少部分地藉由應用專用積體電路(application specific integrated circuit,ASIC)電路、現場可程式化閘陣列(field-programmable gate array,FPGA)單元、及/或類似物來程式化。此外,此種元件可實施基於人工智慧(artificial intelligence,AI)的技術(例如,基於機器學習的方法)來對工作負荷進行路由,如本文示出及闡述。此外,所揭露的系統可使用管理計算實體來基於預定標準(例如,每單位貨幣或功率的最佳效能)實行發現及/或工作負荷分區(workload partitioning)及/或資源綁定。此外,管理計算實體可基於系統的各種參數來實行此種操作,所述各種參數包括但不限於基於快取同調協定的(例如,基於CXL的)往返時間、對元件是處於主機偏置亦或元件偏置的判斷、基於快取同調協定的(例如,基於CXL的)交換機層次(hierarchy)及/或主機上游埠至元件下游埠的綁定、基於快取同調協定的(例如,基於CXL的)交換機結構管理器配置、基於快取同調協定的(例如,基於CXL的)協定封包或實體媒體封包(例如,CXL.IO或PCIe干預大容量4KB封包)、網路延遲、基於快取同調協定的(例如,基於CXL的)記憶體技術(例如,記憶體類型)、其組合、及/或類似物。
在各種實施例中,管理計算實體可在機架及/或群集層級處進行操作及/或可至少部分地在作為給定群集架構(例如,類型A群集、類型B群集、類型C群集及/或類型D群集)的部分的給定元件(例如,快取同調賦能元件)內進行操作。在各種實施例中,給定群集架構內的元件可實行管理計算實體的操作的第一部分,而管理計算實體的操作的另一部分可在機架上及/或群集層級處實施。在一些實施例中,操作的所述兩個部分可以協調的方式實行(例如,群集中的元件向在機架上及/或群集層級處實施的管理計算實體發送協調訊息及自所述管理計算實體接收協調訊息)。在一些實施例中,操作的與群集中的元件相關聯的第一部分可包括但不限於用於確定元件或群集的當前或未來資源需要、藉由元件或群集通告當前或未來資源可用性、將與在元件或群集層級處運行的演算法相關聯的某些參數同步、訓練與元件或機架/群集的操作相關聯的一或多個機器學習模組、對與對工作負荷進行路由相關聯的對應資料進行記錄、其組合、及/或類似操作等操作。
快速周邊組件互連(PCIe)可指可具有相對高且可變的延遲的電腦介面,所述相對高且可變的延遲可能會限制電腦介面在建立通往記憶體的連接方面的有用性。CXL是用於經由PCIe 5.0進行通訊的開放的行業標準,所述行業標準可提供固定的、相對短的封包大小,且因此可能夠提供相對高的頻寬及相對低的固定延遲。如此一來,CXL可能夠支援快取同調且CXL可非常適於建立通往記憶體的連接。CXL可進一步用於提供主機與伺服器中的加速器、記憶體元件及網路介面電路(或「網路介面控制器」或「網路介面卡」(network interface card,NIC))之間的連接。
例如CXL等快取同調協定亦可用於例如純量(scalar)、向量(vector)及緩衝記憶體系統中的異質處理(heterogeneous processing)。CXL可用於利用通道、重定時器、系統的實體(Physical,PHY)層、介面的邏輯態樣、以及來自PCIe 5.0的協定來提供快取同調介面。CXL事務處理層(transaction layer)可包括在單個鏈路上同時運行的三個多工子協定且可被稱為CXL.io、CXL.cache及CXL.memory。CXL.io可包含I/O語義,I/O語義可類似於PCIe。CXL.cache可包含快取語義,且CXL.memory可包含記憶體語義;快取語義及記憶體語義二者可為可選的。如PCIe那般,CXL可支援:(i)x16、x8及x4的原始寬度(native width),所述原始寬度可能是可分區的;(ii)32千兆傳輸/秒的資料速率,所述資料速率可降至8千兆傳輸/秒及16千兆傳輸/秒、128位元/130位元;(iii)300瓦特(x16連接件中為75瓦特);以及(iv)即插即用(plug and play)。為支援即插即用,PCIe或CXL元件鏈路中的任一者可以PCIe開始第1代訓練、協商CXL、完成第1代至第5代訓練、且然後開始CXL事務處理。
在一些實施例中,在包括藉由網路連接於一起的多個伺服器的系統中,使用通往聚集或「彙集(pool)」的記憶體(例如,一定數量的記憶體,包括連接於一起的多個記憶體胞元)的CXL連接可提供各種優點,如以下進一步詳細論述。舉例而言,除了為CXL封包提供封包交換功能之外,具有又一些能力的CXL交換機(本文中稱為「能力增強型CXL交換機(enhanced capability CXL switch)」)可用於將聚集的記憶體連接至一或多個中央處理單元(central processing unit,CPU)(或「中央處理電路」)以及一或多個網路介面電路(其可具有增強的能力)。此種配置可使得能夠達成:(i)聚集的記憶體包括具有不同特性的各種類型的記憶體;(ii)能力增強型CXL交換機將聚集的記憶體虛擬化,並且將不同特性(例如,存取頻率)的資料儲存於適當類型的記憶體中;(iii)能力增強型CXL交換機支援遠端直接記憶體存取(remote direct memory access,RDMA),進而使得RDMA可在很少或沒有伺服器的處理電路參加的情況下實行。如本文中所使用,將記憶體「虛擬化」意指在處理電路與記憶體之間實行記憶體位址轉換。
CXL交換機可進行:(i)藉由單級交換(single level switching)支援記憶體及加速器分解;(ii)使資源能夠基於需求在域之間離線(off-lined)及在線(on-lined),此可使得能夠達成跨域的時間多工(time-multiplexing);以及(iii)支援下游埠的虛擬化。CXL可用於實施聚集的記憶體,此可使得能夠達成一對多及多對一交換(例如,其可能夠(i)將多個根埠連接至一個端點,(ii)將一個根埠連接至多個端點,或者(iii)將多個根埠連接至多個端點),其中在一些實施例中,聚集元件被分區成多個邏輯元件,所述多個邏輯元件各自具有相應的邏輯元件識別符(logical device identifier,LD-ID)。在此種實施例中,實體元件(physical device)可被分區成多個邏輯元件,所述多個邏輯元件各自對於相應的發起者而言是可見的。元件可具有一個實體功能(physical function,PF)及多個(例如,16個)隔離的邏輯元件。在一些實施例中,邏輯元件的數目(例如,分區的數目)可能是受限的(例如,限制至16個),且亦可存在一個控制分區(其可為用於控制元件的實體功能)。
在一些實施例中,結構管理器(fabric manager)可用於:(i)實施元件發現及虛擬CXL軟體創建;以及(ii)將虛擬埠綁定至實體埠。此種結構管理器可藉由經由系統管理匯流排(System Management Bus,SMBus)邊帶進行的連接而進行操作。結構管理器可以硬體、軟體、韌體、或其組合來實施,且結構管理器可駐留於例如主機中、記憶體模組135中的一者中、或能力增強型快取同調交換機130中、或網路中的其他地方。在一些實施例中,快取同調交換機可為CXL交換機130。結構管理器可發出命令,所述命令包括經由邊帶匯流排或經由PCIe樹發出的命令。
參照圖1A,在一些實施例中,伺服器系統包括藉由架頂(ToR)以太網路交換機110連接於一起的多個伺服器105。儘管此交換機被闡述為使用以太網路協定,但可使用任何其他適合的網路協定。每一伺服器包括一或多個處理電路115,所述一或多個處理電路115各自連接至(i)系統記憶體120(例如,雙倍資料速率(版本4)(Double Data Rate (version 4),DDR4)記憶體或任何其他適合的記憶體)、(ii)一或多個網路介面電路125、以及(iii)一或多個CXL記憶體模組135。處理電路115中的每一者可為所儲存程式處理電路,例如中央處理單元(CPU(例如,x86 CPU))、圖形處理單元(GPU)或高階RISC機器(Advanced RISC Machine,ARM)處理器。在一些實施例中,網路介面電路125可嵌置於記憶體模組135中的一者中(例如,嵌置於與記憶體模組135中的所述一者相同的半導體晶片上,或者嵌置於與記憶體模組135中的所述一者相同的模組中),或者網路介面電路125可與記憶體模組135分開封裝。
在各種實施例中,管理計算實體102(將在以下詳細闡述)可被配置以包括處理元件(例如,處理器、FPGA、ASIC、控制器等),所述處理元件可監測與網路的任何部分相關聯的一或多個參數(例如,以太網路流量、資料中心參數、ToR以太網路交換機110參數、與伺服器105相關聯的參數、與網路介面電路(NIC) 125相關聯的參數、與一或多個CXL記憶體模組135相關聯的參數、其組合、及/或類似參數),以將工作負荷及/或工作負荷的部分路由至網路的不同部分,包括圖1A至圖1G所示的任何適合的部件,如本文所述。此外,如上所述,在各種實施例中,所揭露的系統可使得能夠達成集群層級的基於效能的控制及管理能力,由此可基於遠端架構配置及元件效能、功率特性、及/或類似物自動地對工作負荷進行路由(例如,藉由演算法方式及/或基於機器學習的方式)。在一些實例中,所揭露的系統可至少部分地藉由ASIC電路、FPGA單元、及/或類似物來程式化。此外,此種元件可實施基於AI的技術(例如,基於機器學習的方法)來對工作負荷進行路由,如本文示出及闡述。此外,所揭露的系統可使用管理計算實體來基於預定標準(例如,每單位貨幣或功率的最佳效能)實行發現及/或工作負荷分區及/或資源綁定。此外,管理計算實體可基於系統的各種參數來實行此種操作,所述各種參數包括但不限於基於快取同調協定的(例如,基於CXL的)往返時間、對元件是處於主機偏置亦或元件偏置的判斷、基於快取同調協定的(例如,基於CXL的)交換機層次及/或主機上游埠至元件下游埠的綁定、基於快取同調協定的(例如,基於CXL的)交換機結構管理器配置、基於快取同調協定的(例如,基於CXL的)協定封包或實體媒體封包(例如,CXL.IO或PCIe干預大容量4KB封包)、網路延遲、基於快取同調協定的(例如,基於CXL的)記憶體技術(例如,記憶體類型)、其組合、及/或類似物。
如本文使用的,「記憶體模組」是包括一或多個記憶體晶粒的封裝(例如,包括印刷電路板(printed circuit board)及連接至印刷電路板的組件的封裝,或者包括印刷電路板的外殼(enclosure)),每一記憶體晶粒包括多個記憶體胞元。每一記憶體晶粒或一組記憶體晶粒的群組中的每一者可處於封裝(例如,環氧模製化合物(epoxy mold compound,EMC)封裝)中,所述封裝焊接至記憶體模組的印刷電路板(或藉由連接件連接至記憶體模組的印刷電路板)。記憶體模組135中的每一者可具有CXL介面且可包括控制器137(例如,FPGA、ASIC、處理器、及/或類似物),控制器137用於在CXL封包與記憶體晶粒的記憶體介面(例如適合於記憶體模組135中的記憶體的記憶體技術的訊號)之間進行轉換。如本文中所使用,記憶體晶粒的「記憶體介面」是記憶體晶粒的技術所固有的介面,例如,在動態隨機存取記憶體(DRAM)的情形中,例如記憶體介面可為字元線及位元線。記憶體模組亦可包括控制器137,控制器137可提供增強的能力,如以下進一步詳細闡述。每一記憶體模組135的控制器137可經由快取同調介面(例如經由CXL介面)連接至處理電路115。控制器137亦可有利於繞過處理電路115進行的不同伺服器105之間的資料傳輸(例如,RDMA請求)。ToR以太網路交換機110及網路介面電路125可包括RDMA介面,以有利於不同伺服器上的CXL記憶體元件之間的RDMA請求(例如,ToR以太網路交換機110及網路介面電路125可提供藉由會聚的以太網路進行的RDMA(RDMA over Converged Ethernet,RoCE)、無限頻寬(Infiniband)及網際網路廣域RDMA協定(Internet Wide Area RDMA Protocol,iWARP)封包的硬體卸載或硬體加速)。
系統中的CXL互連可符合快取同調協定(例如CXL 1.1標準,或者在一些實施例中符合CXL 2.0標準、符合CXL的未來版本)、或者任何其他適合的協定(例如,快取同調協定)。如圖所示,記憶體模組135可直接附接至處理電路115,且架頂以太網路交換機110可用於將系統按比例縮放至更大的大小(例如,具有更大數目的伺服器105)。
在一些實施例中,每一伺服器可填充有多個直接附接的CXL附接的記憶體模組135,如圖1A中所示。每一記憶體模組135可向主機的基本輸入/輸出系統(Basic Input/Output System,BIOS)展示一組基本位址暫存器(base address register,BAR)作為記憶體範圍。記憶體模組135中的一或多者可包括韌體,以透明地管理記憶體模組135中的所述一或多者的位於主機操作系統(operating system,OS)映射後面的記憶體空間。記憶體模組135中的每一者可包括記憶體技術中的一者或組合,所述記憶體技術包括例如(但不限於)動態隨機存取記憶體(DRAM)、反及(not-AND,NAND)快閃、高頻寬記憶體(High Bandwidth Memory,HBM)、及低功率雙倍資料速率同步動態隨機存取記憶體(Low-Power Double Data Rate Synchronous Dynamic Random Access Memory,LPDDR SDRAM)技術,且記憶體模組135中的每一者亦可包括快取控制器或用於不同技術記憶體元件(用於對不同技術的若干記憶體元件進行組合的記憶體模組135)的單獨的相應分離控制器(split controller)。每一記憶體模組135可包括不同的介面寬度(x4至x16),且可根據例如以下各種相關的形狀因數(form factor)中的任意者來構造:U.2、M.2、半高半長(half height, half length,HHHL)、全高半長(full height, half length,FHHL)、E1.S、E1.L、E3.S、及E3.H。
在一些實施例中,如上所述,能力增強型CXL交換機130包括FPGA(或ASIC)控制器137且提供CXL封包的交換之外的附加特徵。能力增強型CXL交換機130的控制器137亦可用作記憶體模組135的管理元件且有助於主機控制平面處理,且控制器137可使得能夠達成豐富的控制語義及統計。控制器137可包括附加的「後門」(例如,100千兆以太網路(gigabit Ethernet,GbE))網路介面電路125。在一些實施例中,控制器137向處理電路115呈現為CXL類型2元件,此使得能夠在接收到遠端寫入請求時向處理電路115發出快取無效指令。在一些實施例中,啟用資料直接I/O(Data Direct I/O,DDIO)技術,且首先將遠端資料拉至處理電路的末級快取(last level cache,LLC),且稍後將遠端資料寫入記憶體模組135(自快取)。如本文中所使用,「類型2」CXL元件是可發起事務處理且實施可選的同調快取及主機管理的元件記憶體的元件,並且對於其適用的事務處理類型包括所有CXL.cache及所有CXL.memory事務處理。
如上所述,記憶體模組135中的一或多者可包括持續性記憶體或「持續性儲存體」(即,當外部電源斷開連接時其內資料不會丟失的儲存體)。若記憶體模組135被呈現為持續性元件,則當請求持續性儲存體時,記憶體模組135的控制器137可藉由處理電路115管理持續性域,例如,控制器137可在持續性儲存體中儲存被識別的資料(例如,作為應用對於對應操作系統功能進行調用的結果)。在此種實施例中,軟體應用程式介面(application programming interface,API)可將快取及資料刷新至持續性儲存體。
在一些實施例中,啟用自網路介面電路125至記憶體模組135的直接記憶體傳送。此種傳送可為用於分佈式系統中的快速通訊的通往遠端記憶體的單向傳送。在此種實施例中,記憶體模組135可向系統中的網路介面電路125展示硬體細節,以使得能夠達成更快的RDMA傳送。在此種系統中,端視處理電路115的資料直接I/O(DDIO)是啟用亦或禁用而定,可能發生兩種情況。DDIO可使得能夠達成以太網路控制器或以太網路轉接器與處理電路115的快取之間的直接通訊。若啟用處理電路115的DDIO,則傳送的目標可為處理電路的末級快取,資料隨後可自所述末級快取被自動刷新至記憶體模組135。若禁用處理電路115的DDIO,則記憶體模組135可在元件偏置模式下進行操作,以強制目的地記憶體模組135直接接收存取(在不使用DDIO的條件下)。可採用具有主通道轉接器(host channel adapter,HCA)、緩衝器及其他處理的能夠進行RDMA的網路介面電路125來達成此種RDMA傳送,此可繞過在RDMA傳送的其他模式中可能存在的目標記憶體緩衝器傳送。舉例而言,在此種實施例中,可避免使用回彈緩衝器(bounce buffer)(例如,當記憶體中的最終目的地在RDMA協定不支援的位址範圍內時,遠端伺服器中的緩衝器)。在一些實施例中,RDMA使用除以太網路之外的另一實體媒體選項(例如,用於被配置以處置其他網路協定的交換機)。可能啟用RDMA的伺服器間連接件的實例包括(但不限於)無限頻寬、藉由會聚的以太網路進行的RDMA(RoCE)(其使用以太網路使用者資料報協定(User Datagram Protocol,UDP))及iWARP(其使用傳輸控制協定/網際網路協定(transmission control protocol/Internet protocol,TCP/IP))。
圖1B示出類似於圖1A所示系統的系統,在圖1B中處理電路115藉由記憶體模組135連接至網路介面電路125。記憶體模組135及網路介面電路125位於擴展插座轉接器140上。每一擴展插座轉接器140可插入至伺服器105的母板上的擴展插座145,例如M.2連接件。如此一來,伺服器可為任何適合的(例如,行業標準)伺服器,所述伺服器藉由在擴展插座145中安裝擴展插座轉接器140來修改。在此種實施例中,(i)每一網路介面電路125可被整合至記憶體模組135中的相應的一個記憶體模組135中,或者(ii)每一網路介面電路125可具有PCIe介面(網路介面電路125可為PCIe端點(即,PCIe從元件)),進而使得每一網路介面電路125所連接的處理電路115(其可作為PCIe主元件或「根埠」進行操作)可藉由根埠至端點PCIe連接與每一網路介面電路125進行通訊,且記憶體模組135的控制器137可藉由同級間(peer-to-peer,P2P)PCIe連接與每一網路介面電路125進行通訊。
根據本發明的實施例,提供一種系統,所述系統包括第一伺服器,所述第一伺服器包括所儲存程式處理電路、第一網路介面電路及第一記憶體模組,其中:第一記憶體模組包括第一記憶體晶粒及控制器,所述控制器經由記憶體介面連接至第一記憶體晶粒、經由快取同調介面連接至所儲存程式處理電路、且連接至第一網路介面電路。在一些實施例中,第一記憶體模組更包括第二記憶體晶粒,第一記憶體晶粒包括揮發性記憶體,且第二記憶體晶粒包括持續性記憶體。在一些實施例中,持續性記憶體包括NAND快閃。在一些實施例中,控制器被配置以為持續性記憶體提供快閃轉換層。在一些實施例中,快取同調介面包括計算快速鏈路(CXL)介面。在一些實施例中,第一伺服器包括連接至第一伺服器的擴展插座的擴展插座轉接器,所述擴展插座轉接器包括第一記憶體模組及第一網路介面電路。在一些實施例中,第一記憶體模組的控制器藉由擴展插座連接至所儲存程式處理電路。在一些實施例中,擴展插座包括M.2插座。在一些實施例中,第一記憶體模組的控制器藉由同級間快速周邊組件互連(PCIe)連接而連接至第一網路介面電路。在一些實施例中,所述系統更包括第二伺服器、以及連接至第一伺服器及第二伺服器的網路交換機。在一些實施例中,網路交換機包括架頂(ToR)以太網路交換機。在一些實施例中,第一記憶體模組的控制器被配置以接收直接的遠端直接記憶體存取(RDMA)請求,且發送直接的RDMA響應。在一些實施例中,第一記憶體模組的控制器被配置以藉由網路交換機及第一網路介面電路接收直接的遠端直接記憶體存取(RDMA)請求,且藉由網路交換機及第一網路介面電路發送直接的RDMA響應。在一些實施例中,第一記憶體模組的控制器被配置以:自第二伺服器接收資料;將資料儲存於第一記憶體模組中;且向所儲存程式處理電路發送用於使快取列無效的命令。在一些實施例中,第一記憶體模組的控制器包括現場可程式化閘陣列(FPGA)或應用專用積體電路(ASIC)。根據本發明的實施例,提供一種用於在計算系統中實行遠端直接記憶體存取的方法,所述計算系統包括第一伺服器及第二伺服器,所述第一伺服器包括所儲存程式處理電路、網路介面電路及第一記憶體模組,所述第一記憶體模組包括控制器,所述方法包括:由第一記憶體模組的控制器接收直接的遠端直接記憶體存取(RDMA)請求;以及由第一記憶體模組的控制器發送直接的RDMA響應。在一些實施例中,計算系統更包括連接至第一伺服器及第二伺服器的以太網路交換機,且所述接收直接的RDMA請求包括藉由以太網路交換機接收直接的RDMA請求。在一些實施例中,所述方法更包括:由第一記憶體模組的控制器自所儲存程式處理電路接收針對第一記憶體位址的讀取命令;由第一記憶體模組的控制器將第一記憶體位址轉換成第二記憶體位址;以及由第一記憶體模組的控制器在第二記憶體位址處自第一記憶體模組檢索資料。在一些實施例中,所述方法更包括:由第一記憶體模組的控制器接收資料;由第一記憶體模組的控制器將資料儲存於第一記憶體模組中;以及由第一記憶體模組的控制器向所儲存程式處理電路發送用於使快取列無效的命令。根據本發明的實施例,提供一種系統,所述系統包括第一伺服器,所述第一伺服器包括所儲存程式處理電路、第一網路介面電路及第一記憶體模組,其中:所述第一記憶體模組包括第一記憶體晶粒及控制器構件,控制器構件經由記憶體介面連接至第一記憶體晶粒、經由快取同調介面連接至所儲存程式處理電路、且連接至第一網路介面電路。
參照圖1C,在一些實施例中,伺服器系統包括藉由架頂(ToR)以太網路交換機110連接於一起的多個伺服器105。每一伺服器包括一或多個處理電路115,所述一或多個處理電路115各自連接至(i)系統記憶體120(例如,DDR4記憶體)、(ii)一或多個網路介面電路125、以及(iii)能力增強型CXL交換機130。能力增強型CXL交換機130可連接至多個記憶體模組135。亦即,圖1C所示系統包括第一伺服器105,所述第一伺服器105包括所儲存程式處理電路115、網路介面電路125、快取同調交換機130及第一記憶體模組135。在圖1C所示系統中,第一記憶體模組135連接至快取同調交換機130,快取同調交換機130連接至網路介面電路125,且所儲存程式處理電路115連接至快取同調交換機130。
記憶體模組135可按類型、形狀因數、或技術類型(例如,DDR4、DRAM、LDPPR、高頻寬記憶體(HBM)、或NAND快閃、或其他持續性儲存體(例如,包含NAND快閃的固態驅動器(solid state drive,SSD)))進行分組。每一記憶體模組可具有CXL介面且包括介面電路,所述介面電路用於在CXL封包與適合於記憶體模組135中的記憶體的訊號之間進行轉換。在一些實施例中,該些介面電路改為處於能力增強型CXL交換機130中,且記憶體模組135中的每一者具有作為記憶體模組135中的記憶體的本地介面(native interface)的介面。在一些實施例中,能力增強型CXL交換機130被整合至記憶體模組135中(例如,與記憶體模組135整合於M.2形狀因數封裝中,或者與記憶體模組135的其他組件整合至單個積體電路中)。
ToR以太網路交換機110可包括介面硬體,以有利於不同伺服器上的聚集的記憶體元件之間的RDMA請求。能力增強型CXL交換機130可包括一或多個電路(例如,它可包括FPGA或ASIC),以繞過處理電路115而進行以下操作:(i)基於工作負荷將資料路由至不同的記憶體類型;(ii)將主機位址虛擬化為元件位址;及/或(iii)有利於不同伺服器之間的RDMA請求。
記憶體模組135可位於擴展盒(expansion box)中(例如,位於與容納外殼的主板的外殼相同的機架中),擴展盒可包括預定數目(例如,多於20個或多於100個)記憶體模組135,所述預定數目的記憶體模組135各自插入適合的連接件中。模組可處於M.2形狀因數,且連接件可為M.2連接件。在一些實施例中,伺服器之間的連接是經由除以太網路之外的不同的網路進行的,例如,所述連接可為無線連接,例如無線保真(wireless fidelity,WiFi)或第五代(Fifth Generation,5G)連接。每一處理電路可為x86處理器或另一處理器,例如ARM處理器或GPU。上面CXL鏈路被實例化的PCIe鏈路可為PCIe 5.0或另一版本(例如,較早的版本或較晚的(例如,未來)版本(例如,PCIe 6.0))。在一些實施例中,代替或除了CXL之外在系統中使用不同的快取同調協定,且代替或除了能力增強型CXL交換機130之外可使用不同的快取同調交換機。此種快取同調協定可為另一種標準協定或標準協定的快取同調變體(以與其中CXL是PCIe 5.0的變體的方式相似的方式)。標準協定的實例包括但不限於非揮發性雙行記憶體模組(版本P)(non-volatile dual in-line memory module (version P),NVDIMM-P)、加速器快取同調互連(Cache Coherent Interconnect for Accelerator,CCIX)及開放同調加速器處理器介面(Open Coherent Accelerator Processor Interface,OpenCAPI)。
系統記憶體120可包括例如DDR4記憶體、DRAM、HBM或LDPPR記憶體。記憶體模組135可被分區或包含快取控制器,以處置多種記憶體類型。記憶體模組135可處於不同的形狀因數,其實例包括但不限於HHHL、FHHL、M.2、U.2、夾層卡(mezzanine card)、子卡、E1.S、E1.L、E3.L及E3.S。
在一些實施例中,系統實施包括多個伺服器的聚集式架構,其中每一伺服器聚集有多個附接有CXL的記憶體模組135。記憶體模組135中的每一者可包含多個分區,可向多個處理電路115分開展示所述多個分區作為記憶體元件。能力增強型CXL交換機130的每一輸入埠可獨立地存取能力增強型CXL交換機130的多個輸出埠及與能力增強型CXL交換機130的所述多個輸出埠連接的記憶體模組135。如本文中所使用,能力增強型CXL交換機130的「輸入埠」或「上游埠」是連接至(或適合於連接至)PCIe根埠的埠,且能力增強型CXL交換機130的「輸出埠」或「下游埠」是連接至(或適合於連接至)PCIe端點的埠。如在圖1A所示實施例的情形中,每一記憶體模組135可向主機BIOS展示一組基本位址暫存器(BAR)作為記憶體範圍。記憶體模組135中的一或多者可包括韌體,以透明地管理記憶體模組135中的所述一或多者的位於主機OS映射後面的記憶體空間。
在一些實施例中,如上所述,能力增強型CXL交換機130包括FPGA(或ASIC)控制器137,且提供CXL封包的交換之外的附加特徵。舉例而言,控制器137可(如上所述)將記憶體模組135虛擬化(即,作為轉換層操作)(所述記憶體模組135在處理電路側位址(或「處理器側」位址,即,包括在由處理電路115發出的記憶體讀取及寫入命令中的位址)與記憶體側位址(即,能力增強型CXL交換機130用來對記憶體模組135中的儲存位置進行尋址的位址)之間轉換),藉此屏蔽記憶體模組135的實體位址且呈現虛擬聚集的記憶體。能力增強型CXL交換機130的控制器137亦可用作記憶體模組135的管理元件且有利於主機控制平面處理。控制器137可在沒有處理電路115參與的條件下透明地移動資料且相應地更新記憶體映射(或「位址轉換表」),進而使得後續存取如預期那般運行。控制器137可包含交換機管理元件,所述交換機管理元件(i)可在運行時間期間適當地將上游連接及下游連接綁定及解除綁定、以及(ii)可使得能夠達成與進出記憶體模組135的資料傳送進出相關聯的豐富的控制語義及統計。控制器137可包括用於連接至其他伺服器105或其他聯網裝備的附加的「後門」100千兆以太網路或其他網路介面電路125(除了用於連接至主機的網路介面之外)。在一些實施例中,控制器137向處理電路115呈現為類型2元件,此使得能夠在接收到遠端寫入請求時向處理電路115發出快取無效指令。在一些實施例中,啟用DDIO技術,且首先將遠端資料拉至處理電路115的末級快取(LLC),且稍後將遠端資料寫入記憶體模組135(自快取)。
如上所述,記憶體模組135中的一或多者可包括持續性記憶體。若記憶體模組135被呈現為持續性元件,則當請求持續性儲存體時,能力增強型CXL交換機130的控制器137可藉由處理電路115管理持續性域(例如,控制器137可在持續性儲存體中儲存被識別(例如,使用對應的操作系統功能)的資料)。在此種實施例中,軟體API可將快取及資料刷新至持續性儲存體。
在一些實施例中,通往記憶體模組135的直接記憶體傳送可以與以上針對圖1A及圖1B所示實施例闡述的方式相似的方式來實行,其中由記憶體模組135的控制器實行的操作是由能力增強型CXL交換機130的控制器137實行。
如上所述,在一些實施例中,記憶體模組135被組織成群組,例如,組織成一個記憶體密集型群組、另一HBM集中型(HBM heavy)群組、另一密度及效能有限的群組、以及另一容量密集型群組。此些群組可具有不同的形狀因數或基於不同的技術。能力增強型CXL交換機130的控制器137可基於例如工作負荷、標誌或服務品質(quality of service,QoS)而智慧地路由資料及命令。對於讀取請求,可能不存在基於此些因素的路由。
能力增強型CXL交換機130的控制器137亦可(如上所述)將處理電路側位址及記憶體側位址虛擬化,進而使得能力增強型CXL交換機130的控制器137能夠確定資料將被儲存於何處。能力增強型CXL交換機130的控制器137可基於能力增強型CXL交換機130可自處理電路115接收的資訊或指令做出此種確定。舉例而言,操作系統可提供記憶體分配特徵,進而使得應用可規定待分配的低延遲儲存體、高頻寬儲存體或持續性儲存體,且然後可在確定何處(例如,哪個記憶體模組135中)分配記憶體時由能力增強型CXL交換機130的控制器137考慮由應用發起的此種請求。舉例而言,可在包含HBM的記憶體模組135中分配由應用請求的高頻寬的儲存體,可在包含NAND快閃的記憶體模組135中分配由應用請求的資料持續性的儲存體,且可在包含相對便宜的DRAM的記憶體模組135中儲存其他儲存體(應用尚未對其作出請求)。在一些實施例中,能力增強型CXL交換機130的控制器137可基於網路使用模式來確定將特定資料儲存於何處。舉例而言,能力增強型CXL交換機130的控制器137可藉由監測使用模式來確定某一範圍的實體位址中的資料相較於其他資料被更頻繁地存取,且能力增強型CXL交換機130的控制器137然後可將該些資料複製至包含HBM的記憶體模組135中,並且修改其位址轉換表,進而使得新位置中的資料被儲存於相同範圍的虛擬位址中。在一些實施例中,記憶體模組135中的一或多者包括快閃記憶體(例如,NAND快閃),且能力增強型CXL交換機130的控制器137為此快閃記憶體實施快閃轉換層。快閃轉換層可支援對處理器側記憶體位置的重寫(藉由將資料移動至不同的位置並將資料的先前位置標記為無效),且快閃轉換層可實行垃圾收集(例如,當區塊中的資料的被標記為無效的部分超過臨限值時,在移動至另一區塊之後抹除區塊(區塊中的任何有效資料))。
在一些實施例中,能力增強型CXL交換機130的控制器137可有利於實體功能(PF)至PF傳送。舉例而言,若處理電路115中的一者需要將資料自一個實體位址移動至另一實體位址(其可具有相同的虛擬位址;此事實不需要影響處理電路115的操作),或者若處理電路115需要在兩個虛擬位址之間移動資料(處理電路115將需要具有所述兩個虛擬位址),則能力增強型CXL交換機130的控制器137可在不沒有處理電路115參加的條件下監督傳輸。舉例而言,處理電路115可發送CXL請求,且可將資料自一個記憶體模組135傳輸至能力增強型CXL交換機130後面的另一記憶體模組135(例如,資料可自一個記憶體模組135被複製至另一記憶體模組135),而未去往處理電路115。在此種情況下,由於處理電路115發起了CXL請求,因此處理電路115可能需要刷新其快取以確保一致性。若取而代之的是類型2記憶體元件(例如,記憶體模組135中的一者,或者亦可連接至CXL交換機的加速器)發起CXL請求且交換機未被虛擬化,則類型2記憶體元件可向處理電路115發送訊息以使快取無效。
在一些實施例中,能力增強型CXL交換機130的控制器137可有利於伺服器之間的RDMA請求。遠端伺服器105可發起此種RDMA請求,且所述請求可藉由ToR以太網路交換機110被發送,並到達與RDMA請求對應的伺服器105(「本地伺服器」)中的能力增強型CXL交換機130處。能力增強型CXL交換機130可被配置以接收此種RDMA請求且能力增強型CXL交換機130可處理接收伺服器105(即,接收RDMA請求的伺服器)中的記憶體模組135的群組作為其自己的記憶體空間。在本地伺服器中,能力增強型CXL交換機130可接收RDMA請求作為直接RDMA請求(即,未藉由本地伺服器中的處理電路115路由的RDMA請求)且能力增強型CXL交換機130可發送對RDMA請求的直接響應(即,能力增強型CXL交換機130可在不藉由本地伺服器中的處理電路115進行路由的條件下發送響應)。在遠端伺服器中,響應(例如,由本地伺服器發送的資料)可由遠端伺服器的能力增強型CXL交換機130接收,並儲存於遠端伺服器的記憶體模組135中,而不藉由遠端伺服器中的處理電路115進行路由。
圖1D示出類似於圖1C所示系統的系統,在圖1D中處理電路115藉由能力增強型CXL交換機130連接至網路介面電路125。能力增強型CXL交換機130、記憶體模組135及網路介面電路125位於擴展插座轉接器140上。擴展插座轉接器140可為插入至伺服器105的母板上的擴展插座(例如PCIe連接件145)中的電路板或模組。如此一來,伺服器可為任何適合的伺服器,所述伺服器僅藉由在PCIe連接件145中安裝擴展插座轉接器140來修改。記憶體模組135可安裝於擴展插座轉接器140上的連接件(例如,M.2連接件)中。在此種實施例中,(i)網路介面電路125可被整合至能力增強型CXL交換機130中,或者(ii)每一網路介面電路125可具有PCIe介面(網路介面電路125可為PCIe端點),進而使得每一網路介面電路125所連接的處理電路115可藉由根埠至端點PCIe連接與網路介面電路125進行通訊。能力增強型CXL交換機130(其可具有連接至處理電路115及網路介面電路125的PCIe輸入埠)的控制器137可藉由同級間PCIe連接與網路介面電路125進行通訊。
根據本發明的實施例,提供一種系統,所述系統包括第一伺服器,所述第一伺服器包括所儲存程式處理電路、網路介面電路、快取同調交換機及第一記憶體模組,其中:第一記憶體模組連接至快取同調交換機,快取同調交換機連接至網路介面電路,且所儲存程式處理電路連接至快取同調交換機。在一些實施例中,所述系統更包括連接至快取同調交換機的第二記憶體模組,其中第一記憶體模組包括揮發性記憶體且第二記憶體模組包括持續性記憶體。在一些實施例中,快取同調交換機被配置以將第一記憶體模組及第二記憶體模組虛擬化。在一些實施例中,第一記憶體模組包括快閃記憶體,且快取同調交換機被配置以向快閃記憶體提供快閃轉換層。在一些實施例中,快取同調交換機被配置以:監測第一記憶體模組中的第一記憶體位置的存取頻率;確定存取頻率超過第一臨限值;以及將第一記憶體位置的內容複製至第二記憶體位置中,第二記憶體位置處於第二記憶體模組中。在一些實施例中,第二記憶體模組包括高頻寬記憶體(HBM)。在一些實施例中,快取同調交換機被配置以維持用於將處理器側位址映射至記憶體側位址的表。在一些實施例中,所述系統更包括第二伺服器、以及連接至第一伺服器及第二伺服器的網路交換機。在一些實施例中,網路交換機包括架頂(ToR)以太網路交換機。在一些實施例中,快取同調交換機被配置以接收直接的遠端直接記憶體存取(RDMA)請求,並發送直接的RDMA響應。在一些實施例中,快取同調交換機被配置以藉由ToR以太網路交換機及網路介面電路接收遠端直接記憶體存取(RDMA)請求,並藉由ToR以太網路交換機及網路介面電路發送直接的RDMA響應。在一些實施例中,快取同調交換機被配置以支援計算快速鏈路(CXL)協定。在一些實施例中,第一伺服器包括連接至第一伺服器的擴展插座的擴展插座轉接器,所述擴展插座轉接器包括:快取同調交換機;以及記憶體模組插座,第一記憶體模組藉由記憶體模組插座連接至快取同調交換機。在一些實施例中,記憶體模組插座包括M.2插座。在一些實施例中,網路介面電路位於擴展插座轉接器上。根據本發明的實施例,提供一種用於在計算系統中實行遠端直接記憶體存取的方法,所述計算系統包括第一伺服器及第二伺服器,所述第一伺服器包括所儲存程式處理電路、網路介面電路、快取同調交換機及第一記憶體模組,所述方法包括:由快取同調交換機接收直接的遠端直接記憶體存取(RDMA)請求;以及由快取同調交換機發送直接的RDMA響應。在一些實施例中,計算系統更包括以太網路交換機,且所述接收直接的RDMA請求包括藉由以太網路交換機接收直接的RDMA請求。在一些實施例中,所述方法更包括:由快取同調交換機自所儲存程式處理電路接收針對第一記憶體位址的讀取命令;由快取同調交換機將第一記憶體位址轉換為第二記憶體位址;以及由快取同調交換機在第二記憶體位址處自第一記憶體模組檢索資料。在一些實施例中,所述方法更包括:由快取同調交換機接收資料;由快取同調交換機將資料儲存於第一記憶體模組中;以及由快取同調交換機向所儲存程式處理電路發送用於使快取列無效的命令。根據本發明的實施例,提供一種系統,所述系統包括第一伺服器,所述第一伺服器包括所儲存程式處理電路、網路介面電路、快取同調交換構件及第一記憶體模組,其中:第一記憶體模組連接至快取同調交換構件,快取同調交換構件連接至網路介面電路,且所儲存程式處理電路連接至快取同調交換構件。
圖1E示出其中多個伺服器105中的每一者連接至ToR伺服器連結交換機112的實施例,所述ToR伺服器連結交換機112可為具有PCIe能力的PCIe 5.0 CXL交換機,如圖所示。伺服器連結交換機112可包括FPGA或ASIC,且可提供優於以太網路交換機的效能(在通量及延遲方面)的效能。伺服器105中的每一者可包括多個記憶體模組135,所述多個記憶體模組135藉由能力增強型CXL交換機130及多個PCIe連接件連接至伺服器連結交換機112。如圖所示,伺服器105中的每一者亦可包括一或多個處理電路115及系統記憶體120。伺服器連結交換機112可作為主元件(mater)操作,且能力增強型CXL交換機130中的每一者可作為從元件(slave)操作,如以下進一步詳細論述。
在圖1E所示實施例中,伺服器連結交換機112可對自不同伺服器105接收的多個快取請求進行分組或分批處理,且伺服器連結交換機112可對封包進行分組,進而減少控制附加費(overhead)。能力增強型CXL交換機130可包括從控制器(例如,從FPGA或從ASIC),以繞過處理電路115而進行以下操作:(i)基於工作負荷將資料路由至不同的記憶體類型;(ii)將處理器側位址虛擬化為記憶體側位址;以及(iii)有利於不同伺服器105之間的同調請求。圖1E中所示的系統可為基於CXL 2.0的,所述系統可包括機架內的分佈式共享記憶體,且所述系統可使用ToR伺服器連結交換機112來本地連接遠端節點。
ToR伺服器連結交換機112可具有用於建立通往其他伺服器或客戶端的連接的附加的網路連接(例如,如圖所示的以太網路連接,或者另一種連接,例如無線連接(例如WiFi連接或5G連接))。伺服器連結交換機112及能力增強型CXL交換機130可各自包括控制器,所述控制器可為或包括例如ARM處理器等處理電路。PCIe介面可符合PCIe 5.0標準或符合較早的版本,或符合PCIe標準的未來版本,或者可採用符合不同標準的介面(例如,NVDIMM-P、CCIX或OpenCAPI)來代替PCIe介面。記憶體模組135可包括各種記憶體類型,所述各種記憶體類型包括DDR4 DRAM、HBM、LDPPR、NAND快閃、或固態驅動器(SSD)。記憶體模組135可被分區或包含快取控制器以處置多種記憶體類型,且記憶體模組135可處於不同的形狀因數,例如HHHL、FHHL、M.2、U.2、夾層卡、子卡、E1.S、E1.L、E3.L及E3.S。
在圖1E所示實施例中,能力增強型CXL交換機130可使得能夠達成一對多及多對一交換,且它可使得能夠達成微片(flit)(64位元組(byte))水準的細粒度加載-儲存介面。每一伺服器可具有聚集的記憶體元件,每一元件被分區成多個邏輯元件,所述多個邏輯元件各自具有相應的LD-ID。ToR交換機112(其可被稱為「伺服器連結交換機」)使得能夠達成一對多功能,且伺服器105中的能力增強型CXL交換機130使得能夠達成多對一功能。伺服器連結交換機112可為PCIe交換機、或CXL交換機、或者兩者。在此種系統中,請求者可為所述多個伺服器105的處理電路115,響應者可為許多聚集的記憶體模組135。兩個交換機的層次(hierarchy)(如上所述,主交換機是伺服器連結交換機112,且從交換機是能力增強型CXL交換機130)使得能夠達成任意者-任意者通訊。記憶體模組135中的每一者可具有一個實體功能(PF)及多達16個隔離的邏輯元件。在一些實施例中,邏輯元件的數目(例如,分區的數目)可能是受限的(例如,限制至16個),且亦可存在一個控制分區(其可為用於控制元件的實體功能)。記憶體模組135中的每一者可為具有CXL.cache、CXL.memory及CXL.io以及位址轉換服務(address translation service,ATS)實施方式的類型2元件,以處置處理電路115可保存的快取列副本。能力增強型CXL交換機130及結構管理器可控制記憶體模組135的發現,且進行以下操作:(i)實行元件發現及虛擬CXL軟體創建;以及(ii)將虛擬埠綁定至實體埠。如在圖1A至圖1D所示實施例中,結構管理器可藉由經由SMBus邊帶進行的連接而進行操作。通往記憶體模組135的介面(其可為智慧平台管理介面(Intelligent Platform Management Interface,IPMI))或符合紅魚標準(Redfish standard)的介面(且亦可提供標準並不要求的附加特徵)可使得能夠達成可配置性。
如上所述,一些實施例實施分層結構(其中主控制器(其可在FPGA或ASIC中實施)是伺服器連結交換機112的部分,且從控制器是能力增強型CXL交換機130的部分),以提供加載-儲存介面(即,具有快取列(例如,64位元組)粒度且在沒有軟體驅動器參加的條件下在同調域內進行操作的介面)。此種加載-儲存介面可將同調域擴展至單個伺服器、或者CPU或主機之外,且可包括電性的或光學的中的任一者的實體媒體(例如,兩端處帶有電光收發器的光學連接件)。在操作中,主控制器(在伺服器連結交換機112中)啟動(boot)(或「重新啟動」)並配置機架上的所有伺服器105。主控制器可在所有主機上具有可視性,且主控制器可進行以下操作:(i)發現每一伺服器並發現伺服器群集中存在多少個伺服器105及記憶體模組135;(ii)獨立地配置伺服器105中的每一者;(iii)基於例如機架的配置而將不同伺服器上的一些記憶體區塊賦能或去能(例如,將記憶體模組135中的任意者賦能或去能);(iv)控制存取(例如,哪個伺服器可控制哪個其他伺服器);(v)實施流量控制(例如,由於所有主機及元件請求經過主元件,因此主控制器可將資料自一個伺服器傳輸至另一伺服器並對資料實行流量控制);(vi)對請求或封包(例如,由主機自不同的伺服器105接收的多個快取請求)進行分組或分批處理;以及(vii)接收遠端軟體更新、廣播通訊、及類似物。在分批處理模式下,伺服器連結交換機112可接收去往同一伺服器(例如,去往第一伺服器)的多個封包並將所述多個封包一起發送(即,所述多個封包之間沒有停頓)至第一伺服器。舉例而言,伺服器連結交換機112可自第二伺服器接收第一封包,且自第三伺服器接收第二封包,且將第一封包及第二封包一起傳輸至第一伺服器。伺服器105中的每一者可向主控制器展示(i)IPMI網路介面、(ii)系統事件日誌(system event log,SEL)、以及(iii)板管理控制器(board management controller,BMC),進而使主控制器能夠量測效能、即時(on-the-fly)量測可靠性、且重新配置伺服器105。
在一些實施例中,使用有利於高可用性加載-儲存介面的軟體架構。此種軟體架構可提供可靠性、複製、一致性、系統同調性、散列、快取及持續性。軟體架構可經由IPMI對CXL元件組件實行定期硬體檢查來提供可靠性(在具有大數目的伺服器的系統中)。舉例而言,伺服器連結交換機112可經由記憶體伺服器150的IPMI介面查詢記憶體伺服器150的狀態,例如查詢電源狀態(記憶體伺服器150的電源供應(power supply)是否正常工作)、網路狀態(通往伺服器連結交換機112的介面是否正常工作)及錯誤檢查狀態(在記憶體伺服器150的子系統中的任意者中是否存在錯誤情況)。軟體架構可提供複製,此乃因主控制器可複製儲存於記憶體模組135中的資料且維持複製物(replica)之間的資料一致性。
軟體架構可提供一致性,此乃因主控制器可配置有不同的一致性水準,且伺服器連結交換機112可根據待維持的一致性水準來調整封包格式。舉例而言,若維持最終的一致性,則伺服器連結交換機112可對請求重新排序,同時為了維持嚴格一致性,伺服器連結交換機112可在交換機處維持具有精確時戳(timestamp)的所有請求的記分板(scoreboard)。軟體架構可提供系統同調性,此乃因可自相同的記憶體位址讀取或向相同的記憶體位址寫入多個處理電路115,且為了保持同調性,主控制器可負責到達位址的歸屬節點(home node)(使用目錄查找(directory lookup))或者在公共匯流排上廣播請求。
軟體架構可提供散列,此乃因伺服器連結交換機112及能力增強型CXL交換機可維持位址的虛擬映射,所述虛擬映射可使用具有多個散列函數的一致散列來在啟動時將資料均勻地映射至跨越所有節點的所有CXL元件(或者在一個伺服器停機或發動時進行調整)。軟體架構可提供快取,此乃因主控制器可指定某些記憶體分區(例如,在包括HBM或具有類似能力的技術的記憶體模組135中)來用作快取(例如,採用直寫式快取或回寫式快取)。軟體架構可提供持續性,此乃因主控制器及從控制器可管理持續性域及刷新。
在一些實施例中,CXL交換機的能力被整合至記憶體模組135的控制器中。在此種實施例中,伺服器連結交換機112仍然可用作主元件且具有如本文別處所論述的增強特徵。伺服器連結交換機112亦可管理系統中的其他儲存體元件,且伺服器連結交換機112可具有用於連接(例如連接至並非由伺服器連結交換機112形成的PCIe網路的部分的客戶機)的以太網路連接(例如,100千兆以太網路連接)。
在一些實施例中,伺服器連結交換機112具有增強的能力且亦包括整合的CXL控制器。在其他實施例中,伺服器連結交換機112僅為實體路由元件,且每一伺服器105包括主CXL控制器。在此種實施例中,跨越不同伺服器的主元件可協商主從架構。(i)能力增強型CXL交換機130及(ii)伺服器連結交換機112的智慧功能可在一或多個FPGA、一或多個ASIC、一或多個ARM處理器、或具有計算能力的一或多個SSD中實施。伺服器連結交換機112可例如藉由對獨立的請求重新排序而實行流量控制。在一些實施例中,由於介面是加載-儲存的,因此RDMA是可選的,但可能存在使用PCIe實體媒體(而非100千兆以太網路)的中間RDMA請求。在此種實施例中,遠端主機可發起RDMA請求,所述RDMA請求可藉由伺服器連結交換機112被傳輸至能力增強型CXL交換機130。伺服器連結交換機112及能力增強型CXL交換機130可優先考慮RDMA 4 KB請求或CXL的微片(64位元組)請求。
如在圖1C及圖1D所示實施例中,能力增強型CXL交換機130可被配置以接收此種RDMA請求且能力增強型CXL交換機130可處理接收伺服器105(即,接收RDMA請求的伺服器)中的記憶體模組135的群組作為其自己的記憶體空間。此外,能力增強型CXL交換機130可跨越處理電路115進行虛擬化且在遠端能力增強型CXL交換機130上發起RDMA請求,以在沒有處理電路115參加的條件下在伺服器105之間來回移動資料。
圖1F示出與圖1E所示系統類似的系統,在圖1F中處理電路115藉由能力增強型CXL交換機130連接至網路介面電路125。如在圖1D所示實施例中,在圖1F中,能力增強型CXL交換機130、記憶體模組135及網路介面電路125位於擴展插座轉接器140上。擴展插座轉接器140可為插入至伺服器105的母板上的擴展插座(例如PCIe連接件145)中的電路板或模組。如此一來,伺服器可為任何適合的伺服器,所述伺服器僅藉由在PCIe連接件145中安裝擴展插座轉接器140來修改。記憶體模組135可安裝於擴展插座轉接器140上的連接件(例如,M.2連接件)中。在此種實施例中,(i)網路介面電路125可被整合至能力增強型CXL交換機130中,或者(ii)每一網路介面電路125可具有PCIe介面(網路介面電路125可為PCIe端點),進而使得每一網路介面電路125所連接的處理電路115可藉由根埠至端點PCIe連接與網路介面電路125進行通訊,且能力增強型CXL交換機130(其可具有連接至處理電路115及網路介面電路125的PCIe輸入埠)的控制器137可藉由同級間PCIe連接與網路介面電路125進行通訊。
根據本發明的實施例,提供一種系統,所述系統包括第一伺服器、以及第二伺服器、以及連接至第一伺服器及第二伺服器的伺服器連結交換機,所述第一伺服器包括所儲存程式處理電路、快取同調交換機及第一記憶體模組,其中:第一記憶體模組連接至快取同調交換機,快取同調交換機連接至伺服器連結交換機,且所儲存程式處理電路連接至快取同調交換機。在一些實施例中,伺服器連結交換機包括快速周邊組件互連(PCIe)交換機。在一些實施例中,伺服器連結交換機包括計算快速鏈路(CXL)交換機。在一些實施例中,伺服器連結交換機包括架頂(ToR)CXL交換機。在一些實施例中,伺服器連結交換機被配置以發現第一伺服器。在一些實施例中,伺服器連結交換機被配置以使第一伺服器重新啟動。在一些實施例中,伺服器連結交換機被配置以使快取同調交換機將第一記憶體模組去能。在一些實施例中,伺服器連結交換機被配置以將資料自第二伺服器傳輸至第一伺服器,並對資料實行流量控制。在一些實施例中,所述系統更包括連接至伺服器連結交換機的第三伺服器,其中:伺服器連結交換機被配置以:自第二伺服器接收第一封包;自第三伺服器接收第二封包;且將第一封包及第二封包傳輸至第一伺服器。在一些實施例中,所述系統更包括連接至快取同調交換機的第二記憶體模組,其中第一記憶體模組包括揮發性記憶體且第二記憶體模組包括持續性記憶體。在一些實施例中,快取同調交換機被配置以將第一記憶體模組及第二記憶體模組虛擬化。在一些實施例中,第一記憶體模組包括快閃記憶體,且快取同調交換機被配置以向快閃記憶體提供快閃轉換層。在一些實施例中,第一伺服器包括連接至第一伺服器的擴展插座的擴展插座轉接器,所述擴展插座轉接器包括:快取同調交換機;及記憶體模組插座,第一記憶體模組藉由記憶體模組插座連接至快取同調交換機。在一些實施例中,記憶體模組插座包括M.2插座。在一些實施例中,快取同調交換機藉由連接件連接至伺服器連結交換機,且連接件位於擴展插座轉接器上。根據本發明的實施例,提供一種用於在計算系統中實行遠端直接記憶體存取的方法,所述計算系統包括第一伺服器、第二伺服器、第三伺服器、以及連接至第一伺服器、第二伺服器及第三伺服器的伺服器連結交換機,所述第一伺服器包括所儲存程式處理電路、快取同調交換機及第一記憶體模組,所述方法包括:由伺服器連結交換機自第二伺服器接收第一封包;由伺服器連結交換機自第三伺服器接收第二封包;以及將第一封包及第二封包傳輸至第一伺服器。在一些實施例中,所述方法更包括:由快取同調交換機接收直接的遠端直接記憶體存取(RDMA)請求;以及由快取同調交換機發送直接的RDMA響應。在一些實施例中,所述接收直接的RDMA請求包括藉由伺服器連結交換機接收直接的RDMA請求。在一些實施例中,所述方法更包括:由快取同調交換機自所儲存程式處理電路接收針對第一記憶體位址的讀取命令;由快取同調交換機將第一記憶體位址轉換為第二記憶體位址;以及由快取同調交換機在第二記憶體位址處自第一記憶體模組檢索資料。根據本發明的實施例,提供一種系統,所述系統包括第一伺服器、以及第二伺服器、以及連接至第一伺服器及第二伺服器的伺服器連結交換機,所述第一伺服器包括所儲存程式處理電路、快取同調交換構件、第一記憶體模組,其中:第一記憶體模組連接至快取同調交換構件,快取同調交換構件連接至伺服器連結交換機,且所儲存程式處理電路連接至快取同調交換構件。
圖1G示出其中多個記憶體伺服器150中的每一者連接至ToR伺服器連結交換機112的實施例,所述ToR伺服器連結交換機112可為PCIe 5.0 CXL交換機,如圖所示。如在圖1E及圖1F所示實施例中,伺服器連結交換機112可包括FPGA或ASIC,且可提供優於以太網路交換機的效能(在通量及延遲方面)的效能。如在圖1E及圖1F所示實施例中,記憶體伺服器150可包括藉由多個PCIe連接件連接至伺服器連結交換機112的多個記憶體模組135。在圖1G所示實施例中,處理電路115及系統記憶體120可不存在,且記憶體伺服器150的主要目的可為提供記憶體,供具有計算資源的其他伺服器105使用。
在圖1G所示實施例中,伺服器連結交換機112可對自不同記憶體伺服器150接收的多個快取請求進行分組或分批處理,且伺服器連結交換機112可對封包進行分組,進而減少控制附加費。能力增強型CXL交換機130可包括可組合的硬體構建區塊,以進行以下操作:(i)基於工作負荷將資料路由至不同的記憶體類型;以及(ii)將處理器側位址虛擬化(將此種位址轉換成記憶體側位址)。圖1G中所示的系統可為基於CXL 2.0的,所述系統可包括機架內的可組合及分解的共享記憶體,且所述系統可使用ToR伺服器連結交換機112來向遠端元件提供彙集的(即,聚集)的記憶體。
ToR伺服器連結交換機112可具有用於建立通往其他伺服器或客戶端的連接的附加的網路連接(例如,如圖所示的以太網路連接,或者另一種連接,例如無線連接(例如WiFi連接或5G連接))。伺服器連結交換機112及能力增強型CXL交換機130可各自包括控制器,所述控制器可為或包括例如ARM處理器等處理電路。PCIe介面可符合PCIe 5.0標準或符合較晚的版本,或符合PCIe標準的未來版本,或者可採用不同標準(例如,NVDIMM-P、CCIX或OpenCAPI)來代替PCIe。記憶體模組135可包括各種記憶體類型,所述各種記憶體類型包括DDR4 DRAM、HBM、LDPPR、NAND快閃、或固態驅動器(SSD)。記憶體模組135可被分區或包含快取控制器以處置多種記憶體類型,且記憶體模組135可處於不同的形狀因數,例如HHHL、FHHL、M.2、U.2、夾層卡、子卡、E1.S、E1.L、E3.L及E3.S。
在圖1G所示實施例中,能力增強型CXL交換機130可使得能夠達成一對多及多對一交換,且能力增強型CXL交換機130可使得能夠達成微片(64位元組)水準的細粒度加載-儲存介面。每一記憶體伺服器150可具有聚集的記憶體元件,每一元件被分區成多個邏輯元件,所述多個邏輯元件各自具有相應的LD-ID。能力增強型CXL交換機130可包括:控制器137(例如,ASIC及FPGA);以及電路(其可與此種ASIC或FPGA分離或為此種ASIC或FPGA的部分),用於元件發現、枚舉、分區及呈現實體位址範圍。記憶體模組135中的每一者可具有一個實體功能(PF)及多達16個隔離的邏輯元件。在一些實施例中,邏輯元件的數目(例如,分區的數目)可能是受限的(例如,限制至16個),且亦可存在一個控制分區(其可為用於控制元件的實體功能)。記憶體模組135中的每一者可為具有CXL.cache、CXL.memory及CXL.io以及位址轉換服務(ATS)實施方式的類型2元件,以處置處理電路115可保存的快取列副本。
能力增強型CXL交換機130及結構管理器可控制記憶體模組135的發現,且進行以下操作:(i)實行元件發現及虛擬CXL軟體創建;以及(ii)將虛擬埠綁定至實體埠。如在圖1A至圖1D所示實施例中,結構管理器可藉由經由SMBus邊帶進行的連接而進行操作。通往記憶體模組135的介面(其可為智慧平台管理介面(IPMI))或符合紅魚標準的介面(且亦可提供標準並不要求的附加特徵)可使得能夠達成可配置性。
對於圖1G所示實施例,構建區塊可包括(如上所述)實施於FPGA或ASIC上的CXL控制器137,所述CXL控制器137進行交換以使得能夠達成記憶體元件(例如,記憶體模組135)、SSD、加速器(GPU、NIC)、CXL及PCIe5連接件以及韌體的聚集,進而將元件細節展示給操作系統的高級配置及電源介面(advanced configuration and power interface,ACPI)表,例如異質記憶屬性表(heterogeneous memory attribute table,HMAT)或靜態資源親和性表(static resource affinity table,SRAT)。
在一些實施例中,系統提供可組合性。所述系統可基於軟體配置向在線及離線CXL元件及其他加速器提供能力,且所述系統可能夠對加速器、記憶體、儲存體元件資源進行分組,且將它們定量分配至機架中的每一記憶體伺服器150。系統可隱藏實體位址空間且使用更快的元件(如HBM及SRAM)提供透明快取。
在圖1G所示實施例中,能力增強型CXL交換機130的控制器137可進行以下操作:(i)管理記憶體模組135;(ii)整合及控制例如NIC、SSD、GPU、DRAM等異質元件;以及(iii)藉由電源閘控達成儲存體至記憶體元件的動態重新配置。舉例而言,ToR伺服器連結交換機112可將記憶體模組135中的一者的電源去能(即,切斷電源或降低電源)(藉由指示能力增強型CXL交換機130將記憶體模組135的電源去能)。在得到伺服器連結交換機112的將記憶體模組的電源去能的指示時,能力增強型CXL交換機130可然後將記憶體模組135的電源去能。此種去能可節約功率且此種去能可改善記憶體伺服器150中的其他記憶體模組135的效能(例如,通量及延遲)。每一遠端伺服器105可基於協商看到記憶體模組135及其連接件的不同邏輯視圖。能力增強型CXL交換機130的控制器137可維持狀態,進而使得每一遠端伺服器維持分配的資源及連接件,且控制器137可實行記憶體的壓縮或重複資料刪除以節省記憶體容量(使用可配置的塊大小)。圖1G所示分解機架可能有其自己的BMC。圖1G所示分解機架亦可向遠端元件展示IPMI網路介面及系統事件日誌(SEL),進而使得主元件(例如,使用由記憶體伺服器150提供的儲存體的遠端伺服器)來即時量測效能及可靠性,且重新配置分解機架。圖1G所示分解機架可以與本文中針對圖1E所示實施例所闡述的方式相似的方式來提供可靠性、複製、一致性、系統同調性、散列、快取及持續性,其中例如,同調性是由多個遠端伺服器自相同的記憶體位址讀取或向相同的記憶體位址寫入來提供,且其中每一遠端伺服器配置有不同的一致性水準。在一些實施例中,伺服器連結交換機維持儲存於第一記憶體伺服器上的資料與儲存於第二記憶體伺服器上的資料之間的最終一致性。伺服器連結交換機112可為不同的伺服器對維持不同的一致性水準;舉例而言,伺服器連結交換機亦可在儲存於第一記憶體伺服器上的資料與儲存於第三記憶體伺服器上的資料之間維持作為嚴格一致性、順序一致性、因果一致性或處理器一致性的一致性水準。所述系統可採用「局部頻帶(local-band)」(伺服器連結交換機112)及「全域頻帶(global-band)」(分解伺服器)域中的通訊。寫入可能會被刷新至「全域頻帶」,以便自其他伺服器的新讀取可見。能力增強型CXL交換機130的控制器137可為每一遠端伺服器單獨管理持續性域及刷新。舉例而言,快取同調交換機可監測第一記憶體區(揮發性記憶體,作為快取進行操作)的完全性,且當完全性水準超過臨限值時,快取同調交換機可將資料自第一記憶體區移動至第二記憶體區,第二記憶體區位於持續性記憶體中。可藉由以下方式來處置流量控制:可由能力增強型CXL交換機130的控制器137在遠端伺服器之間建立優先級,以呈現不同的感知延遲及頻寬。
根據本發明的實施例,提供一種系統,所述系統包括第一記憶體伺服器、以及第二記憶體伺服器、以及連接至第一記憶體伺服器及第二記憶體伺服器的伺服器連結交換機,所述第一記憶體伺服器包括快取同調交換機及第一記憶體模組,其中:第一記憶體模組連接至快取同調交換機,且快取同調交換機連接至伺服器連結交換機。在一些實施例中,伺服器連結交換機被配置以將第一記憶體模組的電源去能。在一些實施例中,伺服器連結交換機被配置以藉由指示快取同調交換機將第一記憶體模組的電源去能而將第一記憶體模組的電源去能,且快取同調交換機被配置以在得到伺服器連結交換機的將第一記憶體模組的電源去能的指示時將第一記憶體模組的電源去能。在一些實施例中,所述快取同調交換機被配置以在第一記憶體模組內實行重複資料刪除。在一些實施例中,所述快取同調交換機被配置以對資料進行壓縮並將經壓縮資料儲存於第一記憶體模組中。在一些實施例中,所述伺服器連結交換機被配置以查詢第一記憶體伺服器的狀態。在一些實施例中,所述伺服器連結交換機被配置以經由智慧平台管理介面(IPMI)查詢第一記憶體伺服器的狀態。在一些實施例中,對狀態的所述查詢包括查詢選自由電源狀態、網路狀態及錯誤檢查狀態組成的群組的狀態。在一些實施例中,所述伺服器連結交換機被配置以對指向第一記憶體伺服器的快取請求進行分批處理。在一些實施例中,所述系統更包括連接至伺服器連結交換機的第三記憶體伺服器,其中伺服器連結交換機被配置以在儲存於第一記憶體伺服器上的資料與儲存於第三記憶體伺服器上的資料之間維持選自由嚴格一致性、順序一致性、因果一致性及處理器一致性組成的群組的一致性水準。在一些實施例中,所述快取同調交換機被配置以:監測第一記憶體區的完全性,以及將資料自第一記憶體區移動至第二記憶體區,其中:第一記憶體區位於揮發性記憶體中,且第二記憶體區位於持續性記憶體中。在一些實施例中,所述伺服器連結交換機包括快速周邊組件互連(PCIe)交換機。在一些實施例中,所述伺服器連結交換機包括計算快速鏈路(CXL)交換機。在一些實施例中,所述伺服器連結交換機包括架頂(ToR)CXL交換機。在一些實施例中,所述伺服器連結交換機被配置以將資料自第二記憶體伺服器傳輸至第一記憶體伺服器並對資料實行流量控制。在一些實施例中,所述系統更包括連接至伺服器連結交換機的第三記憶體伺服器,其中:所述伺服器連結交換機被配置以:自第二記憶體伺服器接收第一封包,自第三記憶體伺服器接收第二封包,且將第一封包及第二封包傳輸至第一記憶體伺服器。根據本發明的實施例,提供一種在計算系統中實行遠端直接記憶體存取的方法,所述計算系統包括第一記憶體伺服器、第一伺服器、第二伺服器、以及連接至第一記憶體伺服器、第一伺服器及第二伺服器的伺服器連結交換機,所述第一記憶體伺服器包括快取同調交換機及第一記憶體模組,所述第一伺服器包括所儲存程式處理電路,所述第二伺服器包括所儲存程式處理電路,所述方法包括:由伺服器連結交換機自第一伺服器接收第一封包;由伺服器連結交換機自第二伺服器接收第二封包;以及將第一封包及第二封包傳輸至第一記憶體伺服器。在一些實施例中,所述方法更包括:由快取同調交換機對資料進行壓縮;以及將資料儲存於第一記憶體模組中。在一些實施例中,所述方法更包括:由伺服器連結交換機查詢第一記憶體伺服器的狀態。根據本發明的實施例,提供一種系統,所述系統包括第一記憶體伺服器、以及第二記憶體伺服器、以及連接至第一記憶體伺服器及第二記憶體伺服器的伺服器連結交換構件,所述第一記憶體伺服器包括快取同調交換機及第一記憶體模組,其中:第一記憶體模組連接至快取同調交換機,且快取同調交換機連接至伺服器連結交換構件。
圖2繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的圖200,所述管理計算實體可通訊並配置結合圖1闡述的各個伺服器。在一些實施例中,所揭露的系統可包括管理計算實體202,所述管理計算實體202可被配置以結合多個群集進行操作。如圖所示,群集可包括類型A池群集(pool cluster)204、類型B池群集206、類型C池群集208及類型D池群集210。在一個實施例中,類型A池群集204可包括直接附接式記憶體(例如,CXL記憶體),類型B池群集206可包括加速器(例如,CXL加速器),類型C池群集208可包括彙集式記憶體/分佈式記憶體(例如,CXL記憶體),且類型D池群集210可包括分解式記憶體(例如,CXL記憶體)。此外,群集中的每一者可包括但不限於插入式模組212,插入式模組212可包括計算部件214,例如處理器(例如,基於RISC-V的處理器)及/或可程式化控制器(例如,基於FPGA的控制器)、以及對應的媒體216。
在各種實施例中,管理計算實體202可被配置以基於一或多個預定參數(例如與由和管理計算實體202進行通訊的網路上的主機或元件正在處理的對應工作負荷相關聯的參數)將I/O及記憶體存儲及檢索操作引導至各個群集。
在各種實施例中,管理計算實體202可在機架及/或群集層級處進行操作及/或可至少部分地在作為給定群集架構(例如,類型A池群集204、類型B池群集206、類型C池群集208及/或類型D池群集210)的部分的給定元件(例如,快取同調賦能元件)內進行操作。在各種實施例中,給定群集架構內的元件可實行管理計算實體的操作的第一部分,而管理計算實體的操作的另一部分可在機架上及/或群集層級處實施。在一些實施例中,操作的所述兩個部分可以協調的方式實行(例如,群集中的元件向在機架上及/或群集層級處實施的管理計算實體發送協調訊息及所述管理計算實體接收協調訊息)。在一些實施例中,操作的與群集中的元件相關聯的第一部分可包括但不限於用於確定元件或群集的當前或未來資源需要、藉由元件或群集通告當前或未來資源可用性、將與在元件或群集層級處運行的演算法相關聯的某些參數同步、訓練與元件或機架/群集的操作相關聯的一或多個機器學習模組、對與對工作負荷進行路由相關聯的對應資料進行記錄、其組合、及/或類似操作等操作。
圖3A繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的另一圖300,所述管理計算實體可通訊並配置結合圖1闡述的各個伺服器。在一些實施例中,管理計算實體302可類似於但不一定相同於以上結合圖2示出及闡述的管理計算實體202。此外,管理計算實體202可與類型A池進行通訊。在各種實施例中,類型A池群集312可包括若干伺服器。此外,類型A池群集312可以直接附接式快取同調(例如,CXL)元件為特徵,所述直接附接式快取同調(例如,CXL)元件可例如被配置以使用根複合積體端點(root complex integrated endpoint,RCiEP)進行操作。在另一實施例中,類型A池群集312可以基於快取同調協定的記憶體(例如CXL記憶體)為特徵,以減少對CPU引腳的任何限制。在一個實施例中,類型A池群集312可包括具有各種形狀因數選項(例如,可符合企業及資料中心SSD形狀因數(Enterprise & Data Center SSD Form Factor,EDSFF)標準的E3、E1形狀因數及/或附加卡(add-in card,AIC)形狀因數)的直接附接式元件。在另一實施例中,所揭露的系統可包括交換機304,例如基於快取同調(例如,CXL)的交換機及/或基於矽光子(silicon photonic)的交換機。在一個實施例中,交換機304可以基於架頂(ToR)以太網路的交換機為特徵,基於架頂(ToR)以太網路的交換機可用於將系統按比例縮放至機架層級。
在各種實施例中,如圖3B中所示,類型B池群集314亦可包括若干伺服器。此外,類型B池群集314可使用基於快取同調的(例如,基於CXL 2.0的)交換機及加速器,所述基於快取同調的(例如,基於CXL 2.0的)交換機及加速器可彙集於多個伺服器中的一個伺服器內。此外,類型B池群集314可以基於工作負荷的基於虛擬快取同調協定(例如,CXL協定)的交換機(virtual cache coherent protocol based switch,VCS)分層能力為特徵。具體而言,VCS可被識別為交換機的一部分及位於一個特定根埠(例如,PCIe根埠)後面的連接組件。在另一實施例中,所揭露的系統可包括交換機306,例如基於快取同調(例如,CXL)的交換機及/或基於矽光子的交換機。
在各種實施例中,如圖3C中所示,類型C池群集316亦可包括若干伺服器。此外,類型C池群集316可在多個伺服器中的一個伺服器內使用CXL 2.0交換機。另外,類型C池群集316可使用基於PCIe的結構及/或基於Gen-Z的系統來跨越伺服器擴展快取同調記憶體。另外,類型C池群集316可在群集中引入至少三個同調記憶體池:本地DRAM、本地CXL記憶體及遠端記憶體。在另一實施例中,所揭露的系統可包括交換機308,例如基於快取同調(例如,CXL)的交換機及/或基於矽光子的交換機。
在各種實施例中,如圖3D中所示,類型D池群集318亦可包括若干伺服器。在一個實施例中,類型D池群集318可包括實體上分解的CXL記憶體。此外,每一伺服器可被指配一個分區,進而使得在伺服器之間可存在有限的共享或者沒有共享。在一些實施例中,類型D池群集318最初可被限制至預定數目(例如,16個)多邏輯元件(multiple logical device,MLD)分區及主機。具體而言,基於類型3快取同調協定(例如,CXL)的記憶體元件可被分區成看起來像多個元件,其中每一元件呈現獨特的邏輯元件ID。另外,類型D池群集318可使用基於PCIe的結構及/或基於Gen-Z的系統來跨越伺服器按比例縮放快取同調記憶體。在另一實施例中,所揭露的系統可包括交換機310,例如基於快取同調(例如,CXL)的交換機及/或基於矽光子的交換機。
圖4繪示出根據本揭露示例性實施例的可表徵結合圖1闡述的伺服器的各態樣的代表性參數表的圖,其中管理計算實體基於參數表對各個伺服器進行配置。具體而言,表400示出各種示例性參數,所述各種示例性參數可由所揭露的系統考慮,且具體而言,可由在本文中以不同方式闡述的管理計算實體考慮,以基於對上述不同的池群集類型的該些參數(或類似參數)的值的比較將工作負荷的部分路由至不同群集。具體而言,表400示出與行中示出的不同群集類型(即,直接附接式406記憶體群集(類似於類型A池群集)、彙集式408記憶體群集(類似於類型B池群集)、分佈式410記憶體群集(類似於類型C池群集)及分解式412記憶體群集(類似於類型D池群集))對應的參數402。此種參數402的非限制性實例包括直接記憶體容量、遠記憶體容量(例如,對於快取同調協定,例如CXL)、遠端記憶體容量(例如,每伺服器)、遠端記憶體效能、總的總體擁有成本(total cost of ownership,TCO)、總功率(攤銷的)、及總面積(例如,具有E1形狀因數)。在各種實施例中,所揭露的系統可使用與管理計算實體相關聯的機器學習演算法來做出將工作負荷的至少一部分路由至不同群集的確定,如以下所進一步闡述。儘管圖4示出一些示例性參數,但所揭露的系統可被配置以監測任何適合的參數,以將工作負荷或工作負荷的部分路由至與群集相關聯的不同元件。此外,管理計算實體可基於系統的各種參數來實行此種操作,所述各種參數包括但不限於基於快取同調協定的(例如,基於CXL的)往返時間、對元件是處於主機偏置亦或元件偏置的判斷、基於快取同調協定的(例如,基於CXL的)交換機層次及/或主機上游埠至元件下游埠的綁定、基於快取同調協定的(例如,基於CXL的)交換機結構管理器配置、基於快取同調協定的(例如,基於CXL的)協定封包或實體媒體封包(例如,CXL.IO或PCIe干預大容量4KB封包)、網路延遲、基於快取同調協定的(例如,基於CXL的)記憶體技術(例如,記憶體類型)、其組合、及/或類似物。
圖5繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合第一拓撲進行操作的代表性網路架構的圖。具體而言,圖500示出以下進一步闡述的網路502、第一資料傳輸503、主機504、第二資料傳輸505、元件506、管理計算實體508、核心資料中心510、元件513、514及516、邊緣資料中心512、元件514、516及518、邊緣資料中心520、元件522、524及526、行動邊緣資料中心530、以及元件532、534及536。在各種實施例中,群集(例如,以上示出及闡述的類型A、B、C及D池群集)可為核心資料中心510、邊緣資料中心512、邊緣資料中心520、及/或行動邊緣資料中心530中的一或多者的部分。此外,元件(例如,元件506、513、514、516、元件522、524及526、以及元件532、534及536)可包括位於給定群集(例如,以上示出及闡述的類型A、B、C及D池群集中的任何一者)內或與所述給定群集相關聯的元件(例如,記憶體、加速器、或類似元件)。
如本文中所使用,邊緣計算可指分佈式計算系統,分佈式計算系統使計算及資料存儲實體上更靠近可能需要此種資源的位置,例如,以改善響應時間且節省頻寬。邊緣計算可用於將雲端計算、網路控制及存儲的某些態樣移動至網路邊緣平台(例如,邊緣資料中心及/或元件),網路邊緣平台可在實體上更靠近資源受限的終端元件,例如,以支援計算密集型及延遲關鍵型應用。因此,邊緣計算可使得減少延遲並增加包含邊緣及核心資料中心的網路架構上的頻寬。在一些態樣中,為了提供低延遲服務,邊緣計算範例可將邊緣計算平台設計最佳化,其態樣在本文中進行闡述。
在一些實施例中,圖500示出主機504可藉由第一資料傳輸503向網路502發起工作負荷請求。管理計算實體508可監測與網路架構相關聯的參數(例如,任何適合的參數,例如以上結合圖4示出及闡述的除了資料傳輸速率、網路部分利用率、其組合、及/或類似物之外的參數)(例如,包括但不限於與核心資料中心510及各種邊緣資料中心(例如邊緣資料中心520及邊緣資料中心512)及/或核心資料中心510及各種邊緣資料中心的任何群集相關聯的網路參數)。基於監測的結果,管理計算實體508可確定將工作負荷的至少一部分路由至核心資料中心510的一或多個群集。在一些實例中,管理計算實體508可進一步將工作負荷的不同部分路由至邊緣資料中心512或邊緣資料中心520的一或多個群集。為了確定將工作負荷路由至何處,管理計算實體508可運行網路架構及/或網路的部分(例如,與邊緣資料中心、核心資料中心相關聯的群集、各種元件等)的模型,以確定例如與網路架構的不同部分相關聯的延遲及/或能量使用量等參數。如上所述,管理計算實體508可使用所述參數作為機器學習組件的輸入(以下將結合圖8及圖9進一步示出及闡述),以確定核心資料中心的一或多個群集及邊緣資料中心的一或多個群集之間的最佳路由,用於計算工作負荷。
現在轉向圖500中所示的各種組件,以下將提供各種組件的更詳細說明。在一些實施例中,網路502可包括但不限於網際網路或例如廣域網路(無線局部區域網路(wireless local area network,WLAN))等公共網路。在一些實例中,主機504可包括網路主機,例如,電腦或連接至電腦網路的其他元件。主機可作為向網路502上的使用者或其他主機供應資訊資源、服務及應用的伺服器來操作。在一些實例中,主機可被指配至少一個網路位址。在其他實例中,參與例如網際網路等網路的電腦可被稱為網際網路主機。此種網際網路主機可包括指配給它們各自網路介面的一或多個網路協定(IP)位址。
在一些實例中,元件506可包括直接連接至網路502的元件(經由有線鏈路或無線鏈路)。在一些態樣中,元件506可發起工作負荷(例如,視訊流請求)。然後,根據本文中揭露的實施例,工作負荷可由網路架構的相關部分來處理。以下結合圖12進一步示出及闡述可用作元件506的元件的實例。
在各種實施例中,管理計算實體508可實行將流量及/或工作負荷路由至核心資料中心510的一或多個群集及/或一或多個邊緣資料中心520的一或多個群集。此外,管理計算實體508可運行模型/機器學習技術來例如基於監測的網路流量資訊確定與網路的不同部分的一或多個群集相關聯的參數(例如,延遲、能量使用等)。如上所述,在一些實施例中,管理計算實體508可運行機器學習模型來確定如何對工作負荷資料進行路由。以下結合圖8及圖9示出及闡述機器學習模型的實例。
在一些實施例中,核心資料中心510可包括可容納電腦系統及相關聯的組件(例如電信及儲存體系統及/或組件)的專用實體。此外,核心資料中心510可包括具有各種伺服器的群集(例如以上結合圖1至圖2示出及闡述的群集),所述伺服器具有用於執行工作負荷、儲存相關聯的資料、與網路502、邊緣資料中心(例如,邊緣資料中心520、行動邊緣資料中心530)、及/或網路架構的其他部分(未示出)傳送資料的計算資源、網路資源及儲存體資源。在一些實施例中,核心資料中心510可連接至各種元件(例如,元件513、514及516)。舉例而言,所述連接可為有線連接(例如,基於以太網路的)或無線連接(例如,基於Wi-Fi、5G及/或蜂巢的)。在另一實施例中,核心資料中心510可接收來自直接連接至核心資料中心510的各種元件(例如,元件513、514及516)工作負荷請求,且可執行給定工作負荷請求的至少一部分(將在以下進一步論述)。在一些實例中,核心資料中心510可向以直接或間接中的任一種方式連接至核心資料中心的各種元件傳輸給定工作負荷的結果。
在一些實施例中,邊緣資料中心512可指可容納電腦系統及相關聯的組件(例如電信及儲存體系統)的專用實體,且可具有許多與核心資料中心相同或類似的能力;然而,與核心資料中心相比,邊緣資料中心512可一般而言具有較小的實體佔地面積。此外,如上所述,邊緣資料中心512可在實體上更靠近終端使用者,且可藉此為某些工作負荷及應用提供減少的延遲。在一些實施例中,邊緣資料中心512可連接至核心資料中心或其他邊緣資料中心(例如,行動邊緣資料中心530或邊緣資料中心512)。此外,邊緣資料中心512的一或多個群集可接收來自直接連接至邊緣資料中心512的各種元件(例如,元件522、524及526)的工作負荷請求,且可執行給定工作負荷請求的至少一部分(將在本文中進一步論述)。在另一實施例中,邊緣資料中心512的所述一或多個群集可例如,使用快取同調協定(例如,CXL協定)將工作負荷的一部分傳輸至邊緣資料中心(例如,邊緣資料中心520)的其他群集或核心資料中心(例如,核心資料中心510)的其他群集。此外,邊緣資料中心512可向以直接或間接中的任一種方式連接至邊緣資料中心的各種元件傳輸給定工作負荷的結果。
圖6繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合第二拓撲進行操作的圖5所示代表性網路架構的另一圖。具體而言,圖600繪示出許多與如上所述圖5相同的部件。然而,圖600示出管理計算實體608,所述管理計算實體608可連接至此第二拓撲中的核心資料中心510的所述一或多個群集而非如圖5中所示網路502。此意味著例示管理計算實體可駐留於網路架構上不同位置處的可能性(例如,核心資料中心的一或多個群集相對於網路)。
在一些實施例中,圖600進一步示出其中網路502可藉由第一資料傳輸601向核心資料中心510的一或多個群集發起工作負荷請求的實例。舉例而言,連接至網路502的元件(例如,元件506)或主機(例如,主機504)可產生工作負荷,所述工作負荷可由網路502處理,網路502可藉由第一資料傳輸603發起工作負荷請求。管理計算實體608可再次監測與網路架構相關聯的參數(例如,以上結合圖4示出及闡述的除了資料傳輸速率、網路部分利用率、其組合、及/或類似物之外的參數)(例如包括但不限於與核心資料中心510以及例如邊緣資料中心520及邊緣資料中心512等各種邊緣資料中心的一或多個群集相關聯的網路參數)。
基於監測的結果,管理計算實體608可確定將工作負荷的至少一部分維持至核心資料中心510的一或多個群集。在一些實例中,管理計算實體608可進一步將工作負荷的不同部分路由至邊緣資料中心512、邊緣資料中心520、或者甚至行動邊緣資料中心530(例如,可例如藉由無線連接改變位置的邊緣資料中心)的一或多個群集。如前所述,為了確定將工作負荷路由至何處,管理計算實體608可運行機器學習技術,機器學習技術包含網路架構及網路的部分的各態樣,以確定與網路架構的不同部分相關聯的各種參數(例如,延遲、能量使用量、及/或類似物)。管理計算實體608可使用所述參數作為機器學習組件的輸入(以下將結合圖8及圖9進一步示出及闡述),以確定核心資料中心的一或多個群集及邊緣資料中心的一或多個群集之間的最佳路由,用於計算工作負荷。
圖7繪示出根據本揭露示例實施例的其中所揭露的實施例的各態樣可結合第三拓撲進行操作的圖5所示代表性網路架構的另一圖。具體而言,圖700繪示出許多與如上所示圖5相同的部件。然而,圖700示出管理計算實體708,管理計算實體708可連接至示例性邊緣資料中心(例如第三拓撲中的行動邊緣資料中心530)的一或多個群集而非如圖5中所示網路502的一或多個群集或者如圖6中所示核心資料中心510的一或多個群集。再次,此拓撲反映出管理計算實體可駐留於網路架構上不同位置處的可能性(例如,邊緣資料中心的一或多個群集相對於核心資料中心的一或多個群集及/或網路)。
在一些實施例中,圖700進一步示出網路502可藉由第一資料傳輸701向核心資料中心510的一或多個群集發起工作負荷請求,及/或藉由第二資料傳輸703向行動邊緣資料中心530發起工作負荷請求。舉例而言,連接至網路502的一或多個群集的元件(例如,元件506)或主機(例如,主機504)可產生工作負荷,所述工作負荷可由網路502的一或多個群集處理並藉由資料傳輸701發起工作負荷請求。管理計算實體708可再次監測與網路架構相關聯的參數(例如,結合圖4示出及闡述的參數,快取同調協定相關參數及/或資料傳輸速率、網路部分利用率、其組合、及/或類似物)(例如,包括但不限於與核心資料中心510的一或多個群集以及例如行動邊緣資料中心530、邊緣資料中心520及/或邊緣資料中心512等各種邊緣資料中心的一或多個群集相關聯的參數)。
基於對參數及相關聯的臨限值的監測及/或確定的結果,管理計算實體708可確定維持行動邊緣資料中心530的一或多個群集處處的工作負荷的至少一部分。在一些實例中,管理計算實體708可進一步將工作負荷的不同部分路由至核心資料中心510的一或多個群集、邊緣資料中心512的一或多個群集及/或邊緣資料中心520的一或多個群集。如前所述,為了確定將工作負荷路由至何處,管理計算實體708可使用所述參數作為機器學習組件的輸入(以下將結合圖8及圖9進一步示出及闡述),以確定核心資料中心與邊緣資料中心之間的最佳路由,計算工作負荷。
圖8繪示出根據本揭露示例性實施例的用於確定工作負荷跨越網路架構的不同部分的一或多個群集的分佈的監督機器學習方式的圖。具體而言,圖800示出基於參數確定給定工作負荷向核心資料中心及一或多個邊緣資料中心的一或多個群集的分佈的監督機器學習方式。更具體而言,圖800示出機器學習方式的訓練組件801,訓練組件801包括以下將闡述的網路802、參數804、標簽806、特徵向量808、管理計算實體810、機器學習組件812、處理器814及記憶體816。圖800進一步示出機器學習方式的推理組件803,推理組件803包括以下亦將闡述的參數820、特徵向量822、預測模型824、及預期分佈826。
現在轉向圖800中所示的各種組件,闡述更詳細的說明。具體而言,網路802可類似於以上結合圖5示出及闡述的網路502。在一些實例中,網路802可通訊地耦合至管理計算實體810。在一些實施例中,參數804可包括以上結合圖4示出及闡述的參數及/或在各種實體(例如結合圖5示出及闡述的實體)之間在網路架構的各個部分上傳輸的原始資料。在一些實例中,原始資料可包括但不限於網路的部分上的工作負荷、資料傳輸、延遲及/或資料傳輸速率。如上所述,所揭露的系統可被配置以監測任何適合的參數,以將工作負荷或工作負荷的部分路由至與群集相關聯的不同元件。此外,管理計算實體可基於系統的各種參數來實行此種操作,所述各種參數包括但不限於基於快取同調協定的(例如,基於CXL的)往返時間、對元件是處於主機偏置亦或元件偏置的判斷、基於快取同調協定的(例如,基於CXL的)交換機層次及/或主機上游埠至元件下游埠的綁定、基於快取同調協定的(例如,基於CXL的)交換機結構管理器配置、基於快取同調協定的(例如,基於CXL的)協定封包或實體媒體封包(例如,CXL.IO或PCIe干預大容量4KB封包)、網路延遲、基於快取同調協定的(例如,基於CXL的)記憶體技術(例如,記憶體類型)、其組合、及/或類似物。
在一些實施例中,標簽806可代表給定工作負荷跨越具有特定配置的示例性網路架構中的核心資料中心及一或多個邊緣資料中心的一或多個群集的最佳分佈。在一些實施例中,標簽806可使用模型的結果來確定。在各個態樣中,標簽806由此可用於訓練機器學習組件812,例如,以在推理組件803期間,預測給定未來工作負荷跨越核心資料中心及一或多個邊緣資料中心的一或多個群集的預期分佈826。
在一些實施例中,特徵向量808可代表各種感興趣的參數(例如,結合圖4示出及闡述的參數,延遲及/或資料傳輸速率、其組合、及/或類似物),在一些實例中,所述各種感興趣的參數可自原始資料擷取及/或可為參數804的部分。在一些實例中,特徵向量808可代表由管理計算實體觀察到的網路架構之上的傳輸的各個可量測性質或特性。
在其他實施例中,管理計算實體810可通訊地耦合至網路802,且可包括機器學習組件812、處理器814及記憶體816。具體而言,機器學習組件812可使用任何適合的機器學習技術來產生預期分佈826的預測模型824,以用於對跨越核心資料中心及一或多個邊緣資料中心的一或多個群集的給定工作負荷進行處理。非限制性機器學習技術可包括但不限於監督學習技術(結合圖8示出及闡述)、無監督學習技術(結合圖9示出及闡述)、強化學習技術、自學習技術、特徵學習技術、關聯規則技術、其組合、及/或類似技術。附加的非限制性機器學習技術可包括但不限於特定實施方式,例如人工神經網路、決策樹、支援向量機(support vector machine,SVM)、回歸分析技術、貝葉斯網路技術(Bayesian network technique)、遺傳演算法技術(genetic algorithm technique)、其組合、及/或類似技術。
如上所述,圖800包括推理組件803。具體而言,推理組件803可類似於訓練組件801,此乃因接收到參數820,擷取了特徵向量(例如,藉由管理計算實體810),且執行預測模型824的機器學習組件812用於確定預期分佈826(對跨越核心資料中心及一或多個邊緣資料中心的一或多個群集的給定工作負荷進行處理)。推理組件803與訓練組件801之間的一個差異在於推理組件可能不接收標簽(例如,標簽806)來訓練機器學習組件以確定分佈。因此,在推理組件803的操作模式中,管理計算實體810可確定給定工作負荷實況的預期分佈826。隨後,若錯誤率(例如,基於給定工作負荷的總延遲減少來定義)低於預定臨限值,則可使用訓練組件801來重新訓練機器學習組件812(例如,不同標簽806與不同或類似的網路參數804相關聯)。推理組件803可隨後運行以將錯誤率改善至預定臨限值以上。
圖9繪示出根據本揭露示例性實施例的用於確定工作負荷跨越網路架構的不同部分的分佈的無監督機器學習方式的圖。具體而言,圖900示出連接至管理計算實體910的網路902。此外,圖900包括機器學習方式的訓練組件901,訓練組件901包括參數904、特徵向量908、具有機器學習組件912的管理計算實體910、處理器914及記憶體916。此外,圖900包括機器學習方式的訓練組件903,訓練組件903包括參數920、特徵向量922、模型924以及跨越核心及邊緣資料中心的一或多個群集的工作負荷的預期分佈926。
現在轉向圖900中所示的各種組件,提供更詳細的說明。具體而言,網路902可類似於以上結合圖5示出及闡述的網路502。在一些實例中,網路902可通訊地耦合至管理計算實體910。在一些實施例中,網路參數904可包括在例如結合圖5示出及闡述的網路架構的各個部分上傳輸的原始資料。在一些實例中,原始資料可包括但不限於工作負荷、資料傳輸、網路的部分上的延遲及/或資料傳輸速率、其組合、及/或類似物。
在一些實施例中,與代表給定工作負荷跨越以上結合圖8示出及闡述的核心資料中心及一或多個邊緣資料中心的一或多個群集的最佳分佈的標簽806相反,訓練組件901可不具有此種標簽。相反,管理計算實體910可在沒有任何標簽的條件下訓練機器學習組件912(例如,使用推理組件903來預測跨越核心資料中心及一或多個邊緣資料中心的一或多個群集的給定未來工作負荷的預期分佈926)。
在一些實施例中,特徵向量908可代表可自可作為參數94的部分的原始資料擷取的各種感興趣的參數(例如,延遲及/或資料傳輸速率)。在一些實例中,特徵向量908可代表由管理計算實體觀察到的網路架構之上的傳輸的各個可量測性質或特性。
在其他實施例中,管理計算實體910可通訊地耦合至網路902,且可包括機器學習組件912、處理器914及記憶體916。具體而言,機器學習組件912可使用任何適合的機器學習技術來產生預期分佈926的模型924(對跨越核心資料中心及一或多個邊緣資料中心的一或多個群集的給定工作負荷進行處理)。
如上所述,圖900包括推理組件903。具體而言,推理組件903可類似於訓練組件901,此乃因接收到參數920,擷取了特徵向量922(例如,由管理計算實體910實行),且執行模型924的機器學習組件910用於確定預期分佈926(對跨越核心資料中心及一或多個邊緣資料中心的一或多個群集的給定工作負荷進行處理)。因此,在推理組件903的操作模式中,管理計算實體910可確定給定工作負荷實況的預期分佈926。隨後,若錯誤率(例如,基於給定工作負荷的總延遲減少來定義)低於預定臨限值,則可使用訓練組件901來重新訓練機器學習組件912。推理組件903可隨後運行以將錯誤率改善至預定臨限值以上。
除了及/或結合上述各種參數,所揭露的系統可附加地考慮用於使用機器學習及/或任何其他適合的基於AI的技術將I/O自一個群集動態地路由至另一群集的參數,所述參數可包括但不限於每群集/機架/伺服器/元件的能量成本/使用量、給定時間間隔內每群集/機架/伺服器/元件的峰值負荷、每群集/機架/伺服器/元件的熱效率(例如,產生的熱量的以每英國熱量單位(British Thermal Unit,BTU)週期數)、給定群集/機架/伺服器/元件中可用的處理器的類型(例如基於x86的製程)及給定群集/機架/伺服器/元件中可用的處理器的數目、以及自快取同調的角度來看的對稱程度。此外,所揭露的系統可考慮群集的構成記憶體資源,例如,可為每群集/機架/伺服器/元件的記憶體技術的類型(例如,DRAM、三層胞元(Triple-level cell,TLC)、四層胞元(quad-level cell,QLC)等)。
在各種實施例中,所揭露的系統可確定用於將給定工作負荷路由至一或多個群集的附加標準。舉例而言,所揭露的系統可確定資料速率、網路連接的物質基礎、及訊號損耗預算中的一或多者,以確定對於與資料傳輸相關聯的給定位元錯誤率,訊號可在給定網路上傳輸的最大距離(例如,基於PCIe第五代的網路)。
作為另一實例,所揭露的系統可判斷是否需要重定時器(數目及位置)以及使用重定時器來確定總延遲增加將會增加什麼延遲。
在各種實施例中,對於具有不對稱同調性的不對稱資料流,所揭露的系統可確定哪個群集/機架/伺服器/元件使用什麼資料路徑。此外,所揭露的系統可針對給定的工作負荷及每一子功能的相關聯的預期延遲來確定故障,然後使用CXL將資料路由至最低延遲加速器以加速最關鍵的部分。舉例而言,對於對象偵測工作負荷,所揭露的系統可基於以上針對圖像分割階段而非針對對象資料庫檢索階段的技術對資料進行路由,或反之亦然。
如上所述,在一些態樣中,管理計算單元910可使用人工智慧(AI)(例如,以上結合圖8及圖9示出及闡述的機器學習組件)來確定網路架構的部分之間的工作負荷路由,例如,藉由隨時間監測網路不同部分之上的資料流(例如,歷史資料)以增強的工作負荷路由。因此,本文中闡述的元件、管理計算實體、及/或相關組件的實施例可採用AI來有利於將本文中闡述的一或多個特徵自動化。所述組件可採用各種基於AI的方案來施行本文中揭露的各種實施例/實例。為了提供或幫助本文中所述的許多確定(例如,確定、探知、推理、計算、預測、預知、估計、導出、預判、偵測、計算)時,本文中闡述的組件可根據藉由事件及/或資料捕獲的一組觀察,檢查它被授權存取的資料的整體或子集且可提供關於系統、環境等的推斷或確定狀態。舉例而言,確定可用於識別特定的上下文或動作,或者可產生狀態的概率分佈。所述確定可為概率性的,即基於對資料及事件的考慮來計算感興趣的狀態的概率分佈。確定亦可指用於自一組事件及/或資料構成更高級別事件的技術。
此種確定可導致根據一組觀察到的事件及/或儲存的事件資料構建新的事件或動作,而無論所述事件在時間上是否緊密相關以及所述事件及資料是否來自一或多個事件及資料源。本文中揭露的組件可採用結合實行結合所主張的標的自動及/或確定的動作的各種分類(明確訓練的(例如,藉由訓練資料)以及隱式訓練的(例如,藉由觀察行為、偏好、歷史資訊、接收外部資訊等))方案及/或系統(例如,支援向量機、神經網路、專家系統、貝葉斯信念網路、模糊邏輯、資料融合引擎等)。因此,分類方案及/或系統可用於自動學習及實行許多功能、動作及/或確定。在一些態樣中,神經網路可包括但不限於長短期記憶(long short term memory,LSTM)神經網路、遞歸神經網路、時延神經網路、或前饋神經網路中的至少一者。
分類器可將輸入屬性向量,z = (z1、z2、z3、z4、…、zn)映射至輸入屬於一類的置信度,如f(z) =置信度(分類)。此種分類可採用基於概率及/或統計的分析來確定將自動實行的動作。支援向量機(SVM)可為可採用的分類器的實例。SVM藉由在可能的輸入的空間中找到超曲面(hyper-surface)來運行,其中超曲面試圖將觸發標準與非觸發事件分開。直觀地講,此使得分類對於接近但不同於訓練資料的測試資料而言是正確的。其他有向及無向模型分類方法包括例如可採用樸素貝葉斯(naïve Bayes)、貝葉斯網路、決策樹、神經網路、模糊邏輯模型、及/或提供不同獨立性模式的概率分類模型。本文中使用的分類亦包括用於開發優先級模型的統計回歸。
圖10示出可用於實踐本揭露實施例的系統的示例性示意圖。如圖10中所示,此特定實施例可包括一或多個管理計算實體1000、一或多個網路1005、以及一或多個使用者元件1010。該些組件、實體、元件、系統及類似本文中可互換使用的詞語中的每一者可例如藉由相同或不同的有線或無線網路(例如,結合圖5示出及闡述的網路502,包括但不限於邊緣資料中心及/或核心資料中心及相關聯的群集)彼此直接或間接地進行通訊。另外,儘管圖10將各種系統實體示出為分開的獨立實體,但各種實施例並不限於此種特定的架構。此外,管理計算實體1000可包括本文中闡述的機器學習組件。如上所述,可使用任何適合的協定(例如,5G網路協定、快取同調性協定)來實施通訊,如本文中進一步所述。
圖11示出根據本揭露示例性實施例的管理計算實體的示例性示意圖。此外,管理計算實體1100可包括內容組件、處理組件及傳輸組件(未示出)。具體而言,內容組件可用於確定指示將藉由在本文中闡述的網路架構傳輸的資料(例如,視訊、音訊、文本、資料、其組合及/或類似物)的訊號。在另一實施例中,對傳輸的訊號的確定可例如基於元件的使用者輸入、網路上資料傳輸的預定排程表、網路條件的改變、及/或類似物。在一個實施例中,訊號可包括可將資料包封於資料訊框(例如,5G資料訊框及/或快取同調協定資料訊框)中,資料訊框被配置以自元件被發送至網路上的一或多個元件。
在另一實施例中,處理部件1105可用於確定與藉由網路傳輸的資料相關聯的各種參數(例如,以上結合圖10示出及闡述的網路1005)及/或與網路部分的群集相關聯的參數。舉例而言,處理部件1105可用於進行在網路資料上運行模型、在網路資料上運行機器學習技術、確定將由網路架構的各個部分處理的工作負荷的分佈、其組合、及/或類似操作。作為另一實例,處理部件1105可用於進行在網路資料上運行模型、在與網路的群集的不同效能能力相關聯的參數上運行機器學習技術、確定將由網路架構的部分的群集處理的工作負荷的分佈、其組合、及/或類似操作。
在一個實施例中,傳輸組件(未示出)可用於將訊號自網路上的一個元件傳輸至另一元件(例如(舉例而言)使用快取同調性協定,自第一群集上的第一元件傳輸至第二群集上的第二元件)。舉例而言,傳輸組件可用於準備傳輸機(例如,以下圖12所示傳輸機1204)以藉由網路傳輸訊號。舉例而言,傳輸組件可將資料排隊於一或多個緩衝器中,可確定傳輸元件及相關聯的傳輸機是功能性的且具有足夠的功率來藉由網路傳輸訊號,可調節與資料的傳輸相關聯的一或多個參數(例如,調變類型、訊號放大、訊號功率位準、雜訊抑制、其組合、及/或類似物)。
一般而言,用語計算實體、電腦、實體、元件、系統及/或類似本文中可互換使用的詞語可指例如一或多個電腦、計算實體、桌上型電腦、行動電話、平板電腦、大螢幕電話(phablet)、筆記型電腦、膝上型電腦、分佈式系統、遊戲控制台(例如X盒(Xbox)、遊戲站(Play Station)、維(Wii))、手錶、眼鏡、伊巴康(iBeacon)、接近信標(proximity beacon)、鑰煉(key fob)、射頻識別(radio frequency identification,RFID)標誌(tag)、耳機、掃描儀、電視機、伺服器鑰(dongle)、照相機、腕帶、可穿戴物品/元件、資訊站、輸入終端、伺服器或伺服器網路、刀片、閘道、交換機、處理元件、處理實體、機上盒(set-top box)、繼電器、路由器、網路存取點、基站、類似物、及/或適合於實行本文中闡述的功能、操作和/或製程的元件或實體的任何組合。此種功能、操作及/或製程可包括例如傳輸、接收、操作、處理、顯示、儲存、確定、創建/產生、監測、評估、比較、及/或類似本文中可互換使用的用語。在一個實施例中,該些功能、操作及/或製程可對資料、內容、資訊、及/或類似本文中可互換使用的用語實行。
如所指示的,在一個實施例中,管理計算實體1000亦可包括用於例如藉由傳送資料、內容、資訊、及/或類似本文中可互換使用的用語(可被進行傳送、接收、操作、處理、顯示、儲存、及/或類似操作)與各種計算實體進行通訊的一或多個通訊介面1120。舉例而言,管理計算實體1000可與使用者元件1010及/或各種其他計算實體進行通訊。
如圖11中所示,在一個實施例中,管理計算實體1000可包括一或多個處理部件1105(亦稱為處理器、處理電路系統、及/或類似本文中可互換使用的用語)(例如藉由匯流排與管理計算實體1000內的其他部件進行通訊)與所述一或多個處理部件1105進行通訊。應理解,處理部件1105可以多種不同的方式實施。舉例而言,處理部件1105可被實施成一或多個複雜的可程式化邏輯元件(complex programmable logic device,CPLD)、微處理器、多核處理器、協處理實體、應用專用指令集處理器(application-specific instruction-set processor,ASIP)、微控制器、及/或控制器。此外,處理部件1105可被實施成一或多個其他處理元件或電路系統。用語電路系統可指完全硬體的實施例或者硬體與電腦程式產品的組合。因此,處理部件1105可被實施成積體電路、應用專用積體電路(ASIC)、現場可程式化閘陣列(FPGA)、可程式化邏輯陣列(programmable logic array,PLA)、硬體加速器、其他電路系統、及/或類似物。因此,應理解,處理部件1105可被配置用於特定用途或者被配置以執行儲存於揮發性或非揮發性媒體中或者可由處理部件1105以其他方式存取的指令。如此一來,無論是由硬體或電腦程式產品配置亦或由其組合配置,當相應地進行配置時,處理部件1105均可能夠實行根據本揭露實施例的步驟或操作。
在一個實施例中,管理計算實體1000可更包括非揮發性媒體(亦稱為非揮發性儲存體、記憶體、記憶體儲存體、記憶體電路系統、及/或類似本文中可互換使用的用語)或者與所述非揮發性媒體進行通訊。在一個實施例中,非揮發性儲存體或記憶體可包括一或多個非揮發性儲存或記憶媒體1110,包括但不限於硬碟、ROM、PROM、EPROM、EEPROM、快閃記憶體、MMC、SD記憶卡、記憶棒、CBRAM、PRAM、FeRAM、NVRAM、MRAM、RRAM、SONOS、FJG RAM、馬陸記憶體、跑道記憶體、及/或類似物。應認識到,非揮發性儲存或記憶媒體可儲存資料庫、資料庫例子、資料庫管理系統、資料、應用、程式、程式組件、腳本、源代碼、程式代碼、目標代碼、位元組代碼、編譯代碼、解釋代碼、機器代碼、可執行指令、及/或類似物。用語資料庫、資料庫實例子、資料庫管理系統、及/或類似本文中可互換使用的用語可指使用一或多個資料庫模型儲存於電腦可讀取儲存媒體中的記錄或資料的集合,所述資料庫模型例如分層資料庫模型、網路模型、關係模型、實體-關係模型、對象模型、文件模型、語義模型、圖形模型、及/或類似模型。
在一個實施例中,管理計算實體1000可更包括揮發性媒體(亦稱為揮發性儲存體、記憶體、記憶體儲存體、記憶體電路系統及/或類似本文中可互換使用的用語)或者與所述揮發性媒體進行通訊。在一個實施例中,揮發性儲存體或記憶體亦可包括一或多個揮發性儲存或記憶媒體1115,包括但不限於RAM、DRAM、SRAM、FPM DRAM、EDO DRAM、SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、RDRAM、TTRAM、T-RAM、Z-RAM、RIMM、DIMM、SIMM、VRAM、快取記憶體、暫存器記憶體、及/或類似物。應認識到,揮發性儲存或記憶媒體可用於儲存由例如處理部件1105執行的資料庫、資料庫例子、資料庫管理系統、資料、應用、程式、程式組件、腳本、源代碼、程式代碼、目標代碼、位元組代碼、編譯代碼、解釋代碼、機器代碼、可執行指令、及/或類似物的至少部分。因此,資料庫、資料庫例子、資料庫管理系統、資料、應用、程式、程式組件、腳本、目標代碼、位元組代碼、編譯代碼、解釋代碼、機器代碼、可執行指令、及/或類似物可在處理部件1105及操作系統的輔助下用於控制管理計算實體1000的操作的某些態樣。
如所指示的,在一個實施例中,管理計算實體1000亦可包括用於例如藉由傳送資料、內容、資訊、及/或類似本文中可互換使用的用語(可被進行傳送、接收、操作、處理、顯示、儲存、及/或類似操作)與各種計算實體進行通訊的一或多個通訊介面1120。此種通訊可使用例如以下等有線資料傳輸協定來執行:快速周邊組件互連(PCIe)、光纖分佈式資料介面(fiber distributed data interface,FDDI)、數位用戶線路(digital subscriber line,DSL)、以太網路、異步傳送模式(asynchronous transfer mode,ATM)、訊框中繼、纜上資料服務介面規格(data over cable service interface specification,DOCSIS)、或任何其他有線傳輸協定。類似地,管理計算實體1000可被配置以使用例如以下等多種協定中的任意者經由無線外部通訊網路進行通訊:通用封包無線電服務(general packet radio service,GPRS)、通用行動電信系統(Universal Mobile Telecommunications System,UMTS)、碼分多重存取2000(Code-Division Multiple Access 2000,CDMA2000)、CDMA2000 1X(1x無線電傳輸技術(radio transmission technology,RTT))、寬頻碼分多重存取(Wideband Code Division Multiple Access,WCDMA)、時分同步碼分多重存取(Time Division-Synchronous Code Division Multiple Access,TD-SCDMA)、長期演進(Long Term Evolution,LTE)、演進通用陸地無線電存取網路(Evolved Universal Terrestrial Radio Access Network,E-UTRAN)、演進資料最佳化(Evolution-Data Optimized,EVDO)、高速封包存取(High Speed Packet Access,HSPA)、高速下行封包存取(High-Speed Downlink Packet Access,HSDPA)、IEEE 802.11(Wi-Fi)、Wi-Fi 直連、802.16(全球互通微波存取(worldwide interoperability for microwave access,WiMAX))、超寬頻(Ultra-Wideband,UWB)、紅外(Infrared,IR)協定、近場通訊(near field communication,NFC)協定、紫蜂(ZigBee)、藍牙協定、5G協定、無線通用串列匯流排(universal serial bus,USB)協定、及/或任何其他無線協定。
儘管未示出,但管理計算實體1000可包括一或多個輸入元件(例如鍵盤輸入、滑鼠輸入、觸摸屏/顯示器輸入、運動輸入、移動輸入、音訊輸入、定點元件輸入、操縱桿輸入、小鍵盤輸入、及/或類似輸入)或者與所述一或多個輸入元件進行通訊。管理計算實體1000亦可包括一或多個輸出元件(未示出)(例如音訊輸出、視訊輸出、螢幕/顯示器輸出、運動輸出、移動輸出、及/或類似輸出)或者與所述一或多個輸出元件進行通訊。
應理解,管理計算實體1000中的一或多者的組件可遠離其他管理計算實體1000組件定位,例如位於分佈式系統中。此外,一或多個組件可被組合且實行本文中闡述的功能的附加組件可包括於管理計算實體1000中。因此,管理計算實體1000可適於適應各種需要及環境。應認識到,該些架構及說明僅是出於示例性目的而提供的且並不限於各種實施例。
使用者可為個人、家庭、公司、組織、實體、組織內的部門、組織及/或個人的代表、及/或類似者。在一個實例中,使用者可為雇員、居民、顧客、及/或類似者。舉例而言,使用者可操作使用者元件1010,使用者元件1010包括功能上類似於管理計算實體1000的一或多個組件的一或多個組件。
在各個態樣中,處理組件、傳輸組件及/或接收組件(未示出)可被配置以在一或多個上操作,所述一或多個態樣可包括管理計算實體1000的功能的態樣,如此處結合圖10及圖11示出及闡述。具體而言,處理組件、傳輸組件及/或接收組件可被配置以與一或多個處理部件1105、記憶體1110、揮發性記憶體1115進行通訊,且可包括通訊介面1120(例如,以有利於元件之間的通訊)。
圖12示出根據本揭露示例性實施例的使用者元件的示例性示意圖。圖12提供可結合本揭露的實施例使用的使用者元件1010(結合圖10示出)的例示性示意性代表團。一般而言,用語元件、系統、計算實體、實體、及/或類似本文中可互換使用的詞語可指例如一或多個電腦、計算實體、桌上型電腦、行動電話、平板電腦、大螢幕電話、筆記型電腦、膝上型電腦、分佈式系統、遊戲控制台(例如Xbox、遊戲站、Wii)、手錶、眼鏡、鑰煉、射頻識別(RFID)標誌、耳機、掃描儀、照相機、腕帶、資訊站、輸入終端、伺服器或伺服器網路、刀片、閘道、交換機、處理元件、處理實體、機上盒、繼電器、路由器、網路存取點、基站、類似物、及/或適於實行本文中闡述的功能、操作和/或製程的元件或實體的任何組合。使用者元件1010可由各方操作。如圖12中所示,使用者元件1010可包括天線1212、傳輸機1204(例如無線電)、接收機1206(例如無線電)、及處理部件1208(例如CPLD、FPGA、微處理器、多核處理器、協處理實體、ASIP、微控制器、及/或控制器),處理部件1208分別向接收機1206提供訊號及自傳輸機1204接收訊號。
分別提供至接收機1206及自傳輸機1204接收的訊號可包括根據適用無線系統的空中介面標準的信令資訊。在此方面,使用者元件1010可能夠以一或多個空中介面標準、通訊協定、調變類型及存取類型進行操作。更具體而言,使用者元件1010可根據多種無線通訊標準及協定(例如以上針對圖10所示管理計算實體1000闡述的該些標準及協定)中的任意者進行操作。在特定實施例中,使用者元件1010可根據例如以下等多種無線通訊標準及協定進行操作:所揭露的物聯網(Internet of things,IoT)DOCSIS協定、UMTS、CDMA2000、1xRTT、WCDMA、TD-SCDMA、LTE、E-UTRAN、EVDO、HSPA、HSDPA、5G、Wi-Fi、Wi-Fi直連、WiMAX、UWB、IR、NFC、藍牙、USB、及/或類似協定。類似地,使用者元件1010可經由網路介面1220根據多種有線通訊標準及協定(例如以上針對管理計算實體1000闡述的該些標準及協定)進行操作。
藉由該些通訊標準及協定,使用者元件1010可使用例如非結構化補充服務資料(Unstructured Supplementary Service Data,USSD)、短訊息服務(Short Message Service,SMS)、多媒體訊息處理服務(Multimedia Messaging Service,MMS)、雙音多頻信令(Dual-Tone Multi-Frequency Signaling,DTMF)、及/或用戶身份組件撥號器(Subscriber Identity Component Dialer,SIM dialer)等概念與各種其他實體進行通訊。使用者元件1010亦可下載例如對其韌體、軟體(例如包括可執行指令、應用、程式組件)及操作系統的改變、附加組件(add-ons)及更新。
根據一個實施例,使用者元件1010可包括位置確定態樣、元件、組件、功能、及/或類似本文中可互換使用的詞語。位置確定態樣可用於通知管理計算實體所使用的模型以及本文中闡述的模型及/或機器學習技術中的一或多者。舉例而言,使用者元件1010可包括室外定位態樣,例如適於獲取例如緯度、經度、海拔、地理編碼、路線、方向、航向、速度、世界時(universal time,UTC)、日期及/或各種其他資訊/資料的定位組件(location component)。在一個實施例中,定位組件可藉由識別可見衛星的數目及該些衛星的相對位置來獲取資料,有時稱為星曆資料。衛星可為各種不同的衛星,包括低地球軌道(Low Earth Orbit,LEO)衛星系統、國防部(Department of Defense,DOD)衛星系統、歐盟伽利略定位系統(European Union Galileo positioning system)、中國羅盤導航系統、印度區域導航衛星系統(Indian Regional Navigational satellite system)、及/或類似系統。作為另一種選擇,可藉由結合各種其他系統(包括蜂巢式塔、WiFi存取點、及/或類似物)對使用者元件1010的位置進行三角量測來確定位置資訊。類似地,使用者元件1010可包括室內定位態樣,例如適於獲取例如緯度、經度、海拔、地理編碼、路線、方向、航向、速度、時間、日期及/或各種其他資訊/資料的定位組件。室內系統中的一些室內系統可使用各種位置或尋位(position)或定位技術,所述各種尋位或定位技術包括RFID標誌、室內信標或傳輸機、WiFi存取點、蜂巢式塔、附近的計算元件(例如智慧型電話、膝上型電腦)、及/或類似物。舉例而言,此種技術可包括伊巴康、萬向接近信標(Gimbal proximity beacon)、藍牙低能量(Bluetooth Low Energy,BLE)傳輸機、NFC傳輸機、及/或類似物。該些室內定位態樣可用於各種設定,以確定某人或某物在幾英吋或幾公分內的位置。
使用者元件1010亦可包括使用者介面(使用者介面可包括耦合至處理部件1208的顯示器1216)及/或使用者輸入介面(耦合至處理部件1208)。舉例而言,使用者介面可為在使用者元件1010上執行及/或可藉由使用者元件1010進行存取以與管理計算實體1000進行交互及/或使得顯示來自管理計算實體1000的資訊的使用者應用、瀏覽器、使用者介面及/或類似本文中可互換使用的詞語,如本文中所闡述。使用者輸入介面可包括使得使用者元件1010能夠接收資料的多個元件或介面(例如小鍵盤1218(硬的或軟的)、觸摸顯示器、聲音/語音或運動介面、或者其他輸入元件)中的任意者。在包括小鍵盤1218的實施例中,小鍵盤1218可包括(或使得顯示)傳統的數字碼(0至9)及相關鍵(#、*)、以及其他用於操作使用者元件1010的鍵,且可包括完整的字母鍵集合或可被激活以提供完整的字母數字鍵集合的鍵集合。除了提供輸入之外,使用者輸入介面亦可用於例如激活或停用某些功能,例如螢幕保護器及/或睡眠模式。
使用者元件1010亦可包括可為嵌入式的及/或可為可移除的揮發性儲存體或記憶體1222及/或非揮發性儲存體或記憶體1224。舉例而言,非揮發性記憶體可為ROM、PROM、EPROM、EEPROM、快閃記憶體、MMC、SD記憶卡、記憶棒、CBRAM、PRAM、FeRAM、NVRAM、MRAM、RRAM、SONOS、FJG RAM、馬陸記憶體、跑道記憶體、及/或類似物。揮發性記憶體可為RAM、DRAM、SRAM、FPM DRAM、EDO DRAM、SDRAM、DDR SDRAM、DDR2 SDRAM、DDR3 SDRAM、RDRAM、TTRAM、T-RAM、Z-RAM、RIMM、DIMM、SIMM、VRAM、快取記憶體、暫存器記憶體、及/或類似物。揮發性及非揮發性儲存體或記憶體可儲存資料庫、資料庫例子、資料庫管理系統、資料、應用、程式、程式組件、腳本、源代碼、目標代碼、位元組代碼、編譯代碼、解釋代碼、機器代碼、可執行指令、及/或類似物以實施使用者元件1010的功能。如所指示的,此可包括駐留於實體上或可藉由瀏覽器或其他使用者介面進行存取的使用者應用,以用於與管理計算實體1000及/或各種其他計算實體進行通訊。
在另一實施例中,使用者元件1010可包括與管理計算實體1000的組件或功能相同或類似的一或多個組件或功能,如以上所更詳細闡述。應認識到,該些架構及說明僅是出於示例性目的而提供的且並不限於各種實施例。
圖13是根據本揭露示例性實施例的操作所揭露的系統以確定跨越網路的一或多個群集的工作負荷分佈的示例性方法1300的例示。在方塊1302處,所揭露的系統可確定參數的與第一群集中的至少一個第一元件相關聯的第一值。在方塊1304處,所揭露的系統可基於參數的第一值來確定臨限值。在方塊1306處,所揭露的系統可接收對第一元件處的工作負荷進行處理的請求。在方塊1308處,所揭露的系統可確定參數的與第二群集中的至少一個第二元件相關聯的第二值滿足所述臨限值。在方塊1310處,所揭露的系統可因應於滿足臨限值,將工作負荷的至少一部分路由至第二元件。
圖14是根據本揭露示例性實施例的操作所揭露的系統以確定跨越網路的一或多個群集的工作負荷分佈的另一示例性方法1400的例示。在方塊1402處,所揭露的系統可確定實施直接附接式記憶體架構、彙集式記憶體架構、分佈式記憶體架構及分解式記憶體架構的群集的效能參數。在方塊1404處,所揭露的系統可確定工作負荷預計的記憶體使用要求及可接受的效能參數臨限值。在方塊1406處,所揭露的系統可基於工作負荷預計的記憶體使用要求及對應的效能參數來計算每一群集的得分。在方塊1408處,所揭露的系統可將工作負荷路由至具有最高得分的記憶體群集。
圖15是根據本揭露示例性實施例的操作所揭露的系統以確定工作負荷在包括如本文所述的群集的網路架構之上的分佈的示例性方法1500的例示。在方塊1502處,所揭露的系統可自通訊地耦合至網路的主機接收工作負荷。在一些實施例中,主機可包括網際網路上的主機。在一些實例中,工作負荷可源發(originate)自連接至的主機的、請求特定服務(例如,視訊流請求、搜索請求、其組合、及/或類似物)的元件,例如使用者元件(例如,行動電話)。在一些態樣中,自主機接收工作負荷可類似於(但不一定相同於)以上結合圖5示出及闡述的製程。
在方塊1504處,所揭露的系統可自邊緣資料中心接收工作負荷。類似於方塊1502,工作負荷可源發自連接至邊緣資料中心的、請求特定服務(例如,視訊流請求、搜索請求、其組合、及/或類似物)的元件,例如使用者元件(例如,行動電話)。在一些態樣中,自主機接收工作負荷可類似於(但不一定相同於)以上結合圖7示出及闡述的製程。
在方塊1506處,所揭露的系統可自核心資料中心接收工作負荷。類似於方塊1502及1504,工作負荷可源發自連接至邊緣資料中心或核心資料中心的、請求特定服務(例如,視訊流請求、搜索請求等)的元件,例如使用者元件(例如,行動電話)。在一些態樣中,自主機接收工作負荷可類似於(但不一定相同於)以上結合圖6示出及闡述的製程。
在一些實例中,所揭露的系統可例如以分解的方式自主機、邊緣資料中心及/或核心資料中心中的任意者的組合接收工作負荷的一部分。舉例而言,請求服務的不止一個元件可以同級間(P2P)連接來連接且可源發可在網路架構的不同部分(例如,主機、邊緣資料中心及/或核心資料中心)處被接收的複合工作負荷。此外,所揭露的系統可在管理計算實體處聚集部分工作負荷請求(其本身可在網路架構上的任何適合的位置處部分或全部地被執行),以用於根據以下闡述的操作進行進一步處理。
在方塊1508處,所揭露的系統可接收與核心資料中心及邊緣資料中心中的群集相關聯的參數。具體而言,所揭露的系統可採用本文中不同地示出及闡述的管理計算實體來監測網路架構以確定參數。在一些實施例中,所揭露的系統可截取或以其他方式存取在網路架構的各個部分上傳輸的原始資料,並根據原始資料確定某些參數,所述參數包括但不限於例如資料速率、機器利用率、記憶體容量、遠端記憶體容量、及/或類似參數,如以上結合圖4進一步示出及闡述。
在方塊1510處,所揭露的系統可基於參數來確定與在核心資料中心及邊緣資料中心的群集上執行的工作負荷相關聯的預期延遲或能量使用量。具體而言,所揭露的系統可使用結合圖8至圖9進一步示出及闡述的模型來確定與工作負荷相關聯的延遲。延遲的非限制性實例可包括服務時間延後(delay)(包括處理及通訊延後)。在一些實施例中,所揭露的系統可確定映射至實施特定協定(例如,5G網路協定)的特定網路架構的延遲。此外,能量使用量的非限制性實例可包括在給定核心或邊緣資料中心的群集上執行特定工作負荷的每瓦特效能或每單位貨幣(例如,美元)效能。
在方塊1512處,所揭露的系統可能可選地執行模型來確定向邊緣資料中心或核心資料中心的群集的路由。具體而言,所揭露的系統可實施機器學習技術來確定向邊緣資料中心或核心資料中心的最佳路由。舉例而言,所揭露的系統可實施監督機器學習技術(如結合圖8進一步示出及闡述)或無監督機器學習技術(如結合圖9進一步示出及闡述),以確定將工作負荷路由至與邊緣資料中心或核心資料中心相關聯的群集的預期分佈。在其他實例中,所揭露的系統可實施預定規則(例如,使用者規定的策略),以用於將工作負荷路由至邊緣資料中心或核心資料中心的群集,此與機器學習方式相反或相結合。
在方塊1514處,所揭露的系統可至少部分地基於模型的結果來確定工作負荷向核心資料中心或邊緣資料中心的群集的分佈。具體而言,所揭露的系統可確定將工作負荷的第一部分傳輸至核心資料中心的群集並將工作負荷的第二部分傳輸至邊緣資料中心的群集,如所確定的分佈所表徵。在一些實施例中,所揭露的系統可確定可能影響網路架構的特定參數(例如,減少總延遲(例如,服務延後))的分佈。在其他態樣中,所揭露的系統可進一步確定分佈以減少與網路架構相關聯的其他因素,所述其他因素包括但不限於網路的頻寬使用、網路或網路的部分的功率使用、其組合、及/或類似因素。
圖16A是根據本揭露示例性實施例的將工作負荷路由至網路架構之上的核心資料中心的群集及一或多個邊緣資料中心的群集的所揭露系統的示例性方法1600的例示。在方塊1602處,所揭露的系統可接收工作負荷及工作負荷的分佈。在一些實施例中,駐留於核心網路上的管理計算實體可接收工作負荷及分佈。如上所述,工作負荷可源發自連接至網際網路上的主機者或核心資料中心的、請求特定服務(例如,視訊流請求、搜索請求、其組合、及/或類似物)的元件,例如使用者元件(例如,行動電話)。此外,工作負荷的分佈可根據以上結合圖8及圖9闡述的機器學習技術的結果來確定且在整個揭露中進行闡述。在實例中,可至少部分地基於第一可程式化預期延遲與第二可程式化預期延遲之間的差異來確定分佈,第一可程式化預期延遲與和核心資料中心相關聯的群集中的至少一個元件相關聯,第二可程式化預期延遲與和邊緣資料中心中的超過預期臨限值的元件相關聯的元件相關聯。
在方塊1604處,所揭露的系統可基於分佈將工作負荷的一部分及與工作負荷的所述部分相關聯的資料路由至一或多個邊緣資料中心的一或多個群集。具體而言,所揭露的系統可將工作負荷的離散組件解散成模組化任務,產生與工作負荷的離散組件相關聯的一系列封包,並適當地在網路架構之上將封包傳輸至網路的指定部分(例如,與一或多個邊緣資料中心相關聯的各種群集)。此外,所揭露的系統可利用任何適當的標頭來包封離散組件,以便藉由任何下伏網路媒體進行傳輸。舉例而言,所揭露的系統可利用與第一網路協定(例如,5G協定)相關聯的第一元資料來包封工作負荷的離散組件,且可利用與第二網路協定(例如,以太網路協定)相關聯的第二元資料來包封工作負荷的離散組件,以分別傳輸至與第一邊緣資料中心相關聯的群集及與第二邊緣資料中心相關聯的另一群集。
在方塊1606處,所揭露的系統可對工作負荷的位於核心資料中心的一或多個群集處的另一部分以及與工作負荷的所述部分相關聯的資料進行處理。具體而言,所揭露的系統可留存工作負荷的一部分,以用於在與核心資料中心相關聯的一或多個群集處進行處理。舉例而言,在與核心資料中心相關聯的所述一或多個群集處被處理的所述部分可能需要相對較高層級的計算資源,此可能在與核心資料中心相關聯的所述一或多個群集(而不是與邊緣資料中心相關聯的一或多個群集)處可用。在一些實施例中,所揭露的系統可根據任何適合的服務等級協議(service level agreement,SLA)來處理工作負荷的所述部分。
在方塊1608處,所揭露的系統可聚集來自核心資料中心及邊緣資料中心的群集的工作負荷的經處理的部分。在一些實例中,所揭露的系統可包括用於工作負荷的不同部分的標誌,所述標誌反映網路的處理了工作負荷的相應部分的部分(例如,與核心或邊緣資料中心相關聯的一或多個群集)。舉例而言,標誌可包括於與工作負荷的所述部分相關聯的元資料(例如,與代表工作負荷的所述部分的封包相關聯的元資料)中。因此,所揭露的系統可使用標誌對經處理的部分進行分類、過濾及/或聚集。具體而言,所揭露的系統可自資料中心的給定群集接收與第一部分相關聯的第一已完成工作負荷,且自邊緣資料中心的另一群集接收與第二部分相關聯的第二已完成工作負荷,且使用第一標誌或第二標誌來對第一已完成工作負荷或第二已完成工作負荷進行分類、過濾或聚集。
在方塊1610處,所揭露的系統可向至少一個元件傳輸工作負荷的經聚集及處理的所述部分。在一些實施例中,所揭露的系統可將經聚集及處理的所述部分傳輸至位於網路的與源發工作負荷請求的元件類似或不同的部分處的元件。
圖16B是根據本揭露示例性實施例的將工作負荷路由至與網路架構之上的核心資料中心相關聯的一或多個群集以及與網路架構之上的一或多個邊緣資料中心相關聯的一或多個群集的所揭露系統的另一示例性方法1601的例示。在方塊1612處,所揭露的系統可接收工作負荷及工作負荷的分佈。在一些實施例中,駐留於邊緣網路上的管理計算實體可接收工作負荷及分佈。如上所述,工作負荷可源發自連接至網際網路上的主機或核心資料中心的、請求特定服務(例如,視訊流請求、搜索請求等)的元件,例如使用者元件(例如,行動電話)。此外,工作負荷的分佈可根據上述機器學習技術的結果來確定且在整個揭露中進行闡述。
在方塊1614處,所揭露的系統可基於分佈將工作負荷的一部分及與工作負荷的所述部分相關聯的資料路由至核心資料中心的一或多個群集。具體而言,所揭露的系統可將工作負荷的離散組件解散成模組化任務,產生與工作負荷的離散組件相關聯的一系列封包,並適當地在網路架構之上將封包傳輸至指定部分(例如核心資料中心的一或多個群集)。此外,所揭露的系統可利用任何適當的標頭來包封離散組件,以便藉由任何下伏網路媒體進行傳輸。舉例而言,所揭露的系統可利用與第一網路協定(例如,基於5G的網路協定)相關聯的第一元資料來包封工作負荷的離散組件,且可利用與第二網路協定(例如,基於以太網路的協定)相關聯的第二元資料來包封工作負荷的離散組件,以分別傳輸至第一核心資料中心的一或多個群集及第二核心資料中心的一或多個群集。
在方塊1616處,所揭露的系統可對工作負荷的位於一或多個邊緣資料中心的一或多個群集處的另一部分以及與工作負荷的所述部分相關聯的資料進行處理。具體而言,所揭露的系統可留存工作負荷的一部分,以用於在邊緣資料中心的一或多個群集處進行處理。舉例而言,在邊緣資料中心的所述一或多個群集處被處理的所述部分可能需要相對較低層級的計算資源以及減少的延遲,此可能在邊緣資料中心的一或多個群集(而不是核心資料中心的一或多個群集)處可用。在一些實施例中,所揭露的系統可根據任何適合的SLA來處理工作負荷的所述部分。
在方塊1618處,所揭露的系統可聚集來自核心資料中心及邊緣資料中心的一或多個群集的工作負荷的經處理的部分。在一些實例中,如上所述,所揭露的系統可包括用於工作負荷的不同部分的標誌,所述標誌反映網路的處理了工作負荷的相應部分的部分(例如,與核心或邊緣資料中心相關聯的一或多個群集)。舉例而言,標誌可包括於與工作負荷的所述部分相關聯的元資料(例如,與代表工作負荷的所述部分的封包相關聯的元資料)中。因此,所揭露的系統可使用標誌對經處理的所述部分進行分類、過濾及/或聚集。
在方塊1620處,所揭露的系統可向至少一個元件傳輸工作負荷的經聚集及處理的所述部分。在一些實施例中,所揭露的系統可將經聚集及處理的所述部分傳輸至位於網路的與源發工作負荷請求的元件類似或不同的部分處的元件。
某些實施例可以硬體、韌體及軟體中的一者或組合來實施。其他實施例亦可被實施成儲存於電腦可讀取儲存元件上的、可被至少一個處理器讀取並執行以實行本文中闡述的操作的指令。電腦可讀取儲存元件可包括用於以可由機器(例如,電腦)讀取的形式儲存資訊的任何非暫時性記憶體機制。舉例而言,電腦可讀取儲存元件可包括唯讀記憶體(ROM)、隨機存取記憶體(RAM)、磁碟儲存媒體、光學儲存媒體、快閃記憶體元件、以及其他儲存元件及媒體。
詞語「示例性的」在本文中用於意指「用作實例、例子或例示」。本文中闡述為「示例性」的任何實施例並不一定被解釋為相較於其他實施例更優選或更有利。本文中使用的用語「計算元件」、「使用者元件」、「通訊站」、「站」、「手持元件」、「行動元件」、「無線元件」及「使用者裝備(user equipment,UE)」是指無線通訊元件,例如蜂巢式電話、智慧型電話、平板電腦、隨身型易網機、無線終端、膝上型電腦、毫微微小區、高資料速率(High Data Rate,HDR)用戶站、存取點、列印機、銷售點元件、存取終端、或其他個人通訊系統(personal communication system,PCS)元件。所述元件可為行動的或固定的中的任一種狀態。
本文件中使用的用語「通訊」旨在包括傳輸或接收、或者傳輸及接收二者。當闡述由一個元件傳輸且由另一元件接收的資料的組織時,此在申請專利範圍中可能特別有用,但是侵犯申請專利範圍僅需要該些元件中的一者的功能。類似地,兩個元件之間的雙向資料交換(在交換期間,兩個元件傳輸並接收)可被闡述為「正在通訊」,此時僅主張該些元件中的一者的功能。本文中使用的針對無線通訊訊號的用語「正在通訊」包括正在傳輸無線通訊訊號及/或正在接收無線通訊訊號。舉例而言,能夠傳送無線通訊訊號的無線通訊單元可包括將無線通訊訊號傳輸至至少一個其他無線通訊單元的無線傳輸機、及/或自至少一個其他無線通訊單元接收無線通訊訊號的無線通訊接收機。
一些實施例可與例如以下等各種元件及系統結合使用:個人電腦(Personal Computer,PC)、桌上型電腦、行動電腦、膝上型電腦、筆記型電腦、平板電腦、伺服器電腦、手持式電腦、手持元件、個人數位助理(Personal Digital Assistant,PDA)元件、手持式PDA元件、車載元件(on-board device)、非車載元件、混合元件、車用元件(vehicular device)、非車用元件、行動或可攜式元件、消費者元件、非行動或非可攜式元件、無線通訊站、無線通訊元件、無線存取點(Access Point,AP)、有線或無線路由器、有線或無線數據機、視訊元件、音訊元件、音訊-視訊(audio-video,A/V)元件、有線或無線網路、無線區域網路、無線視訊區域網路(Wireless Video Area Network,WVAN)、局部區域網路(local area network,LAN)、無線LAN(Wireless LAN,WLAN)、個人區域網路(Personal Area Network,PAN)、無線PAN(Wireless PAN,WPAN)、及類似物。
一些實施例可結合單向及/或雙向無線電通訊系統、蜂巢式無線電-電話通訊系統、行動電話、蜂巢式電話、無線電話、個人通訊系統(Personal Communication System,PCS)元件、結合無線通訊元件的PDA元件、行動或可攜式全球定位系統(Global Positioning System,GPS)元件、結合GPS接收器或收發器或晶片的元件、結合RFID部件或晶片的元件、多輸入多輸出(Multiple Input Multiple Output,MIMO)收發器或元件、單輸入多輸出(Single Input Multiple Output,SIMO)收發器或元件、多輸入單輸出(Multiple Input Single Output,MISO)收發器或元件、具有一或多個內部天線及/或外部天線的元件、數位視訊廣播(Digital Video Broadcast,DVB)元件或系統、多標準無線電元件或系統、有線或無線手持元件(例如,智慧型電話)、無線應用協定(Wireless Application Protocol,WAP)元件、或者類似物。
一些實施例可與遵循一或多個無線通訊協定的例如以下等一或多種類型的無線通訊訊號及/或系統結合使用:射頻(Radio Frequency,RF)、紅外(IR)、頻分多工(Frequency-Division Multiplexing,FDM)、正交FDM(Orthogonal FDM,OFDM)、時分多工(Time-Division Multiplexing,TDM)、時分多重存取(Time-Division Multiple Access,TDMA)、擴展TDMA(Extended TDMA,E-TDMA)、通用封包無線電服務(GPRS)、擴展GPRS、碼分多重存取(CDMA)、寬頻CDMA、CDMA 2000、單載波CDMA、多載波CDMA、多載波調變(Multi-Carrier Modulation,MDM)、離散多音(Discrete Multi-Tone,DMT)、藍牙TM
、全球定位系統(Global Positioning System,GPS)、Wi-Fi、Wi-Max、紫蜂TM
、超寬頻(UWB)、全球行動通訊系統(Global System for Mobile communication,GSM)、2G、2.5G、3G、3.5G、4G、第五代(5G)行動網路、第三代行動通訊合作計畫(3rd Generation Partnership Project,3GPP)、長期演進(LTE)、高級LTE、增強資料速率的GSM演進(Enhanced Data rates for GSM Evolution,EDGE)、或類似物。其他實施例可用於各種其他元件、系統及/或網路。
儘管以上已闡述了示例性處理系統,但本文中闡述的標的及功能操作的實施例可在其他類型的數位電子電路系統中實施,或者在電腦軟體、韌體或硬體(包括本說明書中揭露的結構及其結構等效物)中實施,或者在它們中的一或多者的組合中實施。
本文中闡述的標的及操作的實施例可在數位電子電路系統中實施,或者在電腦軟體、韌體或硬體(包括本說明書中揭露的結構及其結構等效物)中實施,或者在它們中的一或多者的組合中實施。本文中闡述的標的的實施例可被實施成一或多個電腦程式(即,被編碼於電腦儲存媒體上以用於由資訊/資料處理設備執行或用於控制資訊/資料處理設備的操作的電腦程式指令的一或多個組件。作為另一種選擇或者另外,程式指令可被編碼於人工產生的傳播訊號(例如機器產生的電性訊號、光學訊號或電磁訊號)上,人工產生的傳播訊號是被產生用來對資訊/資料進行編碼,以用於傳輸至適合的接收器設備,以由資訊/資料處理設備執行。電腦儲存媒體可為或包括於電腦可讀取儲存元件、電腦可讀取儲存基板、隨機或串列存取記憶體陣列或元件、或者它們中的一或多者的組合中。此外,儘管電腦儲存媒體並非傳播訊號,但電腦儲存媒體可為被編碼於人工產生的傳播訊號中的電腦程式指令的源或目的地。電腦儲存媒體亦可為或包括於一或多個分開的實體組件或媒體(例如多個CD、磁碟或其他儲存元件)中。
本文中闡述的操作可被實施成由資訊/資料處理設備對儲存於一或多個電腦可讀取儲存元件上或自其他來源接收到的資訊/資料實行的操作。
用語「資料處理設備」囊括用於對資料進行處理的所有種類的設備、元件及機器,作為實例包括可程式化處理器、電腦、系統晶片、或前述物中的多者或組合。所述設備可包括專用邏輯電路系統,例如FPGA(現場可程式化閘陣列)或ASIC(應用專用積體電路)。除了硬體之外,所述設備亦可包括為所考慮的電腦程式創建執行環境的代碼,例如構成處理器韌體、協定棧、資料庫管理系統、操作系統、跨平台運行時環境、虛擬機、或它們中的一或多者的組合的代碼。所述設備及執行環境可達成各種不同的計算模型基礎設施,例如網頁服務(web service)、分佈式計算及網格計算基礎設施。
電腦程式(亦稱為程式、軟體、軟體應用、腳本或代碼)可以任何形式的程式化語言(包括編譯或解釋語言、聲明性或過程性語言)來寫,並且它可以任何形式(包括作為單獨程式或作為組件、子例程、對象、或其他適合於在計算環境中使用的單元)來部署。電腦程式可(但並非必須)與檔案系統中的檔案對應。程式可儲存於保存其他程式或資訊/資料(例如,儲存於標示語言文件中的一或多個腳本)的檔案的一部分中,儲存於專用於所考慮的程式的單個檔案中,或者儲存於多個協同檔案(例如,儲存一或多個組件、子程式、或代碼的部分的檔案)中。電腦程式可被部署成在一台電腦上或位於一個站點處或跨越多個站點分佈並藉由通訊網路互連的多台電腦上執行。
本文中闡述的製程及邏輯流程可由執行一或多個電腦程式的一或多個可程式化處理器來實行,以藉由對輸入資訊/資料進行操作並產生輸出來實行動作。適合於執行電腦程式的處理器作為實例包括通用微處理器及專用微處理器二者、以及任何種類的數位電腦的任何一或多個處理器。一般而言,處理器將自唯讀記憶體或隨機存取記憶體、或者二者接收指令及資訊/資料。電腦的基本部件是根據指令實行動作的處理器以及用於儲存指令及資料的一或多個記憶體元件。一般而言,電腦亦將包括或者可操作地耦合以自用於儲存資料的一或多個大儲存體元件(例如磁碟、磁性-光碟、或光碟)接收資訊/資料或將資訊/資料傳送至所述一或多個大儲存體元件、或者進行所述兩種操作。然而,電腦不需要此種元件。適合於儲存電腦程式指令及資訊/資料的元件包括所有形式的非揮發性記憶體、媒體及記憶體元件,作為實例包括:半導體記憶體元件,例如EPROM、EEPROM及快閃記憶體元件;磁碟,例如內部硬碟或可移動碟;磁性-光碟;以及CD-ROM及DVD-ROM碟。處理器及記憶體可由專用邏輯電路系統來補充或併入專用邏輯電路系統中。
為了提供與使用者的交互,本文中闡述的標的的實施例可在以下電腦上實施:所述電腦具有用於向使用者顯示資訊/資料的顯示元件(例如陰極射線管(cathode ray tube,CRT)或液晶顯示器(liquid crystal display,LCD)監測器)、以及鍵盤及定點元件(例如滑鼠或軌跡球),使用者可藉由所述鍵盤及定點元件向電腦提供輸入。亦可使用其他類型的元件來提供與使用者的交互;例如,提供給使用者的反饋可為任何形式的感官反饋(例如視覺反饋、聽覺反饋或觸覺反饋);且可以任何形式接收來自使用者的輸入(包括聽覺輸入、語音輸入或觸覺輸入)。另外,電腦可藉由向使用者所使用的元件發送文件及自使用者所使用的元件接收文件來與使用者進行交互;例如,藉由因應於自網頁瀏覽器接收到的請求,將網頁發送至使用者的客戶端元件上的網頁瀏覽器。
本文中闡述的標的的實施例可在計算系統中實施,所述計算系統包括後端組件(back end component)(例如作為資訊/資料伺服器)、或者包括中介軟體組件(middleware component)(例如應用伺服器)、或者包括前端組件(front end component)(例如客戶端電腦,所述客戶端電腦具有圖形使用者介面或網頁瀏覽器,使用者可藉由圖形使用者介面或網頁瀏覽器與本文中闡述的標的的實施例進行交互)、或者一或多個此種後端組件、中介軟體組件或前端組件的任意組合。系統的組件可藉由任何形式或媒體的數位資訊/資料通訊(例如通訊網路)進行互連。通訊網路的實例包括區域網路(「(LAN」)及廣域網路(「(wide area network,WAN)」)、內部網路(例如網際網路)、以及同級間網路(例如自組織同級間網路(ad hoc peer-to-peer network))。
計算系統可包括客戶端及伺服器。客戶端與伺服器一般而言彼此遠離且通常藉由通訊網路進行交互。客戶端與伺服器的關係是藉由運行於各自的電腦上且彼此具有客戶端-伺服器關係的電腦程式出現的。在一些實施例中,伺服器將資訊/資料(例如,超文件標示語言(HyperText Markup Language,HTML)頁面)傳輸至客戶端元件(例如,出於向與客戶端元件進行交互的使用者顯示資訊/資料並自所述使用者接收使用者輸入的目的)。可在伺服器處自客戶端元件接收在客戶端元件處產生的資訊/資料(例如,使用者交互的結果)。
儘管此說明書包含許多特定實施例細節,但該些細節不應被解釋為對任何實施例或可主張的範圍的限制,而是對具體實施例的特定特徵的說明。本文在分開的實施例的上下文中闡述的某些特徵亦可在單個實施例中組合實施。相反,在單個實施例的上下文中闡述的各種特徵亦可在多個實施例中分開實施或者在任何適合的子組合中實施。此外,儘管特徵可在以上被闡述為在某些組合中起作用且甚至最初被如此主張,但在一些情形中,來自所主張的組合的一或多個特徵可自所述組合被刪除,且所主張的組合可有關於子組合或子組合的變型。
類似地,儘管在圖式中以特定次序繪示出操作,但此不應被理解為要求以所示的特定次序或順序實行此些操作或者要求實行所有示出的操作以達成期望的結果。在某些情況下,多任務及並行處理可能是有利的。此外,上述實施例中的各種系統組件的分離不應被理解為在所有實施例中均要求此種分離,且應被理解成,所闡述的程式組件及系統一般而言可一起整合於單個軟體產品中或者封裝至多個軟體產品中。
因此,已闡述標的的特定實施例。其他實施例處於以下申請專利範圍的範圍內。在一些情形中,申請專利範圍中列舉的動作可以不同的次序實行且仍然達成期望的結果。另外,附圖中闡述的製程並不一定要求所示的特定次序或順序來達成期望的結果。在某些實施例中,多任務及並行處理可能是有利的。
受益於前述說明及相關聯的圖式中提出的教示,熟習該些實施例所屬技術的人員將會想到本文中陳述的本揭露的許多修改及其他實施例。因此,應理解,實施例並不限於所揭露的特定實施例,且修改及其他實施例旨在包括於所附申請專利範圍的範圍內。儘管本文中採用特定的用語,但它們僅用於一般性及闡述性意義,而非出於限制的目的。
102、202、302、508、608、708、810、910、1000、1100:管理計算實體
105:伺服器/遠端伺服器/接收伺服器/第一伺服器
110:架頂(ToR)以太網路交換機
112:伺服器連結交換機/ToR伺服器連結交換機/ToR交換機
115:處理電路/所儲存程式處理電路
120:系統記憶體
125:網路介面電路
130:能力增強型CXL交換機/快取同調交換機/遠端能力增強型CXL交換機/CXL交換機
135:記憶體模組/CXL記憶體模組/第一記憶體模組
137:控制器/CXL控制器/FPGA(或ASIC)控制器
140:擴展插座轉接器
145:擴展插座/PCIe連接件
150:記憶體伺服器
200、300、500、600、700、800、900:圖
204、312:類型A池群集
206、314:類型B池群集
208、316:類型C池群集
210、318:類型D池群集
212:插入式模組
214:計算部件
216:媒體
304、306、308、310:交換機
400:表
402、820、920:參數
406:直接附接式
408:彙集式
410:分佈式
412:分解式
502、802、902、1005:網路
503、601、603、701:第一資料傳輸
504:主機
505、703:第二資料傳輸
506、513、514、516、518、522、524、526、532、534、536:元件
510:核心資料中心
512、520:邊緣資料中心
530:行動邊緣資料中心
801、901:訓練組件
803、903:推理組件
804、904:參數/網路參數
806:標簽
808、822、908、922:特徵向量
812、912:機器學習組件
814、914:處理器
816、916:記憶體
824:預測模型
826、926:預期分佈
924:模型
1010:使用者元件
1105、1208:處理部件
1110:非揮發性儲存或記憶媒體/記憶體
1115:揮發性儲存或記憶媒體/揮發性記憶體
1120:通訊介面
1204:傳輸機
1206:接收機
1212:天線
1220:網路介面
1216:顯示器
1218:小鍵盤
1222:揮發性儲存或記憶媒體
1224:非揮發性儲存或記憶媒體
1300、1400、1500、1600、1601:示例性方法
1302、1304、1306、1308、1310、1402、1404、1406、1408、1502、1504、1506、1508、1510、1512、1514、1602、1604、1606、1608、1610、1612、1614、1616、1618、1620:方塊
當根據以下圖閱讀本申請案時,將更佳地理解本技術的上述態樣及其他態樣,在以下圖中,相同的編號指示類似或相同的部件(element):
圖1A是根據本揭露實施例的用於使用快取同調連接(cache-coherent connection)將記憶體資源附接至計算資源的系統的方塊圖。
圖1B是根據本揭露實施例的採用擴展插座轉接器(expansion socket adapter)的、用於使用快取同調連接將記憶體資源附接至計算資源的系統的方塊圖。
圖1C是根據本揭露實施例的用於採用乙太網路架頂(top of rack,ToR)交換機來聚集(aggregating)記憶體的系統的方塊圖。
圖1D是根據本揭露實施例的用於採用乙太網路ToR交換機及擴展插座轉接器來聚集記憶體的系統的方塊圖。
圖1E是根據本揭露實施例的用於聚集記憶體的系統的方塊圖。
圖1F是根據本揭露實施例的用於採用擴展插座轉接器來聚集記憶體的系統的方塊圖。
圖1G是根據本揭露實施例的用於分解(disaggregating)伺服器的系統的方塊圖。
圖2繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的圖,所述管理計算實體可通訊並配置結合圖1A至圖1G闡述的各個伺服器。
圖3A繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的第一圖,所述管理計算實體可通訊並配置結合圖1A至圖1G闡述的各個伺服器。
圖3B繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的第二圖,所述管理計算實體可通訊並配置結合圖1A至圖1G闡述的各個伺服器。
圖3C繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的第三圖,所述管理計算實體可通訊並配置結合圖1A至圖1G闡述的各個伺服器。
圖3D繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可結合管理計算實體進行操作的代表性系統架構的第四圖,所述管理計算實體可通訊並配置結合圖1A至圖1G闡述的各個伺服器。
圖4繪示出根據本揭露示例性實施例的可表徵結合圖1A至圖1G闡述的伺服器的各態樣的代表性參數表的圖,其中管理計算實體基於參數表對各個伺服器進行配置。
圖5繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可進行操作的代表性網路架構的圖,所揭露的實施例的各態樣包括其中管理計算實體可對核心、邊緣及行動邊緣資料中心中的伺服器進行配置的實施例。
圖6繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可進行操作的代表性網路架構的另一圖,所揭露的實施例的各態樣包括其中管理計算實體可對核心、邊緣及行動邊緣資料中心中的伺服器進行配置的實施例。
圖7繪示出根據本揭露示例性實施例的其中所揭露的實施例的各態樣可進行操作的代表性網路架構的又一圖,所揭露的實施例的各態樣包括其中管理計算實體可對核心、邊緣及行動邊緣資料中心中的伺服器進行配置的實施例。
圖8繪示出根據本揭露示例性實施例的使用管理計算實體來確定工作負荷跨越不同伺服器的分佈的監督機器學習方式的圖。
圖9繪示出根據本揭露示例性實施例的使用管理計算實體來確定工作負荷跨越不同伺服器的分佈的無監督機器學習方式的圖。
圖10示出可用於實踐本揭露實施例的系統的示例性示意圖。
圖11示出根據本揭露示例性實施例的管理計算實體的示例性示意圖。
圖12示出根據本揭露示例性實施例的使用者元件的示例性示意圖。
圖13是根據本揭露示例性實施例的操作所揭露系統以確定跨越網路的一或多個群集的工作負荷分佈的示例性方法1300的例示。
圖14是根據本揭露示例性實施例的操作所揭露系統以確定跨越網路的一或多個群集的附加工作負荷分佈的示例性方法1400的例示。
圖15是根據本揭露示例性實施例的操作所揭露系統以確定工作負荷在網路架構的一或多個群集之上的分佈的示例性方法1500的例示。
圖16A是根據本揭露示例性實施例的將工作負荷路由至網路架構之上的核心資料中心及一或多個邊緣資料中心的一或多個群集的所揭露系統的示例性方法1600的例示。
圖16B是根據本揭露示例性實施例的將工作負荷路由至網路架構之上的核心資料中心及一或多個邊緣資料中心的一或多個群集的所揭露系統的另一示例性方法1601的例示。
儘管本技術易受各種修改及替代形式的影響,但其特定實施例在圖式中以實例的方式示出並將在本文中進行闡述。圖式可能並非按比例繪製。然而,應理解,圖式及其詳細說明並非旨在將本技術限制於所揭露的特定形式,而相反,其意圖是涵蓋所有的修改、等效物、以及落於所附申請專利範圍所界定的本技術的精神及範圍內的替代方案。
1300:示例性方法
1302、1304、1306、1308、1310:方塊
Claims (20)
- 一種用於資源分配的方法,包括: 確定參數的與第一群集中的至少一個第一元件相關聯的第一值; 基於所述參數的所述第一值確定臨限值; 接收對所述第一元件處的工作負荷進行處理的請求; 確定所述參數的與第二群集中的至少一個第二元件相關聯的第二值滿足所述臨限值;以及 因應於滿足所述臨限值,將所述工作負荷的至少一部分路由至所述第二元件。
- 如請求項1所述的方法,其中所述方法更包括: 確定所述參數的與第二群集中的至少一個第二元件相關聯的所述第二值超過所述臨限值;以及 因應於超過所述臨限值,維持所述第一元件處的所述工作負荷的至少一部分。
- 如請求項1所述的方法,其中所述第一群集或所述第二群集包括直接附接式記憶體架構、彙集式記憶體架構、分佈式記憶體架構、或分解式記憶體架構中的至少一者。
- 如請求項3所述的方法,其中所述直接附接式記憶體架構包括儲存類記憶體(storage class memory,SCM)元件、動態隨機存取記憶體(dynamic random-access memory,DRAM)元件、及基於動態隨機存取記憶體的垂直反及(NAND)元件中的至少一者。
- 如請求項3所述的方法,其中所述彙集式記憶體架構包括快取同調加速器元件。
- 如請求項3所述的方法,其中所述分佈式記憶體架構包括與快速周邊組件互連互連件進行連接的快取同調元件。
- 如請求項3所述的方法,其中所述分解式記憶體架構包括機箱中的在實體上群集化的記憶體及加速器擴展。
- 如請求項1所述的方法,其中所述方法更包括: 基於所述工作負荷的預計記憶體使用量、所述第一值及所述第二值來計算得分;以及 基於所述得分將所述工作負荷的至少一部分路由至所述第二元件。
- 如請求項1所述的方法,其中將所述工作負荷的至少一部分路由至所述第二元件包括使用快取同調協定進行路由,所述快取同調協定更包括CXL協定或GenZ協定中的至少一者,且所述第一群集及所述第二群集藉由快速周邊組件互連結構進行耦合。
- 如請求項1所述的方法,其中所述參數與記憶體資源或計算資源中的至少一者相關聯。
- 如請求項1所述的方法,其中所述參數包括功率特性、單位能量效能特性、遠端記憶體容量、及直接記憶體容量中的至少一者。
- 一種用於資源分配的元件,包括: 至少一個記憶體元件,儲存電腦可執行指令;以及 至少一個處理器,被配置以存取所述記憶體元件,其中所述處理器被配置以執行所述電腦可執行指令以進行以下操作: 確定參數的與第一群集中的至少一個第一元件相關聯的第一值; 基於所述參數的所述第一值確定臨限值; 接收對所述第一元件處的工作負荷進行處理的請求; 確定所述參數的與第二群集中的至少一個第二元件相關聯的第二值滿足所述臨限值;以及 因應於滿足所述臨限值,將所述工作負荷的至少一部分路由至所述第二元件。
- 如請求項12所述的元件,其中所述處理器更被配置以執行所述電腦可執行指令以進行以下操作: 確定所述參數的與第二群集中的至少一個第二元件相關聯的所述第二值超過所述臨限值;以及 因應於超過所述臨限值,維持所述第一元件處的所述工作負荷的至少一部分。
- 如請求項12所述的元件,其中所述第一群集或所述第二群集包括直接附接式記憶體架構、彙集式記憶體架構、分佈式記憶體架構、或分解式記憶體架構中的至少一者。
- 如請求項14所述的元件,其中所述直接附接式記憶體架構包括儲存類記憶體(SCM)元件、動態隨機存取記憶體(DRAM)元件、及基於動態隨機存取記憶體的垂直反及(NAND)元件中的至少一者。
- 如請求項12所述的元件,其中所述元件更被配置以向主機呈現至少所述第二元件。
- 一種用於資源分配的系統,包括: 至少一個記憶體元件,儲存電腦可執行指令;以及 至少一個處理器,被配置以存取所述記憶體元件,其中所述處理器被配置以執行所述電腦可執行指令以進行以下操作: 確定參數的與第一群集中的至少一個第一元件相關聯的第一值; 基於所述參數的所述第一值確定臨限值; 接收對所述第一元件處的工作負荷進行處理的請求; 確定所述參數的與第二群集中的至少一個第二元件相關聯的第二值滿足所述臨限值;以及 因應於滿足所述臨限值,將所述工作負荷的至少一部分路由至所述第二元件。
- 如請求項17所述的系統,其中所述處理器更被配置以執行所述電腦可執行指令以進行以下操作: 確定所述參數的與第二群集中的至少一個第二元件相關聯的所述第二值超過所述臨限值;以及 因應於超過所述臨限值,維持所述第一元件處的所述工作負荷的至少一部分。
- 如請求項17所述的元件,其中所述第一群集或所述第二群集包括直接附接式記憶體架構、彙集式記憶體架構、分佈式記憶體架構、或分解式記憶體架構中的至少一者。
- 如請求項19所述的系統,其中所述直接附接式記憶體架構包括儲存類記憶體(SCM)元件、動態隨機存取記憶體(DRAM)元件、及基於動態隨機存取記憶體的垂直反及(NAND)元件中的至少一者。
Applications Claiming Priority (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063006073P | 2020-04-06 | 2020-04-06 | |
US63/006,073 | 2020-04-06 | ||
US202063031509P | 2020-05-28 | 2020-05-28 | |
US202063031508P | 2020-05-28 | 2020-05-28 | |
US63/031,508 | 2020-05-28 | ||
US63/031,509 | 2020-05-28 | ||
US202063057746P | 2020-07-28 | 2020-07-28 | |
US63/057,746 | 2020-07-28 | ||
US202063068054P | 2020-08-20 | 2020-08-20 | |
US63/068,054 | 2020-08-20 | ||
US17/135,901 US20210373951A1 (en) | 2020-05-28 | 2020-12-28 | Systems and methods for composable coherent devices |
US17/135,901 | 2020-12-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202211035A true TW202211035A (zh) | 2022-03-16 |
Family
ID=78101740
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110108539A TW202211035A (zh) | 2020-04-06 | 2021-03-10 | 用於資源分配的系統、元件以及方法 |
Country Status (3)
Country | Link |
---|---|
KR (1) | KR20210124082A (zh) |
CN (1) | CN113553170A (zh) |
TW (1) | TW202211035A (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3807773B1 (en) | 2018-06-18 | 2024-03-13 | FLC Technology Group Inc. | Method and apparatus for using a storage system as main memory |
US20230144038A1 (en) * | 2021-11-11 | 2023-05-11 | FLC Technology Group, Inc. | Memory pooling bandwidth multiplier using final level cache system |
US11989142B2 (en) | 2021-12-10 | 2024-05-21 | Samsung Electronics Co., Ltd. | Efficient and concurrent model execution |
CN115174409A (zh) * | 2022-06-30 | 2022-10-11 | 无锡芯光互连技术研究院有限公司 | 一种基于cxl协议的网络连接方法及系统 |
CN115686872B (zh) * | 2022-12-30 | 2023-03-21 | 浪潮电子信息产业股份有限公司 | 基于bmc的内存资源处理设备、方法、装置及介质 |
-
2021
- 2021-03-10 TW TW110108539A patent/TW202211035A/zh unknown
- 2021-04-06 CN CN202110367741.3A patent/CN113553170A/zh active Pending
- 2021-04-06 KR KR1020210044465A patent/KR20210124082A/ko active Search and Examination
Also Published As
Publication number | Publication date |
---|---|
CN113553170A (zh) | 2021-10-26 |
KR20210124082A (ko) | 2021-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210373951A1 (en) | Systems and methods for composable coherent devices | |
US20210374056A1 (en) | Systems and methods for scalable and coherent memory devices | |
US11841814B2 (en) | System with cache-coherent memory and server-linking switch | |
US11929927B2 (en) | Network interface for data transport in heterogeneous computing environments | |
TW202211035A (zh) | 用於資源分配的系統、元件以及方法 | |
US20210266253A1 (en) | Pooling of network processing resources | |
US20210258265A1 (en) | Resource management for components of a virtualized execution environment | |
US20210329354A1 (en) | Telemetry collection technologies | |
US20210326221A1 (en) | Network interface device management of service execution failover | |
US20220086226A1 (en) | Virtual device portability | |
EP4020208A1 (en) | Memory pool data placement technologies | |
TWI850550B (zh) | 管理記憶體資源的系統及實行遠端直接記憶體存取的方法 |