Multi-Tenant Communication Fabric Using Indirect Compute Paths
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional collective communication libraries in multi-tenant systems are limited by physical device topologies, leading to underutilization of indirect communication links and reduced system performance due to stranded resources, increased total cost of ownership (TCO), and limited throughput and end-to-end delay.
Innovation Solution
A multi-tenant collective communication fabric (MCCF) that leverages both direct and indirect communication links between compute nodes, optimizing resource utilization by partitioning hardware resources to form slices for MCCF services and tenant tasks, allowing for virtual topologies that span allocated and non-allocated compute nodes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional collective communication libraries use only direct communication links between compute nodes, then the system follows simple physical device topologies, but indirect communication links remain underutilized leading to stranded resources and reduced throughput
Solution Approach 1:
The communication fabric is segmented into direct links and indirect links, with each type optimized for specific communication patterns. The system divides the communication path into segments that can be dynamically selected based on workload requirements, allowing simultaneous use of both direct and indirect pathways to improve overall throughput.
Solution Approach 2:
The communication library is designed to be universal, supporting both direct and indirect communication links through a unified interface. This multi-functionality allows the system to adaptively select appropriate link types based on runtime conditions, maximizing resource utilization without requiring application-specific modifications.
2Productivity
If compute nodes are strictly allocated to specific tenants, then tenant isolation is maintained, but system resources remain stranded when some nodes are idle while others are overloaded
Solution Approach 1:
The resource allocation system transitions from static tenant assignment to dynamic sharing. Compute nodes can dynamically switch between dedicated tenant workloads and collective communication tasks based on real-time system state. This dynamic behavior allows idle nodes to contribute to collective operations without compromising tenant isolation, as transitions are controlled and monitored.
Solution Approach 2:
The system implements self-service mechanisms where compute nodes automatically participate in collective communication operations when idle, without requiring manual intervention. The communication library autonomously identifies available nodes and incorporates them into communication fabrics, enabling resources to serve multiple purposes while maintaining tenant boundaries.
3Productivity
If hardware resources are dedicated to tenant tasks exclusively, then tenant performance is guaranteed, but total cost of ownership increases due to underutilized resources requiring additional hardware
Solution Approach 1:
The system merges tenant-specific workloads with collective communication operations by allowing compute nodes to participate in both simultaneously. This combining of functions enables the same hardware resources to serve multiple purposes, improving system efficiency and reducing the need for additional dedicated hardware, thereby lowering total cost of ownership.
Data Source
AI summary
Systems and methods are provided for a multi-tenant collective communication fabric for optimal utilization of communication links between compute nodes of an interconnected system. Examples include allocating a plurality of compute nodes to a first workload and obtaining a topology of the interconnected system representative of an indirect path between the allocated compute nodes. The indirect path comprises a non-allocated compute node of the interconnected system. The examples include creating plurality of slices of resources of the non-allocated compute node, with a first slice dedicated to processing and forwarding data traffic along the indirect path and a second slice configured for allocation to a second workload. The examples also include executing the first workload by the allocated compute nodes and the non-allocated compute node, wherein data traffic from the plurality of allocated compute nodes is communicated via the indirect communication path.


