Dynamic Compute Node Allocation for HPC Cluster Efficiency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

High-performance computing (HPC) systems face underutilization of compute nodes, leading to inefficiencies in energy consumption and cost, as the number of available nodes often falls short of the required number for scheduling applications, resulting in significant unused processing capacity.

Innovation Solution

The implementation of instruction set architecture (ISA) support for a batch scheduling method that dynamically adjusts the number of compute nodes allocated to applications at runtime, using instructions like Load Configuration, Store Configuration, and Request Configuration Ownership to optimize cluster load criteria.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If the number of compute nodes is increased to meet application requirements, then application performance is improved, but energy consumption and operational costs increase

Engineering Contradiction:
Improveapplication performanceVSAvoidenergy consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic scheduling that adjusts compute node allocation based on real-time application requirements and node availability. The system transitions from static to dynamic resource allocation, allowing the cluster to adaptively scale resources up or down depending on current workload demands, thereby improving application performance only when necessary while reducing energy consumption during low-utilization periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduling system changes key parameters such as the number of allocated compute nodes, time slots, and resource configuration based on application requirements and cluster state. By dynamically modifying these parameters rather than maintaining fixed allocations, the system optimizes the balance between application performance and energy consumption.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the number of compute nodes is increased to meet application requirements, then application performance is improved, but operational costs increase

Engineering Contradiction:
Improveapplication performanceVSAvoidoperational costs
Core Design Contradiction:
ProductivityVSObject-generated harmful factors

Solution Approach 1:

The dynamic scheduling system adjusts compute node allocation in real-time based on application performance requirements and cluster resource availability. By dynamically scaling resources rather than maintaining static over-provisioning, the system achieves necessary application performance while minimizing operational costs associated with idle or underutilized compute nodes.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The scheduling system autonomously manages resource allocation by evaluating application requirements, monitoring cluster state, and making scheduling decisions without manual intervention. This self-service capability optimizes the balance between application performance and operational costs by automatically right-sizing resource allocations based on current needs.

Inventive Principle:
Principle #25Self-service

3Device complexity

If static scheduling is used to simplify resource allocation, then scheduling complexity is reduced, but cluster efficiency and resource utilization deteriorate

Engineering Contradiction:
Improvescheduling complexityVSAvoidcluster efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The scheduling system incorporates feedback mechanisms that monitor cluster resource availability, application performance metrics, and scheduling outcomes. This feedback loop enables the system to dynamically adjust scheduling decisions, improving cluster efficiency and resource utilization while maintaining manageable complexity through automated control based on observed system state.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The scheduling system autonomously manages the complexity of resource allocation by implementing self-service capabilities that automatically evaluate application requirements, monitor cluster state, and make optimized scheduling decisions. This eliminates the need for complex manual scheduling while achieving high cluster efficiency through automated adaptive resource management.

Inventive Principle:
Principle #25Self-service

Data Source

PatentEP3394754B1Scheduling highly parallel applications
Publication Date: 2020.09.23 INTEL CORP
  • EP3394754B1 patent drawingFigure 1
  • EP3394754B1 patent drawingFigure 2A~2B
  • EP3394754B1 patent drawingFigure 3

AI summary

Systems and methods for scheduling highly-parallel applications executed by highperformance computing systems. An example processing system may comprise: a control register and a processing core, communicatively coupled to the control register. The processing core may be configured to receive a node allocation request specifying an expected running time of an application and a requested number of nodes of a cluster of nodes; determine, in view of the node allocation request and a current load on the plurality of nodes, an actual number of nodes to be allocated to the application, wherein the actual number of nodes to be allocated to the application optimizes a cluster load criterion; and notify, using the control register, the application of the actual number of nodes.