Friendly Cuckoo Hashing for Compute Cluster Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In datacenter environments, efficiently assigning compute-intensive workload requests to available compute resources in a timely manner is challenging, especially when there are a large number of resources, as existing methods often result in high latency and over-provisioning, which is costly and inefficient.

Innovation Solution

A 'friendly' cuckoo hash algorithm is used to assign workload requests to pre-configured compute resource modules, minimizing evictions and optimizing resource utilization by reconfiguring less stringent SLA modules for more demanding workloads, and employing Horton tables to manage collisions and ensure timely processing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If traditional cuckoo hashing is used to assign workload requests to compute resources, then assignment speed is improved, but latency increases and resource utilization deteriorates due to high eviction rates

Engineering Contradiction:
Improveworkload assignment speedVSAvoidassignment latency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent pre-configures compute resource modules with workload algorithms before workload requests arrive. This preliminary preparation eliminates the need for time-consuming algorithm configuration at assignment time, thereby reducing latency while maintaining fast assignment speed through the cuckoo hashing mechanism.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent segments compute resources into modules, each pre-configured with specific workload algorithms. This segmentation allows for specialized optimization of each module and reduces the overall assignment latency by directing workloads to pre-prepared modules rather than configuring resources on-demand.

Inventive Principle:
Principle #1Segmentation

2Speed

If more compute resource modules are provisioned to reduce latency, then assignment speed is improved, but resource cost increases due to over-provisioning

Engineering Contradiction:
Improveworkload assignment speedVSAvoidnumber of compute resource modules
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

By pre-configuring compute resource modules with workload algorithms, the system prepares resources in advance without needing to maintain a large number of idle modules. This reduces the need for over-provisioning while maintaining fast assignment capability, as modules are ready to accept workloads immediately upon arrival.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent changes the state of compute resource modules from unconfigured to pre-configured, altering their readiness parameter. This allows the system to achieve faster assignment speeds with fewer modules, as each module is prepared in advance rather than requiring multiple standby modules.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If compute resource modules are reconfigured for different workloads, then resource utilization is improved, but configuration time increases causing latency

Engineering Contradiction:
Improveresource utilizationVSAvoidreconfiguration time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs configuration actions in advance by pre-configuring compute resource modules with workload algorithms before workloads arrive. This eliminates reconfiguration time during workload assignment, as modules are already prepared and can immediately accept and execute their designated workloads.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic workload assignment by using cuckoo hashing to distribute workloads across pre-configured modules based on real-time availability. This dynamic allocation optimizes resource utilization without requiring reconfiguration, as the system intelligently routes workloads to appropriate pre-prepared modules.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20230333900A1Friendly cuckoo hashing scheme for accelerator cluster load balancing
Publication Date: 2023.10.19 GROQ INC
  • US20230333900A1 patent drawing
  • US20230333900A1 patent drawing
  • US20230333900A1 patent drawing

AI summary

Improved placement of workload requests in a hosted compute resource uses a ‘friendly’ cuckoo hash algorithm to assign each workload request to an appropriately configured compute resource. When a first workload request is received, the workload is assigned to the compute resource module that has been pre-configured to execute that workload. Subsequent requests for a similar workload are either assigned to a second pre-configured compute resource or queued behind the first workload request.