Dynamic Thread Assignment in HPC Clusters via Broadcast Utilization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In high performance computing clusters, existing job scheduling techniques are static, leading to inefficient thread assignment and increased network traffic due to uneven processor loads and communication patterns, resulting in suboptimal performance.

Innovation Solution

Implementing a monitoring system that periodically broadcasts processor and network utilization information across nodes, updating local job tables to dynamically reassign threads to processors based on current loads and communication levels, thereby optimizing thread distribution and reducing network traffic.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If static job scheduling is used, then device complexity is reduced, but productivity deteriorates due to inefficient thread assignment and increased network traffic

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidscheduling system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements dynamic job scheduling by periodically broadcasting processor and network utilization information across cluster nodes, enabling the system to adapt thread assignments to changing workload conditions in real-time, thereby improving productivity without requiring overly complex scheduling infrastructure

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs feedback mechanisms where nodes broadcast utilization metrics about processor and network conditions, allowing other nodes to update their local job tables and make informed scheduling decisions, creating a distributed feedback loop that optimizes resource allocation without centralized control complexity

Inventive Principle:
Principle #23Feedback

2Productivity

If dynamic thread reassignment is implemented, then productivity improves through better workload balancing, but loss of time increases due to periodic broadcasting and table updates

Engineering Contradiction:
Improveworkload balancing efficiencyVSAvoidtime for broadcasting and updating
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent uses periodic broadcasting of utilization information at scheduled intervals rather than continuous updates, allowing the system to capture workload changes at discrete time points. This periodic approach reduces the time overhead of synchronization while still enabling effective dynamic thread reassignment based on recent system state

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

Each node maintains and updates its own local job table using broadcast information from other nodes, enabling autonomous scheduling decisions without requiring constant coordination or centralized management. This self-service approach minimizes the time needed for global synchronization while achieving effective workload balancing

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8122132B2Techniques for dynamically assigning jobs to processors in a cluster based on broadcast information
Publication Date: 2012.02.21 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8122132B2 patent drawing
  • US8122132B2 patent drawing
  • US8122132B2 patent drawing

AI summary

A technique for operating a high performance computing cluster (HPC) having multiple nodes (each of which include multiple processors) includes periodically broadcasting information, related to processor utilization and network utilization at each of the multiple nodes, from each of the multiple nodes to remaining ones of the multiple nodes. Respective local job tables maintained in each of the multiple nodes are updated based on the broadcast information. One or more threads are then moved from one or more of the multiple processors to a different one of the multiple processors (based on the broadcast information in the respective local job tables).