Data Center Task Allocation Using Bandwidth-Aware Device Groups
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Managing bandwidth and power requirements in data center server fleets with hundreds or thousands of servers and processing devices is challenging due to varying numbers of GPUs and accelerators, necessitating efficient task allocation to optimize resources.
Innovation Solution
A method and system for power management in data centers that involve obtaining and regularly updating information about processing devices, constructing grouping tables with device properties, and using algorithms to allocate tasks to groups that meet bandwidth and power requirements while minimizing power consumption.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If processing devices are allocated to tasks in data center server fleets, then task performance is enabled, but bandwidth and power requirements become significant and difficult to manage
Solution Approach 1:
The system dynamically changes allocation parameters by selecting processing device groups based on their current power consumption levels and bandwidth availability. The allocator modifies allocation decisions by considering power usage metrics and adjusting group selections to minimize overall power consumption while maintaining task performance requirements.
Solution Approach 2:
The system applies local quality by evaluating and allocating tasks to specific processing device groups with appropriate local characteristics. Each processing device group is assessed individually for its power consumption profile and bandwidth capacity, allowing tasks to be placed in groups that locally optimize the power-performance tradeoff rather than using a uniform allocation strategy.
2Productivity
If more processing devices are allocated to meet bandwidth requirements, then task performance is improved, but power consumption increases
Solution Approach 1:
The system applies partial action by allocating tasks to processing device groups that provide sufficient but not excessive bandwidth capacity. The allocator selects groups where the available bandwidth meets task requirements without significantly exceeding them, thereby avoiding the power consumption penalty of over-provisioning while still achieving the necessary performance level.
3Productivity
If processing device groups are selected based on available bandwidth, then task allocation efficiency is improved, but complexity of managing hundreds or thousands of servers increases
Solution Approach 1:
The system segments the large-scale data center fleet into smaller processing device groups, each with defined bandwidth and power characteristics. This segmentation allows the allocation system to manage complexity by working with manageable group units rather than individually tracking hundreds or thousands of processing devices, while still achieving efficient task allocation across the entire fleet.
Solution Approach 2:
The allocation system introduces processing device groups as intermediary entities between tasks and individual processing devices. These groups serve as management abstractions that simplify bandwidth and power tracking, allowing the system to efficiently allocate tasks without directly managing the full complexity of the underlying server fleet architecture.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method and system for allocating tasks among processing devices in a data center. The method may include receiving a request to allocate a task to one or more processing devices, the request indicating a required bandwidth for performing the task, a list of predefined processing device groups connected to a host server and indicating availability of the processing device groups included therein for allocation of tasks and available bandwidth for each available processing device group, assigning the task to a processing device group having an available bandwidth greater than or equal to the required bandwidth for performing the task, and updating the list to indicate that each of the processing device group to which the task is assigned and other processing device group sharing at least one processing device is unavailable. The task may be assigned to an available processing device group having a lowest amount of power needed.