HPC Job Scheduling for Batch Throughput and Interactive Response

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing technologies have not effectively addressed the need for interactivity in high performance computing (HPC) systems, specifically in the technical problem of interactivity, with short time lags from the viewpoint of user's request and operability, and processing performance, interactive processing, and system, in the technical problem of addressing the need for interactivity in existing high performance computing (HPC) systems, particularly in the context of batch processing methods and gang scheduling techniques, which often result in suboptimal performance for jobs requiring immediate user interaction and varying interactivity needs across different time zones.

Innovation Solution

A job execution control method and device that dynamically allocates time resources by alternating between batch and interactive processing, prioritizing interactive jobs when resources are tight, and ensuring that jobs are executed efficiently by determining the tightness of time resources using various indices, such as overhead rates and maximum delay times, to improve overall system responsiveness and efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If batch processing is prioritized to improve processing performance, then productivity increases, but interactivity and responsiveness to user requests deteriorate

Engineering Contradiction:
Improveprocessing performanceVSAvoidinteractivity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system dynamically adjusts the scheduling strategy based on real-time resource availability and job characteristics. When resources are abundant, batch processing is prioritized for high productivity. When resources are tight or interactive jobs arrive, the system switches to prioritize interactive jobs, ensuring responsiveness. This dynamic adaptation resolves the contradiction between batch processing efficiency and interactive responsiveness.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the scheduling parameters (priority levels, time allocation) based on system state. Interactive jobs can be assigned higher priority parameters when needed, while batch jobs receive optimized time slots. This parameter adjustment allows the system to maintain high productivity for batch jobs while ensuring interactivity when required.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If gang scheduling is used to improve batch processing efficiency, then productivity increases, but time lag for interactive jobs increases

Engineering Contradiction:
Improvebatch processing efficiencyVSAvoidtime lag
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system segments the scheduling into different queues or priority levels: batch processing queues and interactive job queues. Gang scheduling is applied to batch jobs to maximize efficiency, while interactive jobs are handled separately with lower time lags. This segmentation allows both objectives to be achieved simultaneously without one adversely affecting the other.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system implements periodic checking of resource availability and job priorities. At scheduled intervals, it evaluates whether to continue batch processing or switch to handling interactive jobs. This periodic action ensures that batch processing efficiency is maintained while preventing excessive time lags for interactive jobs by switching context when appropriate.

Inventive Principle:
Principle #19Periodic action

3Ease of operation

If equal time allocation is given to batch and interactive jobs, then fairness is improved, but overall system responsiveness deteriorates

Engineering Contradiction:
ImprovefairnessVSAvoidsystem responsiveness
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The system implements asymmetric time allocation where interactive jobs receive preferential treatment with shorter waiting times and higher priority, while batch jobs receive longer time slots optimized for efficiency. This asymmetric approach is fair in the sense that it matches resource allocation to job requirements: interactive jobs need quick response, batch jobs need throughput. This resolves the contradiction by defining fairness differently - not as equal time, but as appropriate time for each job type.

Inventive Principle:
Principle #4Asymmetry

Solution Approach 2:

The system allocates excessive time resources to batch jobs when possible, allowing them to run efficiently without interfering with interactive jobs. Interactive jobs are guaranteed minimum responsive allocation. This partial allocation strategy ensures system responsiveness for interactive jobs while maximizing batch processing efficiency when resources permit.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20260003676A1Non-transitory computer-readable recording medium, job execution control method, and job execution control device
Publication Date: 2026.01.01 FUJITSU LTD
  • US20260003676A1 patent drawing
  • US20260003676A1 patent drawing
  • US20260003676A1 patent drawing

AI summary

A non-transitory computer-readable recording medium stores therein a job execution control program that causes a computer to execute a process including receiving a first job for performing batch processing and a second job for performing interactive processing with a user, determining tightness of a time resource used to cause a predetermined calculation node to alternately execute the first job and the second job according to a lapse of time;in a case where the time resource is not tight, allocating an equal time to the first job and the second job and first causing the predetermined calculation node to make first execution, and in a case where the time resource is tight, increasing priority of execution of the second job, allocating a time to the first job and the second job, and second causing the predetermined calculation node to make second execution.