Parallel Simulation Execution Architecture Prediction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Large-scale parallel physics simulations face challenges in determining the optimal number of processing elements for maximum speedup due to inefficiencies in cluster resource utilization, particularly in public cloud computing, where existing methods fail to account for spatial heterogeneity and require extensive training data.

Innovation Solution

A machine learning-based approach that extracts features from simulation designs, uses these features to predict execution times, and determines an optimal execution architecture by factoring computation and communication times, allowing for load-balanced distribution of simulation work across processing elements.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Volume of moving object

If distributed-memory framework with MPI is used to enable execution on clusters, then simulation capability scales to large problems, but determining optimal number of processing elements becomes complex and resource utilization efficiency deteriorates

Engineering Contradiction:
Improvesimulation scaleVSAvoidoptimal configuration determination
Core Design Contradiction:
Volume of moving objectVSDevice complexity

Solution Approach 1:

The patent transforms the discrete optimization problem of selecting the number of processing elements into a continuous parameter optimization problem. By formulating the objective function in terms of computational efficiency and communication overhead as continuous parameters, standard optimization algorithms can be applied to find the optimal configuration automatically, resolving the complexity of determining the optimal number of processing elements.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The patent introduces an intermediary optimization layer between the simulation code and the hardware configuration. This intermediary component analyzes the simulation workload characteristics and automatically determines the optimal number of processing elements by evaluating the trade-off between computational efficiency and communication overhead, eliminating the need for manual trial-and-error configuration.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of time

If more processing elements are allocated to achieve maximum speedup, then simulation execution time decreases, but resource utilization efficiency deteriorates due to inefficiencies in cluster resource utilization

Engineering Contradiction:
Improvesimulation execution timeVSAvoidresource utilization efficiency
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent implements a feedback mechanism where the optimization algorithm continuously evaluates the actual performance metrics (execution time, communication overhead, computational efficiency) and adjusts the number of processing elements accordingly. This closed-loop approach ensures that the system operates at the optimal point where execution time is minimized while resource utilization remains efficient, preventing both under-provisioning and over-provisioning of computational resources.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If analytical models with fine-grained software instrumentation are used to predict code performance, then prediction accuracy improves, but application to large evolving codebases becomes challenging

Engineering Contradiction:
Improveexecution time prediction accuracyVSAvoidcodebase applicability
Core Design Contradiction:
Measurement precisionVSEase of manufacture

Solution Approach 1:

The patent extracts only the essential features and parameters needed for performance prediction from the simulation code, rather than requiring comprehensive fine-grained instrumentation of the entire codebase. By focusing on key metrics such as computational efficiency and communication overhead, the model achieves accurate predictions while remaining easily applicable to large, evolving codebases without requiring extensive code modifications or instrumentation.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS11893484B2System and method for efficient parallel execution of physical simulations
Publication Date: 2024.02.06 X DEVELOPMENT LLC
  • US11893484B2 patent drawing
  • US11893484B2 patent drawing
  • US11893484B2 patent drawing

AI summary

In some embodiments, a method for optimal parallel execution of a simulation of a design is provided. A computing device extracts one or more features from the design. The computing device provides at least the one or more features as inputs to one or more machine learning models to determine one or more predictions of execution times. The computing device determines an optimum execution architecture based on the one or more predictions of execution times. The computing device distributes portions of the design for simulation based on the optimum execution architecture. In some embodiments, one or more machine learning models are trained to generate outputs for predicting an optimal parallel execution architecture for simulation of a design.