Simulation Job Scheduler with Performance Alerting

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Non-expert users face challenges in efficiently utilizing High Performance Computing (HPC) resources due to the need for in-depth knowledge of performance considerations and hardware characteristics, leading to suboptimal execution of simulation jobs with increasing overheads from parallelization.

Innovation Solution

A system comprising a job scheduler, performance monitor, and alert generator that receives user-defined resource settings, monitors execution, and generates alerts for improved settings based on historical performance statistics, enabling optimal resource utilization and performance enhancement without requiring expert knowledge.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Duration of action of moving object

If the number of parallel processes is increased to speed up simulation execution, then calculation time is reduced, but communication overhead increases and performance deteriorates

Engineering Contradiction:
Improvecalculation timeVSAvoidcommunication overhead time
Core Design Contradiction:
Duration of action of moving objectVSLoss of time

Solution Approach 1:

The system performs preliminary actions by monitoring execution in real-time and proactively generating alerts about optimal process counts before the user commits to a configuration. This allows users to adjust settings based on predicted performance outcomes, preventing suboptimal parallelization decisions before they impact execution time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring simulation execution performance and comparing actual results against historical data and theoretical optimal values. This feedback loop enables the system to identify when communication overhead is degrading performance and alert users to adjust the number of processes accordingly.

Inventive Principle:
Principle #23Feedback

2Ease of operation

If HPC resources are used by non-expert users without knowledge of performance considerations, then accessibility is improved, but performance optimization deteriorates

Engineering Contradiction:
Improveaccessibility for non-expert usersVSAvoidperformance optimization
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The system enables self-service by providing automated performance monitoring and alerting that empowers non-expert users to optimize their own simulations without requiring deep HPC knowledge. The system automatically tracks execution metrics, compares them against optimal values, and generates actionable alerts, allowing users to independently achieve performance optimization.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system acts as an intermediary between non-expert users and complex HPC performance considerations. It translates raw execution metrics into meaningful performance insights and actionable recommendations, bridging the gap between user simplicity and system optimization without requiring users to understand underlying parallelization complexities.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Power

If parallelization is increased to solve larger simulation problems, then computational capacity is improved, but communication coordination overhead increases

Engineering Contradiction:
Improvecomputational capacityVSAvoidcommunication coordination overhead
Core Design Contradiction:
PowerVSDevice complexity

Solution Approach 1:

The system performs preliminary analysis by monitoring execution patterns and predicting when communication overhead will become problematic at higher process counts. This allows users to preemptively adjust their parallelization strategy before encountering performance degradation from excessive communication coordination requirements.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements dynamic monitoring and alerting that adapts to the user's specific simulation workload and hardware configuration. Rather than using fixed thresholds, the system dynamically determines optimal process counts based on actual execution characteristics, allowing computational capacity to scale while maintaining efficient communication coordination.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS10402300B2System, controller, method, and program for executing simulation jobs
Publication Date: 2019.09.03 FUJITSU LTD
  • US10402300B2 patent drawing
  • US10402300B2 patent drawing
  • US10402300B2 patent drawing

AI summary

A system for executing simulation jobs including: a job scheduler receiving a job request from a system user, the request specifying a simulation job and user-defined resource settings for the job; computing hardware resources executing simulation jobs designated by the scheduler which instructs the resources to execute the job with the settings; a performance monitor generates performance statistics; a statistics memory stores a characterization, the settings, and performance statistics for the job; an alert generator determines jobs similar to the specified job, to identify a first job having the same characterization as a second job, and for which the settings differ between the jobs, determining an improved performance statistic in one of the first and second jobs relative to the other, to generate an alert to the user indicating the resource settings of the job identified as having improved performance statistics.