CN117234297A - 用于提供针对超融合基础结构的高效池化的技术 - Google Patents
用于提供针对超融合基础结构的高效池化的技术 Download PDFInfo
- Publication number
- CN117234297A CN117234297A CN202311289085.5A CN202311289085A CN117234297A CN 117234297 A CN117234297 A CN 117234297A CN 202311289085 A CN202311289085 A CN 202311289085A CN 117234297 A CN117234297 A CN 117234297A
- Authority
- CN
- China
- Prior art keywords
- board
- data storage
- storage device
- memory
- circuit module
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000011176 pooling Methods 0.000 title abstract description 9
- 230000004044 response Effects 0.000 claims abstract description 14
- 230000008878 coupling Effects 0.000 claims abstract description 6
- 238000010168 coupling process Methods 0.000 claims abstract description 6
- 238000005859 coupling reaction Methods 0.000 claims abstract description 6
- 238000013500 data storage Methods 0.000 claims description 64
- 238000012545 processing Methods 0.000 claims description 9
- 238000009877 rendering Methods 0.000 claims 3
- 230000004927 fusion Effects 0.000 abstract description 3
- 239000000758 substrate Substances 0.000 description 68
- 238000004891 communication Methods 0.000 description 59
- 230000003287 optical effect Effects 0.000 description 27
- 238000013507 mapping Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 15
- 238000001816 cooling Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 13
- 239000007787 solid Substances 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 239000013307 optical fiber Substances 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000020169 heat generation Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 101100498818 Arabidopsis thaliana DDR4 gene Proteins 0.000 description 2
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 2
- 239000005387 chalcogenide glass Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 229910044991 metal oxide Inorganic materials 0.000 description 2
- 150000004706 metal oxides Chemical class 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000002070 nanowire Substances 0.000 description 2
- 229910052760 oxygen Inorganic materials 0.000 description 2
- 239000001301 oxygen Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000004593 Epoxy Substances 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000001152 differential interference contrast microscopy Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 239000000428 dust Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000011152 fibreglass Substances 0.000 description 1
- 230000013011 mating Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000000615 nonconductor Substances 0.000 description 1
- 229910000679 solder Inorganic materials 0.000 description 1
- 238000005476 soldering Methods 0.000 description 1
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/5083—Techniques for rebalancing the load in a distributed system
- G06F9/5088—Techniques for rebalancing the load in a distributed system involving task migration
-
- 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/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J15/00—Gripping heads and other end effectors
- B25J15/0014—Gripping heads and other end effectors having fork, comb or plate shaped means for engaging the lower surface on a object to be transported
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/18—Packaging or power distribution
- G06F1/183—Internal mounting support structures, e.g. for printed circuit boards, internal connecting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/20—Cooling means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3442—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for planning or managing the needed capacity
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7867—Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
-
- 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
- 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/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
- H04L41/5025—Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/14—Mounting supporting structure in casing or on frame or rack
- H05K7/1485—Servers; Data center rooms, e.g. 19-inch computer racks
- H05K7/1488—Cabinets therefor, e.g. chassis or racks or mechanical interfaces between blades and support structures
- H05K7/1489—Cabinets therefor, e.g. chassis or racks or mechanical interfaces between blades and support structures characterized by the mounting of blades therein, e.g. brackets, rails, trays
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/18—Construction of rack or frame
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/20—Modifications to facilitate cooling, ventilating, or heating
- H05K7/20009—Modifications to facilitate cooling, ventilating, or heating using a gaseous coolant in electronic enclosures
- H05K7/20209—Thermal management, e.g. fan control
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/20—Modifications to facilitate cooling, ventilating, or heating
- H05K7/20709—Modifications to facilitate cooling, ventilating, or heating for server racks or cabinets; for data centers, e.g. 19-inch computer racks
- H05K7/20718—Forced ventilation of a gaseous coolant
- H05K7/20736—Forced ventilation of a gaseous coolant within cabinets for removing heat from server blades
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/105—Arrangements for software license management or administration, e.g. for managing licenses at corporate level
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2200/00—Indexing scheme relating to G06F1/04 - G06F1/32
- G06F2200/20—Indexing scheme relating to G06F1/20
- G06F2200/201—Cooling arrangements using cooling fluid
-
- 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/44—Arrangements for executing specific programs
-
- 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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
- G06F9/4856—Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
-
- 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/5061—Partitioning or combining of resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0283—Price estimation or determination
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5003—Managing SLA; Interaction between SLA and QoS
- H04L41/5019—Ensuring fulfilment of SLA
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/40—Constructional details, e.g. power supply, mechanical construction or backplane
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H05—ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
- H05K—PRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
- H05K7/00—Constructional details common to different types of electric apparatus
- H05K7/14—Mounting supporting structure in casing or on frame or rack
- H05K7/1485—Servers; Data center rooms, e.g. 19-inch computer racks
- H05K7/1498—Resource management, Optimisation arrangements, e.g. configuration, identification, tracking, physical location
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Thermal Sciences (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Power Engineering (AREA)
- Computing Systems (AREA)
- Cooling Or The Like Of Electrical Apparatus (AREA)
Abstract
用于针对包括超融合基础结构的系统提供高效池化的技术。系统的板包括网络接口控制器,其包括用于可通信地耦合至桥接逻辑单元的网络的第一桥接逻辑单元。第一桥接逻辑单元还用于从请求者设备获得用于访问所请求的设备的请求;确定所请求的设备是在当前板上还是在不同于当前板的远程板上;响应于确定所请求的设备位于当前板上而选择性地将所请求的设备上电;响应于确定所请求的设备在远程板上而与远程板的第二桥接逻辑单元进行通信;以及通过第一桥接逻辑单元向请求者设备提供对所请求的设备的访问。
Description
本申请为分案申请,其原申请是于2018年7月27日向中国专利局提交的专利申请,申请号为201810845565.8,发明名称为“用于提供针对超融合基础结构的高效池化的技术”。
交叉引用
该申请要求于2017年8月30日提交的印度临时专利申请No.201741030632以及于2017年11月10日提交的美国临时专利申请No.62/584,401的权益。
背景技术
在超融合基础结构中的池化(例如,提供资源的集合,所述资源例如连接至机架或者跨多个机架中的一个或多个计算设备并且能够由其使用的加速器设备、存储器设备、或者数据存储设备)的使用在数据中心内变得越来越普遍。然而,通常这样的系统中的每个板(例如,具有一个或多个资源的板)被完全上电(例如,通过I/O子系统连接的主存储器和设备)以使能访问位于板上的任何特定的设备。在位于板上的资源的小的子集(例如,特定的存储器设备)被用于执行工作负载(例如,应用)而其他设备空闲的情况下,为了在工作负载的执行期间保持板的其他设备上电(例如,以使能访问板上的资源的子集)所消耗的能量是浪费的并且增加了操作数据中心的财务成本。
附图说明
在附图中作为示例而非限制示出了在本文中所描述的概念。为了示出的简单和清楚,在附图中所描述的元素不一定是按比例绘制的。在适当地考虑的情况下,附图标记可以在附图中重复以指示对应的或类似的元素。
图1是用于利用经分解的资源来执行工作负载的数据中心的至少一个实施例的简化框图;
图2是图1的数据中心的舱(pod)的至少一个实施例的简化图;
图3是可以被包括在图2的舱中的机架的至少一个实施例的透视图;
图4是图3的机架的边侧立面视图;
图5是具有安装在其中的板的图3的机架的透视图;
图6是图5的板的顶面的至少一个实施例的简化框图;
图7是图6的板的底面的至少一个实施例的简化框图;
图8是在图1的数据中心中可用的计算板的至少一个实施例的简化框图;
图9是图8的计算板的至少一个实施例的顶部透视图;
图10是在图1的数据中心中可用的加速器板的至少一个实施例的简化框图;
图11是图10的加速器板的至少一个实施例的顶部透视图;
图12是在图1的数据中心中可用的存储板的至少一个实施例的简化框图;
图13是图12的存储板的至少一个实施例的顶部透视图;
图14是在图1的数据中心中可用的存储器板的的至少一个实施例的简化框图;以及
图15是可以在图1的数据中心内被建立以利用由经分解的资源组成的受管理的节点来执行工作负载的系统的简化框图。
图16是用于在超融合基础结构中提供高效池化的系统的至少一个实施例的简化框图;
图17是图16的板的至少一个实施例的简化框图;
图18是可以由图16和图17建立的环境的至少一个实施例的简化框图;
图19-图20是可以由图16-图18的板执行的、用于在超融合基础结构中提供高效池化的方法的至少一个实施例的简化流程图。
具体实施方式
尽管本公开的概念易于进行各种修改和替代形式,但其具体实施例已经在附图中作为示例示出,并且将在本文中详细描述。然而,应当理解的是,不存在将本公开的概念限于所公开的特定形式的意图,相反,目的是要覆盖与本公开和所附权利要求一致的所有修改、等价物、和替代物。
说明书中对“一个实施例”、“实施例”、“说明性实施例”等的引用表示所描述的实施例可包括特定特征、结构或特性,但是每个实施例可以或可以不必包括该特定特征、结构或特性。此外,这样的短语不一定指的是同一实施例。此外,当结合实施例描述特定的特征、结构或特性时,认为在本领域技术人员的知识范围内的是,无论是否明确描述,都可以结合其他实施例实现这样的特征、结构或特性。额外地,应当意识到的是,“至少一个A、B和C”的形式的列表中所包括的项可以表示(A);(B);(C);(A和B);(B和C);(A和C);或(A、B和C)。类似地,“A,B或C中的至少一个”的形式中所列出的项可以表示(A);(B);(C):(A和B);(B和C);(A和C);或者(A、B和C)。
在一些情况下,所公开的实施例可在硬件、固件、软件或其任何组合中实现。所公开的实施例还可以被实现为由一个或多个暂时性或非暂时性机器可读(例如,计算机可读)存储介质携带或存储在其上的指令,所述指令可由一个或多个处理器读取和执行。机器可读存储介质可以被实施为用于以机器可读形式存储或传输信息的任何存储设备、机制、或其他物理结构(例如,易失性或非易失性存储器,介质盘、或其他介质设备)。
在附图中,可以以特定的布置和/或排序示出一些结构或方法特征。然而,应当意识到的是,可能不需要这样的特定布置和/或排序。相反,在一些实施例中,可以以与说明性附图所示的不同的方式和/或顺序来布置这些特征。额外地,在特定图中包括结构或方法特征不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,这样的特征可以不被包括或者可以与其他特征组合。
现在参考图1,其中经分解的资源可以协同地执行一个或多个工作负载(例如,代表客户的应用)的数据中心100包括多个舱110、120、130、140,其中每个包括一行或多行机架。如在本文中详细描述的,每个机架壳(house)包括多个板(板),每个板可以被实施为计算设备,例如主要装备有特定类型的资源(例如,存储器设备、数据存储设备、加速器设备、通用处理器)的服务器。在说明性实施例中,每个舱110、120、130、140中的板连接至多个舱交换机(例如,将数据通信路由到舱内的板并从舱内的板进行路由的交换机)。舱交换机进而与骨干(spine)交换机150连接,所述骨干交换机在数据中心100中的舱(例如,舱110、120、130、140)之间交换通信。在一些实施例中,多个板可以与使用Intel Omni-Path技术与结构连接。如在本文中更加详细地描述的,数据中心100中的板内的资源可以被分配至分组(在本文中被称为“受管理的节点”),所述分组包含来自要在工作负载的执行中共同利用的一个或多个其他板的资源。所述工作负载可以执行为好像属于受管理的节点的资源位于同一板上。受管理的节点中的资源甚至可以属于属于不同机架的板,并且甚至属于不同的舱110、120、130、140。单个板的一些资源可以被分配至一个受管理的节点,而同一板的其他资源被分配至不同的受管理的节点(例如,一个处理器被分配至一个受管理的节点,而同一板的另一个处理器被分配至不同的受管理的节点)。通过将资源分解至主要包括单个类型的资源的板(例如,主要包括计算资源的计算板,主要包含存储器资源的存储器板),并且选择性地将经分解的资源分配和解除分配以形成被指定执行工作负载的受管理的节点,数据中心100对由超融合服务器组成的一般的数据中心提供更加高效的资源使用,所述超融合服务器包含计算、存储器、存储、以及可能的额外的资源)。由此,数据中心100可以比具有相同数量的资源的一般数据中心提供更好的性能(例如,吞吐量、每秒运算、延迟等)。
现在参考图2,在说明性实施例中,舱110包括机架240的一组行200、210、220、230。每个行240可以容纳多个板(例如,十六个板),并且提供至所容纳的板的电力和数据连接,如在本文中更加详细地描述的。在说明性实施例中,每一行200、210、220、230中的机架连接至多个舱交换机250、260。舱交换机250包括舱110的机架的板与其连接的一组端口252,以及将舱110连接至主干交换机150以提供对数据中心100中的其他舱的连通性的另一组端口254。类似地,舱交换机260包括舱110的机架的板与其连接的一组端口262,以及将舱110连接至主干交换机150的一组端口264。由此,一对交换机250、260的使用向舱110提供了一定量的冗余。例如,如果交换机250、260中的任何一个发生故障,则舱110中的板可以仍然保持通过另一交换机250、260与数据中心100中的剩余部分(例如,其他舱的板)的数据通信。此外,在说明性实施例中,交换机150、250、260可以被实施为双模式光学交换机,其能够经由光纤的光学信号介质来对携带互联网协议(IP)分组的以太网协议通信和根据第二、高性能链路层协议(例如,Intel的Omni-Path架构,无限带宽)的通信两者进行路由。
应当意识到的是,其他舱120、130、140(以及数据中心100的任何额外的舱)中的每个可以类似地被构建为在图2中所示出以及关于图2所描述的舱110(例如,每个舱可以如上文所描述的具有容纳多个板的多行机架),并且具有与其类似的组件。额外地,尽管示出了两个舱交换机250、260,但应当理解的是,在其他实施例中,每个舱110、120、130、140可以连接至不同数量的舱交换机(例如,提供更加多的故障切换容量)。
现在参考图3-图5,数据中心100的每个说明性机架240包括两个细长的支柱302、304,它们是被竖直地布置的。例如,所述细长的支柱302、304可以在被采用时从数据中心100的地面向上延伸。机架240还包括细长的支臂312的一个或多个水平对310(在图3中经由虚线椭圆标识),其被配置为如下文所讨论的支撑数据中心100的板。细长的支臂312对中的一个细长的支臂312从细长的支柱302向外延伸,而另一细长的支臂312从细长的支柱304向外延伸。
在说明性实施例中,数据中心100的每个板被实施为无托架的板。即,如下文所讨论的,每个板具有物理资源(例如,处理器、存储器、加速器、存储等)在其上安装的无托架电路板基底。由此,机架240被配置为接收无托架板。例如,细长的支臂312的每一对310限定机架240的板槽320,其被配置为接收对应的无托架板。为此,每个说明性的细长的支臂312包括被配置为接收板的无托架电路板基底的电路板引导330。每个电路板引导330被安装至或以其他方式安装至对应的细长的支臂312的顶面332。例如,在说明性实施例中,每个电路板引导330相对于对应的细长的支柱302、304而被安装在对应的细长的支臂312的末端。为了附图清楚起见,没有在每个附图中引用每个电路板引导330。
每个电路板引导330包括限定电路板槽380的内墙,其被配置为当板400在机架240的对应的板槽320中被接收时接收板400的无托架电路板基底。为此,如在图4中所示出的,用户(或机器人)将说明性无托架板400的无托架电路板基底与板槽320对齐。用户或机器人可以接着将无托架电路板基底向前滑动到板槽320中,以使得无托架电路板基底的每个侧边414在细长的支臂312的对310的电路板引导330的对应的电路板槽380中被接收,所述电路板引导330如在图4中所描述的限定对应的板槽320。通过使得包括经分解的资源的能够由机器人访问和操纵,每种类型的资源可以独立于彼此并且以其最佳化刷新速率来升级。此外,板被配置为与每个机架240中的电力和数据通信线缆盲配,以增强其要被快速移除、升级、重新安装、和/或替换的能力。由此,在一些实施例中,数据中心100可以在数据中心地板上没有人类参与的情况下进行操作(例如,执行工作负载、经历维护、和/或进行升级等)。在其他实施例中,人类可以在数据中心100中促进一个或多个维护或升级操作。
应当意识到的是,每个电路板引导330是双面的。即,每个电路板引导330包括限定电路板引导330的每个面上的电路板槽380的内墙。以该方式,每个电路板引导330可以支撑每个面上的无托架电路板基底。由此,单个额外的细长的支柱可以被增加至机架240以将机架240变成能够支撑如在图3中所示出的板槽320两倍的两机架解决方案。说明性机架240包括七对310限定对应的七个板槽320的细长的支臂312,其中每个对被配置为接收和支撑对应的板400,如在上文所讨论的。当然,在一些实施例中,机架240可以包括细长的支臂312的额外的或较少的对310(即,额外的或较少的板槽320)。应当意识到的是,因为板400是无托架的,所以板400可以具有不同于一般的服务器的总体高度。由此,在一些实施例中,每个板槽320的高度可以低于一般服务器的高度(例如,低于单个机架单位,“1U”)。即,细长的支臂312的每个对310之间的竖直距离可以小于标准机架单位“1U”。额外地,由于板槽320的高度的相对降低,因此,在一些实施例中,机架240的整体高度可以低于传统机架包围结构的高度。例如,在一些实施例中,细长的支柱302、304中的每个可以具有六英尺或更少的长度。再一次,在其他实施例中,机架240可以具有不同的维度。此外,应当意识到的是,机架240不包括任何墙、包围结构等。相反,机架240是对本地环境开放的无包围机架。当然,在一些情况下,可以将端板附接至细长的支柱302、304中的一个,在那些情况下机架240形成数据中心100中的结束行机架。
在一些实施例中,各种互连可以通过细长的支柱302、304而向上或向下路由。为了促进这样的路由,每个细长的支柱302、304包括内墙,所述内墙限定互连可以位于其中的内室。通过细长的支柱302、304路由的互连可以被实施为任何类型的互连,其包括但不限于用于向每个板槽320提供通信互连的数据或通信互连、用于向每个板槽320提供电力的电力互连、和/或其他类型的互连。
在说明性实施例中,机架240包括对应的光学数据连接器(未示出)安装在其上的支撑平台。每个光学数据连接器与对应的板槽320相关联,并且被配置为当板400在对应的板槽320中被接收时,与对应的板400的光学数据连接器紧密配合。在一些实施例中,数据中心100中的组件(例如,板、机架、和交换机)之间的光学连接是用盲配光学连接形成的。例如,每个线缆上的门可以防止灰尘污染线缆内的纤维。在连接至盲配光学连接器机构的过程中,当线缆的末端进入连接器机构时所述门被推开。随后,线缆内的光纤进入连接器机构内的胶质(gel),并且一个线缆的光纤在连接器机构内部的胶质中接触到另一线缆的光纤。
说明性机架240还包括耦合至机架240的交叉支臂的风扇阵列370。风扇阵列370包括一行或多行冷却风扇372,它们排列在细长的支柱302、304之间的水平线上。在说明性实施例中,风扇阵列370包括针对机架240的每个板槽320的一行冷却风扇372。如上文所讨论的,在说明性实施例中,每个板400不包括任何板载冷却系统,并且由此,风扇阵列提供针对在机架240中所接收的每个板400的冷却。在说明性实施例中,每个机架240还包括与每个板槽320相关联的电源。每个电源被安装至限定了对应的板槽320的细长的支臂312的对310中的细长的支臂312中的一个。例如,机架240可以包括耦合或安装至从细长的支柱302延伸的每个细长的支臂312的电源。每个电源包括电源连接器,其被配置为当板400在对应的板槽320中被接收时与板400的电源连接器紧密配合。在说明性实施例中,板400不包括任何板载电源,并且由此,在机架240中所提供的电源当被安装至机架240时向对应的板400供电。
现在参考图6,在说明性实施例中,板400被配置为如上文所讨论的安装在数据中心100的对应的机架240中。在一些实施例中,每个板400可以被优化或者以其他方式被配置用于执行特定任务,例如计算任务、加速任务、数据存储任务等。例如,板400可以被实施为如在下文中关于图8-图9讨论的计算板800,如在下文中关于图10-图11讨论的加速器板1000,如在下文中关于图12-图13讨论的存储板1200,或者如在下文中关于图14讨论的、经优化或以其他方式被配置为执行其他专门任务的板,例如存储器板1400。
如上文中讨论的,说明性板400包括无托架电路板基底602,其支持安装在其上的各种物理资源(例如,电气组件)。应当意识到的是,电路板基底602是“无托架的”,在于板400不包括外壳或包围结构。相反,无托架电路板基底602是对本地环境开放的。无托架电路板基底602可以由能够支持安装在其上的各种电器组件的任何材料形成。例如,在说明性实施例中,无托架电路板基底602是由FR-4玻璃纤维环氧树脂压板材料形成的。当然,在其他实施例中,其他材料可以用于形成无托架电路板基底602。
如在下文中更加详细地讨论的,无托架电路板基底602包括多个特征,其改进安装在无托架电路板基底602上的各种电器组件的热冷却特性。如所讨论的,无托架电路板基底602不包括外壳或包围结构,这可以通过减少可能抑制气流的那些结构来改进板400的电器组件上的气流。例如,因为无托架电路板基底602不位于个体的外壳或包围结构中,因此无托架电路板基底602不存在背板(例如,托架的后面板),而背板可以抑制穿过电器组件的气流。额外地,无托架电路板基底602具有这样的几何形状,其被配置为减少穿过安装至无托架电路板基底602的电器组件的气流路径的长度。例如,说明性无托架电路板基底602具有大于无托架电路板基底602的深度606的宽度604。在一个特定实施例中,例如,相比于一般的服务器具有大约17英寸的宽度和大约39英寸的深度,无托架电路板基底602具有大约21英寸的宽度以及大约9英寸的深度。由此,从无托架电路板基底602的前边610延伸朝向后边612的气流路径608具有相对于一般服务器较短的距离,这可以改进板400的热冷却特性。此外,尽管没有在图6中示出,但安装至无托架电路板基底602的各种物理资源被安装在对应的位置中,以使得没有两个实质地产热电器组件彼此遮蔽,如在下文中详细讨论的。即,没有在操作期间产生可观的热(即,大于足以负面地影响另一电器组件的冷却的标称热)的两个电器组件被安装至沿着气流路径608的方向(即,沿着从无托架电路板基底602的前边610延伸朝向后边612的方向)彼此线性地串联的无托架电路板基底602。
如在上文中所讨论的,说明性板400包括安装至无托架电路板基底602的顶面650的一个或多个物理资源。尽管在图6中示出了两个物理资源620,但应当意识到的是,在其他实施例中,板400可以包括一个、两个、或更多个物理资源620。物理资源620可以被实施为任何类型的处理器、控制器、或者其他计算电路,所述其他计算电路能够执行诸如计算功能之类的各种任务和/或取决于例如板400的类型或期望的功能来控制板400的功能。例如,如在下文中详细讨论的,物理资源620可以在板400被实施为计算板的实施例中被实施为高性能处理器,在板400被实施为加速器板的实施例中被实施为加速器协处理器或电路,在板400被实施为存储板的实施例中被实施为存储控制器,或者在板被实施为存储器板的实施例中被实施为一组存储器设备。
板400还包括安装至无托架电路板基底602的顶面650的一个或多个额外的物理资源630。在说明性实施例中,额外的物理资源包括如在下文中更加详细地讨论的网络接口控制器(NIC)。当然,在其他实施例中,取决于板400的类型和功能,物理资源630可以包括额外的或其他电子组件、电路、和/或设备。
物理资源620经由输入/输出(I/O)子系统622可通信地耦合至物理资源630。I/O子系统622可以被实施为电路和/或组件,以促进与物理资源620、物理资源630、和/或板400的其他组件的输入/输出操作。例如,I/O子系统622可以被实施为或者以其他方式包括存储器控制器集线器、输入/输出控制集线器、集成的传感器集线器、固件设备、通信链路(例如,点对点链路、总线链路、线路、线缆、光导、印刷电路板迹线等)、和/或用于促进输入/输出操作的其他组件和子系统。在说明性实施例中,I/O子系统622被实施为或者以其他方式包括双数据速率4(DDR4)数据总线或DDR5数据总线。
在一些实施例中,板400还可以包括资源到资源互连624。资源到资源互连624可以被实施为能够促进资源到资源通信的任何类型的通信互连。在说明性实施例中,资源到资源互连624被实施为高速点对点互连(例如,比I/O子系统622更快)。例如,资源到资源互连624可以被实施为快速路径互连(QPI)、多路径互连(UPI)、或者专用于资源到资源通信的其他高速点对点互连。
板400还包括电力连接器640,其被配置为当板400被安装在对应的机架240中时与机架240的对应的电力连接器紧密配合。板400经由电力连接器640从机架240的电源接收电力,以向板400的各种电气组件供电。即,板400不包括用于向板400的电气组件提供电力的任何本地电源(即,板载电源)。对本地或板载电源的不包括促进无托架电路板基底602的整体占用面积(footprint)的降低,这可以增加如上文所讨论的安装在无托架电路板基底602上的各种电气组件的热冷却特性。在一些实施例中,电力通过在处理器820正下方的过孔(vias)而提供给处理器820(例如,通过无托架电路板基底602的底面750),这提供了增加的热预算、额外的电流和/或电压、以及对一般的板的更好的电压控制。
在一些实施例中,板400还可以包括安装(mouning)特征642,其被配置为与机器人的安装臂或其他结构紧密结合,以促进由机器人将板600放置在机架240中。安装特征642可以被实施为允许机器人抓住板400而不伤害无托架电路板基底602或安装至其的电气组件的任何类型的物理结构。例如,在一些实施例中,安装特征642可以被实施为附接至无托架电路板基底602的非导体舱。在其他实施中,安装特征可以被实施为支架、支撑、或者附接至无托架电路板基底602的其他类似结构。安装特征642的特定数量、形状、大小、和/或构造可以取决于被配置为管理板400的机器人的设计。
现在参考图7,除了安装在无托架电路板基底602的顶面650上的物理资源之外,板400还包括安装至无托架电路板基底602的底面750的一个或多个存储器设备720。即,无托架电路板基底602被实施为双面电路板。物理资源620经由I/O子系统622可通信地耦合至存储器设备720。例如,物理资源620和存储器设备720可以由延伸通过无托架电路板基底602的一个或多个过孔而可通信地耦合。在一些实施例中,每个物理资源620可以可通信地耦合至不同的一组一个或多个存储器设备720。可替代地,在其他实施例中,每个物理资源620可以可通信地耦合至每个存储器设备720。
存储器设备720可以被实施为能够在板400的操作期间存储针对物理资源620的数据的任何类型的存储器设备,例如,任何类型的易失性(例如,动态随机存取存储器(DRAM)等)或非易失性存储器。易失性存储器可以是需要电力来维持由介质所存储的数据的状态的存储介质。易失性存储器的非限制性示例可以包括各种类型的随机存取存储器(RAM),例如动态随机存取存储器(DRAM)或者静态随机存取存储器(SRAM)。可以在存储器模块中使用的一种特定类型的DRAM是同步动态随机存取存储器(SDRAM)。在特定的实施例中,存储器组件的DRAM可以遵从由JEDEC发布的标准,例如针对DDR SDRAM的JESD79F、针对DDR2 SDRAM的JESD79、针对DDR3SDRAM的JESD79-3F、针对DDR4 SDRAM的JESD79-4A、针对低功率DDR(LPDDR)的JESD209、针对LPDDR2的JESD209-2、针对LPDDR3的JESD209-3、以及针对LPDDR4的JESD209-4(这些标准在www.jedec.org可获得)。这样的标准(以及类似标准)可以被称为基于DDR的标准,而实现这样的标准的存储设备的通信接口可以被称为基于DDR的接口。
在一个实施例中,存储器设备是块可寻址存储器设备,例如基于NAND或NOR技术的那些设备。存储器设备还可以包括下一代非易失性设备,例如Intel 3D XPointTM存储器或者其他字节可寻址位写入非易失性存储器设备。在一个实施例中,存储器设备可以是或者可以包括使用硫属化合物玻璃的存储器设备、多阈值水平NAND闪速存储器、NOR闪速存储器、单级或多级相变存储器(PCM)、电阻存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、磁阻随机存取存储器(MRAM)、包含忆阻器技术的存储器、包括金属氧化物基底、氧空位基底、和导电桥随机存取存储器(CB-RAM)的电阻存储器、或者自旋转移矩(STT)-MRAM、基于自旋电子磁节存储器的设备、基于磁隧道节(MTJ)的设备、基于DW(畴壁)和SOT(自旋轨道转移)的设备、基于晶闸管的存储器设备、或以上中的任何的组合、或者其他存储器。存储器设备可以指的是管芯本身和/或经封装的存储器产品。在一些实施例中,存储器设备可以包括无晶体管可堆叠交叉点架构,其中,存储器单元位于字线和位线的交叉处并且可独立寻址,并且其中,位存储是基于体电阻的改变的。
现在参考图8,在一些实施例中,板400可以被实施为计算板800。计算板800被优化或者以其他方式被配置为执行计算任务。当然,如上文所讨论的,计算板800可以依赖于诸如加速器板和/或存储板之类的其他板来执行这样的任务。计算板800包括类似于板400的物理资源的各种物理资源(例如,电气组件),其在图8中使用相同的附图标记来标识。对在上文中关于图6和7所提供的这样的组件的描述适用于计算板800的对应的组件,并且为了计算板800的描述清楚起见不在本文中重复。
在说明性计算板800中,物理资源620被实施为处理器820。尽管在图8中仅示出了两个处理器820,但应当意识到的是,在其他实施例中,计算板800可以包括额外的处理器820。说明性地,处理器820被实施为高性能处理器820并且可以被配置为以相对高的功率等级进行操作。尽管以高于一般处理器的功率等级(其以大约155-230W进行操作)进行操作的处理器820生成额外的热,但在上文中所讨论的无托架电路板基底602的增强的热冷却特性促进较高功率的操作。例如,在说明性实施例中,处理器820被配置为以至少250W的功率等级进行操作。在一些实施例中,处理器820可以被配置为以至少350W的功率等级进行操作。
在一些实施例中,计算板800还可以包括处理器到处理器互连842。类似于上文所讨论的板400的资源到资源互连624,处理器到处理器互连842可以被实施为能够促进处理器到处理器互连842的通信的任何类型的通信互连。在说明性实施例中,处理器到处理器互连842被实施为高速点对点互连(例如,比I/O子系统622更快)。例如,处理器到处理器互连842可以被实施为快速路径互连(QPI)、多路径互连(UPI)、或者专用于处理器到处理器通信的其他高速点对点互连。
计算板800还包括通信电路830。说明性通信电路830包括网络接口控制器(NIC)832,其还可以被称为主机结构接口(HFI)。NIC 832可以被实施为或者以其他方式包括任何类型的集成电路、分立电路、控制器芯片、芯片组、内插板、子插件板、网络接口卡、能够由计算板800使用以与另一计算设备(例如,与其他板400)连接的其他设备。在一些实施例中,NIC 832可以被实施为包括一个或多个处理器的片上系统的(SoC)的一部分,或者被包括在同样包含一个或多个处理器的多芯片封装上。在一些实施例中,NIC 832可以包括都在NIC832本地的本地处理器(未示出)和/或本地存储器。在这样的实施例中,NIC 832的本地处理器能够执行处理器820的功能中的一个或多个。额外地或可替代地,在这样的实施例中,NIC832的本地存储器可以在板等级、插槽等级、芯片等级、和/或其他等级被集成到计算板的一个或多个组件中。
通信电路830可通信地耦合至光学数据连接器834。光学数据连接器834被配置为当计算板800被安装在机架240中时与机架240的对应的光学数据连接器紧密配合。说明性地,光学数据连接器834包括多个光纤,其从光学数据连接器834的配合面引出至光学收发机836。光学收发机836被配置为将来自机架侧光学数据连接器的到来的光学信号转换成电信号,以及将电信号转换成针对机架侧光学数据连接器的输出的光学信号。尽管在说明性实施例中被示出为形成了光学数据连接器834的部分,但在其他实施例中,光学收发机836可以形成通信电路830的一部分。
在一些实施例中,计算板800还可以包括扩展连接器840。在这样的实施例中,扩展连接器840被配置为与扩展无托架电路板基底的对应的连接器紧密配合以向计算板800提供额外的物理资源。所述额外的物理资源可以例如由处理器820在计算板800的操作期间使用。扩展无托架电路板基底可以大体上类似于在上文中所讨论的无托架电路板基底602,并且可以包括安装至其的各种电气组件。安装至扩展无托架电路板基底的特定的电气组件可以取决于扩展无托架电路板基底的预期的功能。例如,扩展无托架电路板基底可以提供额外的计算资源、存储器资源、和/或存储资源。由此,扩展无托架电路板基底的额外的物理资源可以包括但不限于处理器、存储器设备、存储设备、和/或加速器电路,其包括例如现场可编程门阵列(FPGA)、专用集成电路(ASIC)、安全协处理器、图形处理单元(GPU)、机器学习电路、或者其他专用处理器、控制器、设备、和/或电路。
现在参考图9,示出了计算板800的说明性实施例。如图所示,处理器820、通信电路830、以及光学数据连接器834被安装至无托架电路板基底602的顶面650。任何合适的附接或安装技术可以用于将计算板800的物理资源安装至无托架电路板基底602。例如,各种物理资源可以被安装在对应的插槽(例如,处理器插槽)、支持器、或支架。在一些情况下,电器组件中的一些可以经由焊接或类似技术而被直接安装至无托架电路板基底602。
如在上文中所讨论的,个体处理器820和通信电路830被安装至无托架电路板基底602的顶面650,以使得没有两个产热的电气组件彼此遮蔽。在说明性实施例中,处理器820和通信电路830被安装在无托架电路板基底602的顶面650上的对应位置中,以使得那些物理资源中没有两个沿着气流路径608的方向彼此线性串联。应当意识到的是,尽管光学数据连接器834与通信电路830串联,但光学数据连接器834在操作期间不产生热或名义上产生热。
如在上文中关于板400所讨论的,计算板800的存储器设备720被安装至无托架电路板基底602的底面750。尽管被安装至底面750,但是存储器设备720经由I/O子系统622通信地耦合至位于顶面650上的处理器820。因为无托架电路板基底602被实施为双面电路板,所以存储器设备720和处理器820可以由延伸通过无托架电路板基底602的一个或多个过孔、连接器、或其他机制可通信地耦合。当然,在一些实施例中,每个处理器820可以可通信地耦合至不同的一组一个或多个存储器设备720。可替代地,在其他实施例中,每个处理器820可以可通信地耦合至每个存储器设备720。在一些实施例中,存储器设备720可以被安装至无托架电路板基底602的底面上的一个或多个存储器夹层(memory mezzanine),并且可以通过球状网格阵列来与对应的处理器820进行互连。
处理器820中的每个包括安装至其的散热器850。由于将存储器设备720安装至无托架电路板基底602的底面750(以及板400在对应的机架240中竖直间隔),所以无托架电路板基底602的顶面650包括促进对相对于在一般服务器中所使用的传统散热器而言具有较大尺寸的散热器850的使用的额外的“自由”区域或空间。额外地,由于无托架电路板基底602的经改进的热冷却特性,处理器散热器850全都不包括附接至其的冷却风扇。即,散热器中的每个被实施为无风扇散热器。
现在参考图10,在一些实施例中,板400可以被实施为加速器板1000。加速器板1000被优化或者以其他方式被配置为执行专门的计算任务,例如机器学习、加密、散列、或者其他计算密集的任务。在一些实施例中,例如,计算板800可以在操作期间将任务卸载至加速器板1000。加速器板1000包括与板400和/或计算板800的组件类似的各种组件,它们可以在图10中使用相同的附图标记来标识。在上文中关于图6、图7、和图8所提供的这样的组件的描述适用于加速器板1000的对应的组件,并且为了对加速器板1000的描述清楚起见而不在本文中重复。
在说明性加速器板1000中,物理资源被实施为加速器电路1020。尽管在图10中仅仅示出了两个加速器电路1020,但应当意识到的是,在其他实施例中,加速器板1000可以包括额外的加速器电路1020。在一些实施例中,例如,如在图11中所示出的,加速器板1000可以包括四个加速器电路1020。加速器电路1020可以被实施为任何类型的处理器、协处理器、计算电路、或者能够执行计算或处理操作的其他设备。例如,加速器电路1020可以被实施为例如现场可编程门阵列(FPGA)、专用集成电路(ASIC)、安全协处理器、图形处理单元(GPU)、机器学习电路、或者其他专用处理器、控制器、设备、和/或电路。
在一些实施例中,加速器板1000还可以包括加速器到加速器互连1042。类似于在上文中所讨论的板600的资源到资源互连,加速器到加速器互连可以被实施为能够促进加速器到加速器通信的任何类型的通信互连。在说明性实施例中,加速器到加速器互连1042被实施为高速点对点互连(例如,比I/O子系统622更快)。例如,加速器到加速器互连1042可以被实施为快速路径互连(QPI)、多路径互连(UPI)、或者专用于处理器到处理器通信的其他高速点对点互连。在一些实施例中,加速器电路1020可以是菊花链式的,其中,主加速器电路1020通过I/O子系统622连接至NIC 832和存储器720,而辅助加速器电路1020通过主加速器电路1020连接至NIC 832和存储器720。
现在参考图11,示出了加速器板1000的说明性实施例。如上文所讨论的,加速器电路1020、通信电路830、以及光学数据连接器834被安装至无托架电路板基底602的顶面650。再一次,个体的加速器电路1020和通信电路830被安装至无托架电路板基底602的顶面650,以使得没有两个产热的电气组件彼此遮蔽,如上文所讨论的。如上文中关于板600所讨论的,加速器板1000的存储器设备720被安装至无托架电路板基底602的底面750。尽管被安装至底面750,但存储器设备720经由I/O子系统622(例如,通过过孔)可通信地耦合至位于顶面650上的加速器电路1020。此外,加速器1020中的每个可以包括大于在服务器中使用的传统散热器的散热器1070。如在上文中参考散热器870所描述的,散热器1070可以大于传统散热器,这是由于位于无托架电路板基底602的底面750而不是顶面650的存储器设备750所提供的自由“区域”。
现在参考图12,在一些实施例中,板400可以被实施为存储板1200。存储板1200被优化或者以其他方式被配置为将数据存储在存储板1200本地的数据存储装置1250中。例如,在操作期间,计算板800或者加速器板1000可以将数据存储至存储板1200的数据存储装置1250,并且从中取回数据。存储板1200包括与板400和/或计算板800的组件类似的各种组件,所述组件已经在图12中使用相同的附图标记来标识。在上文中关于图6、图7、和图8所提供的这样的组件的描述适用于存储板1200的对应的组件,并且为了对存储板1200的描述清楚起见而不在本文中重复。
在说明性存储板1200中,物理资源620被实施为存储控制器1220。尽管在图12中仅仅示出了两个存储控制器1220,但应当意识到的是,在其他实施例中,存储板1200可以包括额外的存储控制器1220。存储控制器1220可以被实施为能够基于经由通信电路830所接收的请求来控制将数据存储到数据存储装置1250中以及从数据存储装置1250中取回数据的任何类型的处理器、控制器、或者控制电路。在说明性实施例中,存储控制器1220被实施为相对低功率的处理器或控制器。例如,在一些实施例中,存储控制器1220可以被配置为以大约75瓦的功率进行操作。
在一些实施例中,存储器板1200还可以包括控制器到控制器互连1242。类似于在上文所讨论的板400的资源到资源互连624,控制器到控制器互连1242可以被实施为能够促进控制器到控制器通信的任何类型的通信互连。在说明性实施例中,控制器到控制器互连1242被实施为高速点对点互连(例如,比I/O子系统622更快)。例如,控制器到控制器互连1242可以被实施为快速路径互连(QPI)、多路径互连(UPI)、或者专用于处理器到处理器通信的其他高速点对点互连。
现在参考图13,示出了存储板1200的说明性实施例。在说明性实施例中,数据存储装置1250被实施为或者以其他方式包括被配置为容纳一个或多个固态驱动器(SSD)1254的仓储笼1252。为此,仓储笼1252包括多个安装槽1256,其中每个被配置为接收对应的固态驱动器1254。安装槽1256中的每个包括协作以限定对应的安装槽1256的访问开口1260的多个驱动引导1258。仓储笼1252被固定至无托架电路板基底602,以使得访问开口背对无托架电路板基底602(即,面朝其正面)。由此,固态驱动器1254在存储板1200被安装在对应的机架204中时是可访问的。例如,固态驱动器1254可以在存储板1200仍然被安装在对应的机架240中时被换出机架240(例如,经由机器人)。
仓储笼1252说明性地包括十六个安装槽1256,并且能够对十六个固态驱动器1254进行安装和存储。当然,在其他实施例中,仓储笼1252可以被配置为存储额外的或更少的固态驱动器1254。额外地,在说明性实施例中,固态驱动器被竖直地安装在仓储笼1252中,但是在其他实施例中可以以不同的朝向被安装在仓储笼1252中。每个固态驱动器1254可以被实施为能够存储长期数据的任何类型的数据存储设备。为此,固态驱动器1254可以包括在上文中所讨论的易失性和非易失性存储器设备。
如在图13中所示出的,存储控制器1220、通信电路830、以及光学数据连接器834说明性地被安装至无托架电路板基底602的顶面650。再一次,如在上文中所讨论的,可以使用任何合适的附接或安装技术来将存储板1200的电气组件安装至无托架电路板基底602,所述技术包括例如插槽(例如,处理器插槽)、支持器、支架、焊接连接、和/或其他安装或固定技术。
如上文所讨论的,个体存储控制器1220和通信电路830被安装至无托架电路板基底602的顶面650,以使得没有两个产热的电气组件彼此遮蔽。例如,存储控制器1220和通信电路830被安装在无托架电路板基底602的顶面650上的对应位置中,以使得那些电气组件中没有两个沿着气流路径608的方向彼此线性串联。
如在上文中关于板400所讨论的,存储板1200的存储器设备720被安装至无托架电路板基底602的底面750。尽管被安装至底面750,但存储器设备720经由I/O子系统622可通信地耦合至位于顶面650上的存储控制器1220。再一次,因为无托架电路板基底602被实施为双面电路板,所以存储器720和存储控制器1220可以由延伸通过无托架电路板基底602的一个或多个过孔、连接器、或其他机制可通信地耦合。存储控制器1220中的每个包括安装至其的散热器1270。如在上文中所讨论的,由于存储板1200的无托架电路板基底602的经改进的热冷却特性,散热器1270全都不包括附接至其的冷却风扇。即,散热器1270中的每个被实施为无风扇散热器。
现在参考图14,在一些实施例中,板400可以被实施为存储器板1400。存储器板1400被优化或者以其他方式被配置为向其他板400(例如,计算板800、加速器板1000等)提供对存储器板1200本地的(例如,在存储器设备720的两个或更多个集合1430、1432中)存储器池的存取。例如,在操作期间,计算板800或加速器板1000可以使用映射至存储器集合1430、1432中的物理地址的逻辑地址空间而远程地向存储器板1200的存储器集合1430、1432中的一个或多个进行写入和/或从其进行读取。存储器板1400包括与板400和/或计算板800的组件类似的各种组件,所述组件已经在图14中使用相同的附图标记被标识。在上文中关于图6、图7、和图8所提供的这样的组件的描述适用于存储器板1400的对应的组件,并且为了对存储器板1400的描述清楚起见而不在本文中重复。
在说明性存储器板1400中,物理资源620被实施为存储器控制器1420。尽管在图14中仅示出了两个存储器控制器1420,但应当意识到的是,在其他实施例中,存储器板1400可以包括额外的存储器控制器1420。存储器控制器1420可以被实施为能够基于经由通信电路830所接收的请求来控制将数据写入到存储器集合1430、1432中以及从存储器集合1430、1432中读取数据的任何类型的处理器、控制器、或控制电路。在说明性实施例中,每个存储控制器1220被连接至对应的存储器集合1430、1432以写入对应的存储器集合1430、1432内的存储器设备720并且从其读取,以及施加与板400相关联的任何许可(例如,读、写等),其已经向存储器板1400发送了请求以执行存储器存取操作(例如,读或写)。
在一些实施例中,存储器板1400还可以包括控制器到控制器互连1442。类似于在上文所讨论的板400的资源到资源互连624,控制器到控制器互连1442可以被实施为能够促进控制器到控制器通信的任何类型的通信互连。在说明性实施例中,控制器到控制器互连1242被实施为高速点对点互连(例如,比I/O子系统622更快)。例如,控制器到控制器互连1442可以被实施为快速路径互连(QPI)、多路径互连(UPI)、或者专用于处理器到处理器通信的其他高速点对点互连。由此,在一些实施例中,存储器控制器1420可以通过控制器到控制器1442来存取与另一存储器控制器1420相关联的存储器集合1432内的存储器。在一些实施例中,可缩放存储器控制器由存储器板(例如,存储器板1400)上的、在本文中被称为“小芯片(chiplet)”的多个较小的存储器控制器组成。小芯片可以是互连的(例如,使用EMIB(嵌入式多管芯互连桥))。经组合的小芯片存储器控制器可以缩放为相对大数量的存储器控制器和I/O端口(例如,多至16个存储器通道)。在一些实施例中,存储器控制器1420可以实现存储器交错(例如,一个存储器地址被映射至存储器集合1430,下一个存储器地址被映射至存储器集合1432,而第三地址被映射至存储器集合1430,以此类推)。交错可以在存储器控制器1420内管理,或者从(例如,计算板800的)CPU插槽跨网络链路到存储器集合1430、1432,并且可以与存取来自同一存储器设备的连续的存储器地址相比改进与执行存储器存取操作相关联的延迟。
此外,在一些实施例中,存储器板1400可以使用波导连接器1480通过波导连接至一个或多个其他板400(例如,在同一机架240中或相邻的机架240中)。在说明性实施例中,波导是提供16个Rx(即,接收)通道和16个Rt(即,发送)通道的64毫米波导。在说明性实施例中,每个通道是16Ghz或32Ghz。在其他实施中,频率可以是不同的。使用波导可以向另一板(例如,同一机架240或相邻机架240中的板400,如存储器板1400)提供对存储器池(例如,存储器集合1430、1432)的高吞吐量存取,而不增加至光学数据连接器834上的负载。
现在参考图15,用于执行一个或多个工作负载(例如,应用)的系统可以根据数据中心100来实现。在说明性实施例中,系统1510包括编排器服务器1520,其可以被实施为受管理的节点,所述受管理的节点包括执行管理软件(例如,云操作环境,如OpenStack)的计算设备(例如,计算板800),所述计算设备可通信地耦合至多个板400,板400包括大量计算板1530(例如,每个类似于计算板800)、存储器板1540(例如,每个类似于存储器板1400)、加速器板1550(例如,每个类似于存储器板1000)、以及存储板1560(例如,每个类似于存储板1200)。板1530、1540、1550、1560中的一个或多个可以由编排器服务器1520分组成受管理的节点1570,以共同执行工作负载(例如,在虚拟机或在容器中执行的应用1232)。管理节点1570可以被实施为来自相同或不同的板400的物理资源620的组合,物理资源620诸如处理器820、存储器资源720、加速器电路1020、数据存储装置1250。此外,受管理的节点可以由编排器服务器1520在工作负载被分配至该受管理的节点时或者在任何时候建立、定义、或“旋转(spin-up)”,并且无论任何工作负载当前是否被分配至该受管理的节点都可以存在。在说明性实施例中,编排器服务器1520可以根据与针对工作负载(例如,应用1532)的服务等级协定相关联的服务质量(QoS)目标(例如,与吞吐量、延迟、每秒指令等相关联的性能目标)来选择性地将物理资源620从板400分配和/或取消分配,和/或将一个或多个板400添加至受管理的节点1570或者从受管理的节点1570移除。在这样做时,编排器服务器1520可以在受管理的节点1570的每个板400中接收指示性能条件的遥测数据(例如,吞吐量、延迟、每秒指令等),并且将所述遥测数据与服务质量目标比较以确定是否满足服务质量目标。如果满足,则编排器服务器1520可以额外地确定一个或多个物理资源是否可以在仍然满足QoS目标的情况下从受管理的节点1570取消分配,由此释放那些物理资源以用于在另一受管理的节点中使用(例如,以执行不同的工作负载)。可替代地,如果QoS目标当前不被满足,则编排器服务器1520可以确定动态地分配额外的物理资源以在工作负载(例如,应用1532)执行时协助工作负载的执行。
额外地,在一些实施例中,编排器服务器1520可以例如通过以下方式来识别工作负载(例如,应用1532)的资源利用中的趋势:识别工作负载(例如,应用1532)执行的阶段(例如,执行每个具有不同的资源利用特性的不同的操作的时段),以及预先地识别数据中心100中的可用资源并且将它们分配至受管理的节点1570(例如,在相关联的阶段开始的预先定义的时段内)。在一些实施例中,编排器服务器1520可以基于用于将工作负载置于数据中心100中的计算板和其他资源(例如,加速器板、存储器板、存储板)之间的各种延迟和分布方案来对性能建模。例如,编排器服务器1520可以对考虑到板400上的资源的性能(例如,FPGA性能、存储器存取延迟等)以及通过网络到资源(例如,FPGA)的路径的性能(例如,拥塞、延迟、带宽)的模型进行利用。由此,编排器服务器1520可以基于与在数据中心100中可用的每个潜在资源相关联的总延迟(例如,与资源本身的性能相关联的延迟,加上与通过网络的执行工作负载的计算板与资源位于其上的板400之间的路径相关联的延迟)来确定哪个(些)资源应当与哪些工作负载一起被使用。
在一些实施例中,编排器服务器1520可以使用从板400报告的遥测数据(例如,温度、风扇速度等)来生成数据中心100中的热生成图,并且根据所述热生成图以及与不同的工作负载相关联的经预测的热生成来向受管理的节点分配资源,以维持数据中心100中的目标温度和热分布。额外地或可替代地,在一些实施例中,编排器服务器1520可以将所接收的遥测数据组织成指示受管理的节点之间的关系(例如,空间关系,诸如数据中心100内的受管理的节点的资源的物理位置,和/或功能关系,例如,由受管理的节点为其提供服务的客户对所述受管理的节点的分组,通常由受管理的节点所执行的功能的类型,通常在彼此间共享或交换工作负载的受管理的节点)的层级模型。基于受管理的节点中的物理位置和资源的差异,给定的工作负载可以展示跨不同的受管理的节点的资源的不同的资源利用(例如,引起不同的内部温度、使用处理器或存储器容量的不同百分比)。编排器服务器1520可以基于存储在层级模型中的遥测数据来确定所述差异,并且在工作负载从一个受管理的节点被重新分配至另一个受管理的节点的情况下将所述差异归纳成对该工作负载的未来资源利用的预测,从而精确地平衡数据中心100中的资源利用。
在一些实施例中,为了降低编排器服务器1520上的计算负载以及网络上的数据转移负载,编排器服务器1520可以向板400发送自检测信息,以使得每个板400能够本地地(例如,在板400上)确定由板400所生成的遥测数据是否满足一个或多个条件(例如,满足预先定义的阈值的可用容量、满足预先定义的阈值的温度等)。每个板400可以接着将简化结果(例如,是或者否)报告回编排器服务器1520,其中编排器1520可以在确定资源向受管理的节点的分配时利用所述简化结果。
现在参考图16,可以根据在上文中参考图1所描述的数据中心100来实现用于在超融合基础结构中进行池化的系统1600。在说明性实施例中,系统1600包括与板A 1604、板B1606、板C 1608进行通信的编排器服务器1602。尽管仅示出了板A-C 1604、1606、1608,但可以存在在系统1600中利用的任何数量的板。所述板可以被实施为计算板、加速器板、存储器板、和/或数据存储板。板1604、1606、1608中的一个或多个可以例如由编排器服务器1602分组成受管理的节点,以共同执行工作负载(例如,应用)。受管理的节点可以被实施为来自相同或不同的板或机架的诸如计算资源、存储器资源、存储资源、或其他资源之类的资源的组合。此外,受管理的节点可以由编排器服务器1602在工作负载被分配至该受管理的节点时或者在任何时候建立、定义、或“旋转(spin-up)”,并且无论任何工作负载当前是否被分配至该受管理的节点都存在。系统1600可以位于数据中心中,并且向通过网络(未示出)与系统1600进行通信的客户端设备(未示出)提供存储和计算服务(例如,云服务)。编排服务器1602可以支持诸如OpenStack之类的云操作环境,并且由编排器服务器1602所建立的受管理的节点可以代表客户端设备的用户来执行一个或多个应用或过程(即,工作负载),例如在虚拟机或容器中。在说明性实施例中,板A 1604利用网络接口控制器(NIC)1610的桥接逻辑单元1616来与编排器服务器1602以及其他板1606、1608进行通信,桥接逻辑单元1616可以被实施为能够根据设备映射来路由访问请求的任何设备或电路。另外,板1606、1608包括NIC 1624、1636的桥接逻辑单元1628、1640来类似地与编排器服务器1602和其他板进行通信。此外,在说明性实施例中,板A 1604包括用于执行工作负载(例如,应用)的中央处理单元(CPU)1610,以及可以包括两个加速器设备1618、1620的设备1614。板1604、1606、1608中的每个被类似地实施,并且可以包括多个设备1614、1626、1638。所述多个设备1614、1626、1638可以包括加速器设备1618、1620,存储器设备1630、1632,以及数据存储设备1642、1644的任何组合。
在说明性实施例中,板1604、1606、1608形成要由网络中的其他板利用的设备的池。在操作中,桥接逻辑单元1616、1628、1640从请求者设备获得对设备进行访问的请求。所述请求者设备可以被实施为CPU 1610,例如,当CPU 1610在运行工作负载时。尽管在板A1604及其组件的上下文中进行了描述,但板1604、1606、1608中的每一个可以类似地执行在下文中所描述的功能。执行工作负载的的CPU 1610可以需要资源来处理工作负载,并且由此可以向桥接逻辑单元1616发送用于访问设备的请求。桥接逻辑单元1616可以使用从编排器服务器1602(例如,由编排器服务器1602从对板进行查询以识别可用的设备而生成,由人类管理员输入等)或从另一计算设备(未示出)或其他板1606、1608之一中接收的设备映射,所述设备映射指示耦合至桥接逻辑单元1616、1628、1640的多个设备1614、1626、1638的位置。由此,由桥接逻辑单元1616所获得的访问请求(例如,由CPU 1610在执行工作负载时生成)被桥接逻辑单元1616使用设备映射分析,以确定板1604、1606、1608中的哪个具有所请求的设备。例如,在说明性实施例中,桥接逻辑单元1616可以确定板B 1606包括多个存储器设备1630、1632,并且请求访问存储器设备1630。为此,桥梁逻辑单元1616可以与选择性地上电的桥接逻辑单元1628进行通信以请求桥接逻辑单元1628提供对存储器设备1630的访问。在说明性的实施例中,在提供对存储器设备1630的访问时,桥接逻辑单元1628选择性地将存储器设备1630上电,使得诸如CPU 1622之类的其他设备下电以降低能耗。另外,所请求的设备(例如,存储器设备1630)可以在存储器设备1630已经上电之后被映射为在板A 1604本地。在一些实施例中,桥接逻辑单元1616还可以选择性地将板A 1604本地的(例如,板载的)设备(例如,加速器设备1618、1620,响应于来自CPU 1610和/或其他板(例如,板1606、1608,通过其相应的桥接逻辑单元1628、1640)的请求)上电。桥接逻辑单元1616可以使得与操作系统无关的驱动器能够与所请求的设备进行通信,所述驱动器例如快速非易失性存储器驱动器或者通过结构的快速非易失性存储器驱动器。通过选择性地以所请求的为基础对板上的设备上电,而不是保持所有板上的所有设备上电,系统1600降低由板1604、1606、1608所消耗的能量的量,同时仍然提供对执行工作负载所需的资源的访问。
现在参考图17,板1604可以被实施为能够执行在本文中所描述的功能的任何类型的计算设备,包括执行一个或多个工作负载以及访问设备的池。如在图17中所示出的,说明性板1604包括计算引擎1702、通信电路1704、和设备1614。在一些实施例中,板1604可以包括外围设备1706当然,在其他实施例中,板1604可以包括其他或额外的组件,例如常常在板中发现的那些组件。额外地,在一些实施例中,说明性组件中的一个或多个可以被包含在另一组件中或者以其他方式形成另一组件的一部分。
计算引擎1702可以被实施为能够执行在下文中所描述的各种计算功能的任何类型的设备或设备的集合。在一些实施例中,计算引擎1702可以被实施为单个设备,例如集成电路、嵌入式系统、现场可编程门阵列(FPGA)、片上系统(SOC)、或者其他集成系统或设备。额外地,在说明性实施例中,计算引擎1702包括或者被实施为处理器1708和存储器1710。处理器1708可以被实施为能够执行在本文中所描述的功能的任何类型的处理器。例如,处理器1708可以被实施为单核或多核处理器、微控制器、或者其他处理器或处理/控制电路。在一些实施例中,处理器1708可以被实施为、包括或者被耦合至现场可编程门阵列(FPGA)、专用集成电路(ASIC)、可重配置的硬件或硬件电路、或者用于促进在本文中所描述的功能的执行的其他专用硬件。
存储器1710可以被实施为能够执行在本文中所描述的功能的任何类型的易失性(例如,动态随机存取存储器(DRAM)等)或非易失性存储器或数据存储。另外,图16的其他存储器设备1630、1632可以与存储器1710类似地被实施。易失性存储器可以是需要电力来维持由介质所存储的数据的状态的存储介质。易失性存储器的非限制性示例可以包括各种类型的随机存取存储器(RAM),例如动态随机存取存储器(DRAM)或者静态随机存取存储器(SRAM)。可以在存储器模块中使用的一种特定类型的DRAM是同步动态随机存取存储器(SDRAM)。在特定的实施例中,存储器组件的DRAM可以遵从由JEDEC发布的标准,例如针对DDR SDRAM的JESD79F、针对DDR2 SDRAM的JESD79-2F、针对DDR3 SDRAM的JESD79-3F、针对DDR4 SDRAM的JESD79-4A、针对低功率DDR(LPDDR)的JESD209、针对LPDDR2的JESD209-2、针对LPDDR3的JESD209-3、以及针对LPDDR4的JESD209-4(这些标准在www.jedec.org可获得)。这样的标准(以及类似标准)可以被称为基于DDR的标准,而实现这样的标准的存储设备的通信接口可以被称为基于DDR的接口。
在一个实施例中,存储器设备是块可寻址存储器设备,例如基于NAND或NOR技术的那些设备。存储器设备还可以包括下一代非易失性设备,例如三维(3D)交叉点存储器设备或者其他字节可寻址位写入非易失性存储器设备。在一个实施例中,存储器设备可以是或者可以包括使用硫属化合物玻璃的存储器设备、多阈值水平NAND闪速存储器、NOR闪速存储器、单或多级相变存储器(PCM)、电阻存储器、纳米线存储器、铁电晶体管随机存取存储器(FeTRAM)、反铁电存储器、磁阻随机存取存储器(MRAM)、包含忆阻器技术的存储器、包括金属氧化物基底、氧空位基底、和导电桥随机存取存储器(CB-RAM)的电阻存储器、或者自旋转移矩(STT)-MRAM、基于自旋电子磁节存储器的设备、基于磁隧道节(MTJ)的设备、基于DW(畴壁)和SOT(自旋轨道转移)的设备、基于晶闸管的存储器设备、或以上中的任何的组合、或者其他存储器。存储器设备可以指的是管芯本身和/或经封装的存储器产品。
在一些实施例中,3D交叉点存储器可以包括无晶体管可堆叠交叉点架构,其中,存储器单元位于字线和位线的交叉处并且单独地可寻址,并且其中,位存储是基于体电阻的改变的。在操作中,存储器1710可以存储在操作期间使用的各种软件和数据,例如设备映射数据、应用、程序、库、以及驱动器。
通信电路1704可以被实施为能够使能在计算设备(例如,编排器服务器1602、和/或一个或多个板1604、1606、1608)之间通过网络的通信的任何通信电路、设备、或其集合。通信电路1704可以被配置为使用任何一个或多个通信技术(例如,有线或无线通信)以及相关联的协议(例如,以太网、WiMAX等)来实现这样的通信。在说明性实施例中,通信电路1704可以包括网络接口控制器(NIC)1612(也被称为主机结构接口(HFI)),其可以类似地被实施为能够使能在计算设备(例如,编排器1602、和/或一个或多个板1604、1606、1608)之间通过网络的通信的任何通信电路、设备、或其集合。在说明性实施例中,NIC1612包括桥接逻辑单元1616,其可以被实施为能够执行在本文中所描述的功能的任何类型的计算设备。例如,桥接逻辑单元1616可以被实施为、包括、或者耦合至现场可编程门阵列(FPGA)、专用集成电路(ASIC)、可重配置的硬件或硬件电路、或者用于促进在本文中所描述的功能的执行的其他专用硬件。桥接逻辑单元1616可以被配置为与编排器服务器1602、板1604、1606、1608、或者计算设备(未示出)进行通信,以结合编排器服务器1602和板1604、1606、1608来接收设备的映射和/或建立设备的映射。
如在上文中所提及的,在一些实施例中,板1604可以包括一个或多个外围设备1706。这样的外围设备1706可以包括常常在计算设备中发现的任何类型的外围设备,例如显示器、扬声器、鼠标、键盘、和/或其他输入/输出设备、接口设备、和/或其他外围设备。
编排器服务器1602和板1606、1608可以具有与在图17中所描述的那些组件类似的组件。对板1604的那些组件的描述能够等同地应用于对编排器服务器1602和板1606、1608的组件的描述,并且为了描述清楚起见不在本文中重复。此外,应当意识到的是,编排器服务器1602和板1606、1608可以包括常常在计算设备中发现的其他组件、子组件、和设备,它们不在上文中参考板1604进行讨论并且为了描述清楚起见不在本文中重复。
如在上文中所描述的,编排器服务器1602、板1604、1606、1608经由网络(未示出)说明性地进行通信,所述网络可以被实施为任何类型的有线或无线通信网络,包括全球网络(例如,互联网)、局域网(LAN)或广域网(WAN)、蜂窝网络(例如,全球移动通信系统(GSM)、3G、长期演进(LTE)、全球微波互联接入(WiMAX)等)、数字订户线路(DSL)网络、有线网络(例如,同轴网络、光纤网络等)、或其任何组合。
现在参考图18,板1604可以在操作期间建立环境1800。说明性环境1800包括网络通信器1802以及桥接链路接口1804。环境1800的组件中的每个可以被实施为硬件、固件、软件、或其组合。由此,在一些实施例中,环境1800的组件中的一个或多个可以被实施为电路或电气设备的集合(例如,网络通信器电路1802、桥接链路接口电路1804等)。应当意识到的是,在这样的实施例中,网络通信器电路1802或者桥接链路接口电路1804中的一个或多个可以形成计算引擎1702、通信电路1704、和/或板1604的其他组件中的一个或多个的一部分。在说明性实施例中,环境1800包括设备映射数据1812,其可以被实施为由编排器服务器1602、板1604、1606、1608和/或任何其他计算设备在由板1604、1606、1608对一个或多个工作负载的执行期间建立的任何数据,并且指示设备1614、1626、1638的位置。例如,设备映射1812可以指示设备1614、1626、1638连接至哪个桥接逻辑单元1616、1628、1640,以及设备1614、1626、1638位于哪些板1604、1606、1608上。由此,在说明性实施例中,设备映射数据1812包括能够用于确定诸如CPU 1610之类的请求者设备是否位于与所请求的设备(例如,加速器设备1618)相同的板上。
在说明性环境1800中,可以被实施为硬件、固件、软件、虚拟化硬件、仿真架构、和/或在上文中所讨论的其组合的网络通信器1802被配置为分别促进往来于加速器板1604的入站和出站网络通信(例如,网络业务、网络分组、网络流等)。为此,网络通信器1802被配置为从一个系统或计算设备(例如,板1606或1608、和/或编排器服务器1602)接收数据分组并进行处理,以及准备并将数据分组发送至另一计算设备或系统(例如,板1606或1608、和/或编排器服务器1602)。由此,在一些实施例中,网络通信器1802的功能的至少一部分可以由通信电路1704执行,并且在说明性实施例中,由NIC 1612的桥接逻辑单元1616执行。在一些实施例中,网络通信器1802可以与编排器服务器1602、板1604、1606、1608、和/或计算设备(未示出)进行通信以接收设备映射数据1812。
可以被实施为硬件、固件、软件、虚拟化硬件、仿真架构、和/或其组合的桥接链路接合器1804被配置为确定所请求的设备的位置以及所请求的设备可通信地耦合至哪个桥接逻辑单元1616、1628、1640。所请求的设备可以被实施为设备1614、1626、1638中的任何一个,其中在CPU 1610、1622、1634中的任何一个上执行的工作负载要求设备1614、1626、1638中的该一个在处理该工作负载时进行帮助。另外,桥接链路接合器1804可以被配置为选择性地将所请求的设备上电,并且向请求者设备提供对所请求的设备的访问。为此,在说明性实施例中,桥接链路接合器1804包括设备标识符1806、电力管理器1808、以及桥链接单元通信器1810。在说明性实施例中,设备标识符1806被配置为获得用于访问设备1614、1626、1638的请求(例如,由CPU 1610、1622、1634和/或能够生成用于访问设备1614、1626、1638的请求的任何其他设备生成的)并且对所述请求进行服务(例如,促进对在访问请求中指定的设备1614、1626、1638的读和/或写)。在说明性实施例中,设备标识符1806被配置为通过以下方式使用设备映射数据1812来确定所请求的设备的位置:通过识别请求者设备(例如,CPU 1610、1622、1634)请求访问哪个(些)设备1614、1626、1638通过确定所请求的设备位于哪个板1604、1606、1608上。所述位置的确定还可以包括确定设备1614、1626、1638耦合至哪个桥逻辑电源1616、1628、1640。在一些实施例中,设备标识符1806可以被配置为响应于从主机、编排器服务器1602、和/或板1604、1606、1608接收到通知而更新设备映射数据1812。这可以例如在任何设备被添加至系统1600或者从系统1600移除时发生。
在说明性实施例中,电力管理器1808被配置为通过请求与设备1614、1626、1634相关联的桥接逻辑单元1616、1628、1640将所请求的设备1614、1626、1634上电而使其他设备1614、1626、1634下电来选择性地使设备1614、1626、1634上电。在这样做时,电力管理器1808可以请求桥接逻辑单元1616、1628、1640将所请求的设备1614、1626、1634上电,而使对应的板1604、1606、1608的CPU 1610、1622、1634下电以节约能量。
在说明性实施例中,桥接逻辑单元通信器1810被配置为与另一桥接逻辑单元1628、1640进行通信以访问对应的板1606、1608上的所请求的设备。桥接逻辑单元通信器1810可以使用电力管理器1808来请求桥接逻辑单元1628、1640将位于相关联的板1606、1608上的所请求的设备选择性地上电。桥接逻辑单元通信器1810可以继续以将所请求的设备(其可以位于单独的板1604、1606、1608上)映射为在包括请求者设备的板1604、1606、1608本地。在一些实施例中,桥接逻辑单元通信器1810可以被配置为接收用于访问桥接逻辑单元1616所处的板(例如,板1604)本地(例如,位于其上)的设备(例如,加速器设备1614)的请求。桥接逻辑单元通信器1810可以被配置为使得与操作系统无关的驱动器能够与所请求的设备1614、1626、1634进行通信。在一些实施例中,与操作系统无关的驱动器可以被实施为快速非易失性存储器驱动器。可替代地,与操作系统无关的驱动器可以被实施为通过结构的快速非易失性存储器驱动器。在促进通信时,桥接逻辑单元通信器1810可以提供从访问请求得出的(例如,从所请求的设备读取的数据)或者从请求者设备到所请求的设备的任何数据(例如,向所请求的设备的写数据)。
现在参考图19,在使用时,板1604可以执行用于在超融合基础结构(例如,系统1600)中提供高效池化的方法1900。为了简单起见,方法1900在下文中被描述为由板1604执行。然而,在一些实施例中,板1604、1606、1608中的每个可以分别地或同时地独立执行方法1900。方法以框1902开始,其中,板1604确定是否已经接收了对设备的映射(例如,设备映射数据1812)的更新。在说明性实施例中,板1604可以从编排器服务器1602、其他板1606、1608、和/或另一计算设备(未示出)接收对设备的映射的更新。板1604可以在设备被添加至系统1600或者从系统1600被移除时(例如,在由对应的板检测到设备被添加或移除的位置之后)接收更新。如果板1604接收更新,则方法1900前进至框1904,其中,板1604识别连接至桥接逻辑单元1616、1628、1640的设备。然而,如果不存在对设备的映射的更新,则方法1900分支到框1908,在框1908中,在一些实施例中,板1604执行工作负载(例如,使用CPU 1610)。然而,参考回框1904,在识别了设备之后,板1604在框1906中根据连接至桥接逻辑单元1616、1628、1640的设备来更新设备映射。例如,所述更新可以指示新的存储器设备已经被添加,而板1604可以作为响应将新的存储器设备添加至耦合至与新的存储器设备相关联的特定桥接逻辑单元1616、1628、1640的设备的列表。类似地,板1604可以在设备1614、1626、1638被移除的情况下将设备1614、1626、1638从列表中移除。
在框1910中,板1604从请求者设备获得用于访问设备1614、1626、1638的请求。例如,请求者设备可以被实施为执行工作负载的CPU 1610、1622、1634,如在框1908中所描述的。在一些实施例中,在框1912中,板1604从在当前板1604上执行工作负载的计算引擎1702获得请求。可替代地,在框1914中,板1604可以从远程板(例如,不同的板,如板1606、1608中的一个)获得请求。为此,板1604可以从远程板1606、1608的桥接逻辑单元1628、1640获得请求,如在框1916中所指示的。在获得了用于访问设备的请求之后,方法前进至框1918,其中板1604利用桥接逻辑单元1616来确定所请求的设备是否在板1604上可用。为此,在说明性实施例中,在框1920中,板1604对指示所请求的设备的位置的设备映射进行引用。例如,设备映射可以指示所请求的设备位于哪个板1604、1606、1608。另外,在一些实施例中,设备映射可以指示所请求的设备可通信地耦合至哪个桥接逻辑单元1616、1628、1640,由此识别要与哪个桥接逻辑单元1616、1628、1640进行通信以访问所请求的设备。
现在参考图20,在框1922中,板1604确定所请求的设备是否在当前板1604上。如果板1604确定所请求的设备不在当前板1604上,则方法1900前进至框1924,其中,板1604与远程板1606、1608的桥接逻辑单元1628、1640进行通信。然而,如果板1604确定所请求的设备位于当前板1604上,则方法前进至框1930,其中,板1604选择性地将所请求的设备(例如,设备1614)上电。在说明性实施例中,板1604通过桥接逻辑单元1616将所请求的设备上电。另外,在选择性地将所请求的设备上电时,板1604可以使在板1604上出现的一个或多个其他设备下电,如在框1932中所指示的。然而,参考回框1924,在与桥接逻辑单元1628、1640进行通信时,板1604请求远程桥接逻辑单元1628、1640选择性地将所请求的设备上电,如在框1926中所指示的。例如,桥接逻辑单元1616可以发送用于将耦合至桥接逻辑单元1628的存储器设备1630上电,或者用于将耦合至桥接逻辑单元1640的数据存储设备1642上电的请求。在与远程板1606、1608的桥接逻辑单元1628、1640进行通信之后,方法1900前进至框1928,其中,板1604将远程设备映射为在当前板1604本地。
在框1934中,板1604使得与操作系统无关的驱动器与所请求的设备进行通信。为此,在一些实施例中,在框1936中,板1604使能快速非易失性存储器驱动器。可替代地,在框1938中,板1604可以使能通过结构的快速非易失性存储器驱动器。在其他实施例中,板1604使能另一类型的与操作系统无关的驱动器。
在框1940中,板1604通过本地桥接逻辑单元1616来向请求者设备(例如,CPU1610、1622、1634、和/或另一设备)提供对所请求的设备(例如,设备1614、1626、1638)的访问。在一些实施例中,在框1942中,板1604提供对板1604上的计算引擎1702的访问。例如,桥接逻辑单元1616可以向计算引擎1702提供对当前板1604上的所请求的加速器设备1618的访问。可替代地,在一些实施例中,在框1944中,板1604向远程板1606、1608提供对所请求的设备的访问。例如,板1604通过桥接逻辑单元1616向板1606提供对所请求的加速器设备1618的访问。在这样做时,板1604提供对远程板(例如,板1606)的桥接逻辑单元(例如,桥接逻辑单元1628)的访问,其进而可以将设备映射为在板1606本地。随后,方法1900返回至图19的框1902以继续监测是否接收到了更新。
示例
在下文中提供了在本文中所公开的技术的说明性示例。所述技术的实施例可以包括在下文中所描述的示例中的任何一个或多个以及任何组合。
示例1包括一种板,包括:网络接口控制器,其包括用于可通信地耦合至其他板的桥接逻辑单元的网络的第一桥接逻辑单元,其中,所述第一桥接逻辑单元还用于:从请求者设备获得用于访问所请求的设备的请求;确定所请求的设备是在当前板上还是在与所述当前板不同的远程板上;响应于确定所请求的设备位于所述当前板上,选择性地将所请求的设备上电;响应于确定所请求的设备位于所述远程板上,与所述远程板的第二桥接逻辑单元进行通信;以及通过所述第一桥接逻辑单元向所述请求者设备提供对所请求的设备的访问。
示例2包括示例1的主题,并且其中,所述第一桥接逻辑单元还用于从计算设备接收耦合至所述桥接逻辑单元的网络的设备的映射。
示例3包括示例1和2中的任何一个的主题,并且其中,所述第一桥接逻辑单元还用于从可通信地耦合至所述板的编排器服务器接收耦合至所述桥接逻辑单元的网络的设备的映射。
示例4包括示例1-3中的任何一个的主题,并且其中,所请求的设备包括存储器设备、数据存储设备、或者加速器设备中的至少一个。
示例5包括示例1-4中的任何一个的主题,并且其中,所述加速器设备包括现场可编程门阵列(FPGA)。
示例6包括示例1-5中的任何一个的主题,并且其中,所述板还包括用于执行板上的工作负载的计算引擎。
示例7包括示例1-6中的任何一个的主题,并且其中,获得用于访问所述设备的所述请求包括从在其上执行所述工作负载的计算引擎获得所述请求。
示例8包括示例1-7中的任何一个的主题,并且其中,获得用于访问所述设备的请求包括从所述远程板获得所述请求。
示例9包括示例1-8中的任何一个的主题,并且其中,从所述远程板获得所述请求包括从所述远程板的所述第二桥接逻辑单元获得所述请求。
示例10包括示例1-9中的任何一个的主题,并且其中,确定所请求的设备是否位于所述板上包括对指示多个设备的位置的设备映射进行引用。
示例11包括示例1-10中的任何一个的主题,并且其中,与所述远程板的所述第二桥接逻辑单元进行通信包括请求所述第二桥接逻辑单元选择性地将所请求的设备上电。
示例12包括示例1-11中的任何一个的主题,并且其中,所述第一桥接逻辑单元还用于将所请求的设备映射为在所述板本地。
示例13包括示例1-12中的任何一个的主题,并且其中,所述板是存储器板、数据存储板、或加速器板。
示例14包括示例1-13中的任何一个的主题,并且其中,所述第一桥接逻辑单元还使得与操作系统无关的驱动器能够与所请求的设备进行通信。
示例15包括示例1-14中的任何一个的主题,并且其中,使能与操作系统无关的驱动器包括使能快速非易失性存储器驱动器。
示例16包括示例1-15中的任何一个的主题,并且其中,使能与操作系统无关的驱动器包括使能通过结构的快速非易失性存储器驱动器。
示例17包括示例1-16中的任何一个的主题,并且其中,向所述请求者设备提供对所请求的设备的访问包括向板上的计算引擎提供对所请求的设备的访问。
示例18包括示例1-17中的任何一个的主题,并且其中,提供对所请求的设备的访问包括提供对远程板的访问。
示例19包括示例1-18中的任何一个的主题,并且其中,提供对所述远程板的访问包括提供对所述远程板的第二桥接逻辑单元的访问。
示例20包括一种用于访问设备的方法,所述方法包括:利用耦合至桥接逻辑单元的网络的网络接口控制器的第一桥接逻辑单元从请求者设备获得用于访问所请求的设备的请求;由所述第一桥接逻辑单元确定所请求的设备是在当前板上还是在与所述当前板不同的远程板上;由所述第一桥接逻辑单元并且响应于确定所请求的设备位于所述板上,选择性地将所请求的设备上电,或者由所述第一桥接逻辑单元并且响应于确定所请求的设备位于所述远程板上,与所述远程板的第二桥接逻辑单元进行通信;以及由所述第一桥接逻辑单元并且向所述请求者设备提供对所请求的设备的访问。
示例21包括示例20的主题,并且还包括由所述第一桥接逻辑单元从计算设备接收耦合至所述桥接逻辑单元的网络的设备的映射。
示例22包括示例20和21中的任何一个的主题,并且还包括由所述第一桥接逻辑单元从可通信地耦合至所述板的编排器服务器接收耦合至所述桥接逻辑单元的网络的设备的映射。
示例23包括示例20-22中的任何一个的主题,并且其中,获得用于访问设备的请求包括获得用于访问存储器设备、数据存储设备、或者加速器设备中的至少一个的请求。
示例24包括示例20-23中的任何一个的主题,并且其中,获得用于访问加速器设备的请求包括获得用于访问现场可编程门阵列(FPGA)的请求。
示例25包括示例20-24中的任何一个的主题,并且还包括由所述板上的计算引擎执行工作负载。
示例26包括示例20-25中的任何一个的主题,并且其中,获得用于访问所述设备的所述请求包括从执行所述工作负载的计算引擎获得所述请求。
示例27包括示例20-26中的任何一个的主题,并且其中,获得用于访问所述设备的请求包括从所述远程板获得所述请求。
示例28包括示例20-27中的任何一个的主题,并且其中,从所述远程板获得所述请求包括从所述远程板的所述第二桥接逻辑单元获得所述请求。
示例29包括示例20-28中的任何一个的主题,并且其中,确定所请求的设备是否位于所述板上包括对指示多个设备的位置的设备映射进行引用。
示例30包括示例20-29中的任何一个的主题,并且其中,与所述远程板的所述第二桥接逻辑单元进行通信包括请求所述第二桥接逻辑单元选择性地将所请求的设备上电。
示例31包括示例20-30中的任何一个的主题,并且还包括由所述第一桥接逻辑单元将所请求的设备映射为在所述板本地。
示例32包括示例20-31中的任何一个的主题,并且其中,确定所请求的设备是在本板上还是在远程板上包括确定所请求的设备是在存储器板上、数据存储板上、还是在加速器板上。
示例33包括示例20-32中的任何一个的主题,并且还包括由所述第一桥接逻辑单元使得与操作系统无关的驱动器能够与所请求的设备进行通信。
示例34包括示例20-33中的任何一个的主题,并且其中,使能与操作系统无关的驱动器包括使能快速非易失性存储器驱动器。
示例35包括示例20-34中的任何一个的主题,并且其中,使能与操作系统无关的驱动器包括使能通过结构的快速非易失性存储器驱动器。
示例36包括示例20-35中的任何一个的主题,并且其中,提供对所请求的设备的访问包括向板上的计算引擎提供访问。
示例37包括示例20-36中的任何一个的主题,并且其中,提供对所请求的设备的访问包括对所述远程板提供访问。
示例38包括示例20-37中的任何一个的主题,并且其中,提供对所述远程板的访问包括提供对所述远程板的第二桥接逻辑单元的访问。
示例39包括一个或多个机器可读存储介质,其包括存储在其上的多个指令,所述指令响应于被执行,使得板执行示例20-38中的任何一个的方法。
示例40包括一种板,其包括用于执行示例20-38中的任何一个的方法的单元。
示例41包括一种板,其包括一个或多个处理器;一个或多个存储器设备,其具有存储在其中的多个指令,所述指令当由所述一个或多个处理器执行时,使得所述板执行示例20-38中的任何一个的方法。
示例42包括一种板,其包括网络接口控制器,所述网络接口控制器包括可通信地耦合至其他板的桥接链路接合器电路的网络的第一桥接链路接合器电路,其中,所述第一桥接链路接合器电路还用于从请求者设备获得用于访问所请求的设备的请求;确定所请求的设备是位于当前板上还是位于与所述当前板不同的远程板上;响应于确定所请求的设备位于所述当前板上而选择性地将所请求的设备上电;响应于确定所请求的设备位于所述远程板上而与所述远程板的第二桥接接合器电路进行通信;以及向所述请求者设备提供对所请求的设备的访问。
示例43包括示例42的主题,并且其中,所述第一桥接合器电路还用于从计算设备接收耦合至桥接逻辑单元的网络的设备的映射。
示例44包括示例42和43中的任何一个的主题,并且其中,所述第一桥接合器电路还用于从可通信地耦合至所述板的编排器服务器接收耦合至桥接逻辑单元的网络的设备的映射。
示例45包括示例42-44中的任何一个的主题,并且其中,所请求的设备包括存储器设备、数据存储设备、或者加速器设备中的至少一个。
示例46包括示例42-45中的任何一个的主题,并且其中,所述加速器设备包括现场可编程门阵列(FPGA)。
示例47包括示例42-46中的任何一个的主题,并且其中,所述板还包括用于执行板上的工作负载的计算引擎。
示例48包括示例42-47中的任何一个的主题,并且其中,获得用于访问所述设备的所述请求包括从执行所述工作负载的计算引擎获得所述请求。
示例49包括示例42-48中的任何一个的主题,并且其中,获得用于访问所述设备的请求包括从所述远程板获得所述请求。
示例50包括示例42-49中的任何一个的主题,并且其中,从所述远程板获得所述请求包括从所述远程板的所述第二桥接逻辑单元获得所述请求。
示例51包括示例42-50中的任何一个的主题,并且其中,确定所请求的设备是否位于所述板上包括对指示多个设备的位置的设备映射进行引用。
示例52包括示例42-51中的任何一个的主题,并且其中,与所述远程板的所述第二桥接接合器电路进行通信包括请求所述第二桥接接合器电路选择性地将所请求的设备上电。
示例53包括示例42-52中的任何一个的主题,并且其中,所述第一桥接接合器电路还用于将所请求的设备映射为在所述板本地。
示例54包括示例42-53中的任何一个的主题,并且其中,所述板是存储器板、数据存储板、或加速器板。
示例55包括示例42-54中的任何一个的主题,并且其中,所述第一桥接接合器电路还使得与操作系统无关的驱动器能够与所请求的设备进行通信。
示例56包括示例42-55中的任何一个的主题,并且其中,使能与操作系统无关的驱动器包括使能快速非易失性存储器驱动器。
示例57包括示例42-56中的任何一个的主题,并且其中,使能与操作系统无关的驱动器包括使能通过结构的快速非易失性存储器驱动器。
示例58包括示例42-57中的任何一个的主题,并且其中,向所述请求者设备提供对所请求的设备的访问包括向板上的计算引擎提供对所请求的设备的访问。
示例59包括示例42-58中的任何一个的主题,并且其中,提供对所请求的设备的访问包括提供对远程板的访问。
示例60包括示例42-59中的任何一个的主题,并且其中,提供对所述远程板的访问包括提供对所述远程板的第二桥接逻辑单元的访问。
示例61包括一种板,其包括用于从请求者设备获得用于访问所请求的设备的请求的电路;用于确定所请求的设备是在当前板上还是在与所述当前板不同的远程板上的电路;用于响应于确定所请求的设备位于所述当前板上而选择性地将所请求的设备上电,或者响应于确定所请求的设备位于所述远程板上而与所述远程板的第二桥接逻辑单元进行通信的单元;以及用于通过所述第一桥接逻辑单元并且向所述请求者设备提供对所请求的设备的访问的电路。
示例62包括示例61的主题,并且还包括用于从计算设备接收耦合至桥接逻辑单元的网络的设备的映射的电路。
示例63包括示例61和62中的任何一个的主题,并且还包括用于从可通信地耦合至所述板的编排器服务器接收耦合至桥接逻辑单元的设备的映射的电路。
示例64包括示例61-63中的任何一个的主题,并且其中,用于获得用于访问设备的请求的电路包括用于获得用于访问存储器设备、数据存储设备、或者加速器设备中的至少一个的请求的电路。
示例65包括示例61-64中的任何一个的主题,并且其中,用于获得用于访问加速器设备的请求的电路包括用于获得用于访问现场可编程门阵列(FPGA)的请求的电路。
示例66包括示例61-65中的任何一个的主题,并且还包括用于执行工作负载的电路。
示例67包括示例61-66中的任何一个的主题,并且其中,用于获得用于访问所述设备的请求的电路包括用于从执行所述工作负载的计算引擎获得所述请求的电路。
示例68包括示例61-67中的任何一个的主题,并且其中,用于获得用于访问所述设备的所述请求的电路包括用于从所述远程板获得所述请求的电路。
示例69包括示例61-68中的任何一个的主题,并且其中,用于从所述远程板获得所述请求的电路包括用于从所述远程板的所述桥接逻辑单元获得所述请求的电路。
示例70包括示例61-69中的任何一个的主题,并且其中,用于确定所请求的设备是否位于所述板上的电路包括用于对指示多个设备的位置的设备映射进行引用的电路。
示例71包括示例61-70中的任何一个的主题,并且其中,用于与所述远程板的所述桥接逻辑单元进行通信的电路包括用于请求所述桥接逻辑单元选择性地将所请求的设备上电的电路。
示例72包括示例61-71中的任何一个的主题,并且还包括用于将所请求的设备映射为在所述板本地的电路。
示例73包括示例61-72中的任何一个的主题,并且其中,用于确定所请求的设备是在当前板上还是在远程板上的电路包括用于确定所请求的设备是在存储器板上、在数据存储板上、还是在加速器板上的电路。
示例74包括示例61-73中的任何一个的主题,并且还包括用于使得与操作系统无关的驱动器能够与所请求的设备进行通信的电路。
示例75包括示例61-74中的任何一个的主题,并且其中,用于使能与操作系统无关的驱动器的电路包括用于使能快速非易失性存储器驱动器的电路。
示例76包括示例61-75中的任何一个的主题,并且其中,用于使能与操作系统无关的驱动器的电路包括用于使能通过结构的快速非易失性存储器驱动器的电路。
示例77包括示例61-76中的任何一个的主题,并且其中,用于提供对所请求的设备的访问的电路包括用于向板上的计算引擎提供访问的电路。
示例78包括示例61-77中的任何一个的主题,并且其中,用于提供对所请求的设备的访问的电路包括用于提供对远程板的访问的电路。
示例79包括示例61-78中的任何一个的主题,并且其中,用于提供对所述远程板的访问的电路包括用于提供对所述远程板的桥接逻辑单元的访问。
Claims (20)
1.一种装置,包括:
位于主机计算设备上的以太网网络接口控制器(NIC),所述以太网NIC包括用于与主机中央处理单元(CPU)通信地耦合的第一接口和用于与存储服务器的网络通信地耦合的第二接口,其中,所述以太网NIC还包括用于以下操作的电路模块:
获得来自所述主机CPU的、用于要求访问数据存储设备的请求;以及
基于所述数据存储设备是位于所述主机计算设备上还是所述数据存储设备通过来自所述存储服务器的网络当中的存储服务器是能够访问的,经由使用非易失性存储器快速驱动器向所述主机CPU提供对所述数据存储设备的访问。
2.如权利要求1所述的装置,所述数据存储设备位于所述存储服务器上,其中,经由使用所述非易失性存储器快速驱动器向所述主机CPU提供对所述数据存储设备的访问包括将所述数据存储设备呈现为在所述主机计算设备的本地。
3.如权利要求1所述的装置,其中,指示多个数据存储设备的位置的数据存储设备映射用于确定所述数据存储设备是位于所述主机计算设备上还是位于所述存储服务器上。
4.如权利要求3所述的装置,其中,所述电路模块用于接收来自通信地耦合到所述电路模块的编排器服务器的所述数据存储设备映射。
5.如权利要求1所述的装置,所述数据存储装置位于所述存储服务器上,其中,所述电路模块进一步用于:
基于被发送到位于所述存储服务器上的第二以太网NIC的第二电路模块的、用于要求对所述数据存储设备进行上电的请求,使所述数据存储设备在所述存储服务器处被上电。
6.如权利要求1所述的装置,其中,所述主机CPU用于在所述主机计算设备上执行工作负载。
7.如权利要求1所述的装置,所述电路模块包括现场可编程门阵列(FPGA)。
8.一个或多个机器可读存储介质,包括存储在其上的多个指令,所述多个指令响应于被执行,使得位于主机计算设备上的以太网网络接口控制器(NIC)的电路模块用于:
经由与主机中央处理单元(CPU)耦合的第一接口,获得来自所述主机CPU的、用于要求访问数据存储设备的请求;以及
基于所述数据存储设备是位于所述主机计算设备上,还是所述数据存储设备通过来自存储服务器的网络当中的存储服务器是能够访问的,经由使用非易失性存储器快速驱动器向所述主机CPU提供对所述数据存储设备的访问,其中,所述存储服务器的网络经由第二接口耦合到所述电路模块。
9.如权利要求8所述的一个或多个机器可读存储介质,所述数据存储设备位于所述存储服务器上,其中,经由使用所述非易失性存储器快速驱动器向所述主机CPU提供对所述数据存储设备的访问包括将所述数据存储设备呈现为在所述主机计算设备的本地。
10.如权利要求8所述的一个或多个机器可读存储介质,其中,指示多个数据存储设备的位置的数据存储设备映射用于确定所述数据存储设备是位于所述主机计算设备上还是位于所述存储服务器上。
11.如权利要求10所述的一个或多个机器可读存储介质,其中,所述多个指令进一步使所述电路模块用于接收来自通信地耦合到所述电路模块的编排器服务器的所述数据存储设备映射。
12.如权利要求8所述的一个或多个机器可读存储介质,所述数据存储设备位于所述存储服务器上,其中,所述指令用于进一步使所述电路模块用于:
基于由所述电路模块发送到位于所述存储服务器上的第二以太网NIC的第二电路模块的、用于要求对所述数据存储设备进行上电的请求,使所述数据存储设备在所述存储服务器处被上电。
13.如权利要求8所述的一个或多个机器可读存储介质,其中,所述主机CPU用于在所述主机计算设备上执行工作负载。
14.一种用于访问数据存储设备的方法,所述方法包括:
利用用于主机计算设备的以太网网络接口控制器(NIC)的电路模块获得来自主机中央处理单元(CPU)的、用于要求访问数据存储设备的请求,所述NIC包括用于与所述主机CPU通信地耦合的第一接口和用于与存储服务器的网络通信地耦合的第二接口;以及
基于所述数据存储设备是位于所述主机计算设备上还是所述数据存储设备通过来自所述存储服务器的网络当中的存储服务器是能够访问的,由所述电路模块经由使用非易失性存储器快速驱动器提供由所述主机CPU对所述数据存储设备的访问。
15.如权利要求14所述的方法,所述数据存储设备位于所述存储服务器上,其中,经由使用所述非易失性存储器快速驱动器提供由所述主机CPU对所述数据存储设备的访问包括将所述数据存储设备呈现为在所述主机计算设备的本地。
16.如权利要求14所述的方法,其中,指示多个数据存储设备的位置的数据存储设备映射用于确定所述数据存储设备是位于所述主机计算设备上还是位于所述存储服务器上。
17.如权利要求16所述的方法,进一步包括:
利用所述电路模块接收来自通信地耦合到所述电路模块的编排器服务器的所述数据存储设备映射。
18.如权利要求14所述的方法,进一步包括:
利用所述电路模块,基于由所述电路模块发送到位于所述存储服务器上的第二以太网NIC的第二电路模块的、用于要求对所述数据存储设备进行上电的请求,使所述数据存储设备在所述存储服务器处被上电。
19.如权利要求14所述的方法,其中,所述主机CPU用于在所述主机计算设备上执行工作负载。
20.一种装置,包括用于执行如权利要求14至19中的任一项所述的方法的单元。
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
IN201741030632 | 2017-08-30 | ||
IN201741030632 | 2017-08-30 | ||
US201762584401P | 2017-11-10 | 2017-11-10 | |
US62/584,401 | 2017-11-10 | ||
US15/858,542 | 2017-12-29 | ||
US15/858,542 US11748172B2 (en) | 2017-08-30 | 2017-12-29 | Technologies for providing efficient pooling for a hyper converged infrastructure |
CN201810845565.8A CN109426316A (zh) | 2017-08-30 | 2018-07-27 | 用于提供针对超融合基础结构的高效池化的技术 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810845565.8A Division CN109426316A (zh) | 2017-08-30 | 2018-07-27 | 用于提供针对超融合基础结构的高效池化的技术 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117234297A true CN117234297A (zh) | 2023-12-15 |
Family
ID=65321822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311289085.5A Pending CN117234297A (zh) | 2017-08-30 | 2018-07-27 | 用于提供针对超融合基础结构的高效池化的技术 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230418686A1 (zh) |
CN (1) | CN117234297A (zh) |
DE (1) | DE102018212476A1 (zh) |
-
2018
- 2018-07-26 DE DE102018212476.0A patent/DE102018212476A1/de active Pending
- 2018-07-27 CN CN202311289085.5A patent/CN117234297A/zh active Pending
-
2023
- 2023-07-07 US US18/219,557 patent/US20230418686A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
US20230418686A1 (en) | 2023-12-28 |
DE102018212476A1 (de) | 2019-02-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11748172B2 (en) | Technologies for providing efficient pooling for a hyper converged infrastructure | |
US11522682B2 (en) | Technologies for providing streamlined provisioning of accelerated functions in a disaggregated architecture | |
US11861424B2 (en) | Technologies for providing efficient reprovisioning in an accelerator device | |
EP3731090A1 (en) | Technologies for providing resource health based node composition and management | |
US10970246B2 (en) | Technologies for remote networked accelerators | |
EP3731091A1 (en) | Technologies for providing an accelerator device discovery service | |
US11115497B2 (en) | Technologies for providing advanced resource management in a disaggregated environment | |
US11269395B2 (en) | Technologies for providing adaptive power management in an accelerator sled | |
EP3761177A1 (en) | Technologies for providing latency-aware consensus management in a disaggregated architecture | |
US10579547B2 (en) | Technologies for providing I/O channel abstraction for accelerator device kernels | |
EP3757785A1 (en) | Technologies for facilitating remote memory requests in accelerator devices | |
US11531635B2 (en) | Technologies for establishing communication channel between accelerator device kernels | |
US11537191B2 (en) | Technologies for providing advanced management of power usage limits in a disaggregated architecture | |
US20190324802A1 (en) | Technologies for providing efficient message polling | |
US20230418686A1 (en) | Technologies for providing efficient pooling for a hyper converged infrastructure | |
EP3731095A1 (en) | Technologies for providing inter-kernel communication abstraction to support scale-up and scale-out |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |