Managed Node Composition for Cross-Sled Processor Coherence
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In data centers, workloads often underutilize or overutilize available processors, leading to resource wastage and inefficiencies in cloud services, as existing systems struggle to dynamically match compute resources with workload demands effectively.
Innovation Solution
The implementation of a system that dynamically composes managed nodes with multiple processors from multiple compute sleds, using an orchestrator server and accelerator to coordinate inter-processor communication and resource allocation, allowing processors to operate as if they were local, even across different sleds, thereby optimizing resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If multiple processors are physically located on the same compute device with shared memory and local bus, then communication speed and coordination efficiency are improved, but resource utilization deteriorates when workload cannot utilize all available processors
Solution Approach 1:
The system segments the monolithic compute device into multiple independent compute sleds, each with its own processors. This allows the workload to be distributed across sleds, enabling flexible resource allocation and improved utilization while maintaining communication efficiency through the fabric network that interconnects the sleds.
Solution Approach 2:
The patent transitions from a two-dimensional architecture (processors on a single compute device) to a three-dimensional architecture (multiple compute sleds stacked and interconnected via fabric). This dimensional expansion enables greater resource utilization by allowing workloads to scale across multiple sleds while maintaining communication efficiency through the high-speed fabric network.
2Productivity
If more processors are allocated to a workload to improve execution performance, then quality of service is improved, but resource wastage increases when processors remain underutilized
Solution Approach 1:
The system implements dynamic resource allocation where the orchestrator server continuously monitors workload performance and resource utilization, dynamically adjusting the allocation of processors across compute sleds. This dynamic approach allows the system to scale resources up or down based on actual workload demands, improving execution performance when needed while reducing resource wastage when demand is low.
Solution Approach 2:
The orchestrator server implements feedback mechanisms by monitoring workload performance metrics and resource utilization in real-time, then using this feedback to dynamically adjust processor allocation. This closed-loop control ensures that resources are allocated efficiently to meet quality of service requirements while minimizing waste.
3Adaptability or versatility
If processors are distributed across multiple compute sleds to improve resource utilization, then flexibility and scalability are improved, but communication complexity and coordination overhead increase
Solution Approach 1:
The orchestrator server acts as an intermediary that manages communication and coordination between processors on different compute sleds. It handles the complexity of inter-sled communication, task scheduling, and resource allocation, thereby simplifying the overall system architecture and reducing coordination overhead despite the distributed nature of the processors.
Solution Approach 2:
The fabric network provides a universal communication infrastructure that enables efficient data transfer between any compute sleds. This multi-functional fabric handles various communication patterns (collective operations, point-to-point, broadcast) and supports different workload types, thereby managing communication complexity across the distributed architecture.
Data Source
AI summary
Technologies for composing a managed node with multiple processors on multiple compute sleds to cooperatively execute a workload include a memory, one or more processors connected to the memory, and an accelerator. The accelerator further includes a coherence logic unit that is configured to receive a node configuration request to execute a workload. The node configuration request identifies the compute sled and a second compute sled to be included in a managed node. The coherence logic unit is further configured to modify a portion of local working data associated with the workload on the compute sled in the memory with the one or more processors of the compute sled, determine coherence data indicative of the modification made by the one or more processors of the compute sled to the local working data in the memory, and send the coherence data to the second compute sled of the managed node.


