Model Performance Engine for Execution Time and Memory Optimization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Complex computer-based models used for algorithm development and simulation take a long time to execute and consume substantial memory resources, leading to frustration and inefficiency, as existing best practices often fail to significantly reduce execution time and memory demands, especially when dealing with combinations of settings.

Innovation Solution

A performance engine within a modeling environment analyzes the model, applies performance rules, and offers advice on changes that can improve execution speed and memory usage, with the ability to validate these changes and revert if they do not meet performance targets, using a knowledgebase and community-sourced rules.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complex computer-based models are used for algorithm development and simulation, then model accuracy and functionality are improved, but execution time increases and memory consumption increases

Engineering Contradiction:
Improvemodel accuracyVSAvoidexecution time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary analysis of the model structure and settings before execution, identifying potential performance issues and applying optimizations in advance. The performance engine scans the model, detects problematic patterns, and suggests improvements that can be applied before the actual simulation runs, thereby reducing execution time without compromising accuracy.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system executes the model, measures actual performance metrics (execution time, memory usage), compares these against targets, and uses this feedback to iteratively improve the model. The performance engine continuously monitors execution results and adjusts settings to achieve better performance while maintaining model accuracy.

Inventive Principle:
Principle #23Feedback

2Reliability

If complex computer-based models are used for algorithm development and simulation, then model accuracy and functionality are improved, but memory consumption increases

Engineering Contradiction:
Improvemodel accuracyVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system extracts and analyzes specific components of the model that consume excessive memory, such as identifying redundant calculations, unnecessary data storage, or inefficient data structures. By isolating and optimizing these specific elements, the system reduces overall memory consumption while preserving the model's computational accuracy.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system changes key parameters and settings of the model to optimize memory usage, such as adjusting precision requirements, modifying data storage formats, or changing computational algorithms to be more memory-efficient. These parameter adjustments maintain model accuracy while significantly reducing memory consumption.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If existing best practices are applied to reduce execution time and memory demands, then some performance improvement is achieved, but the improvements are insufficient when dealing with combinations of settings

Engineering Contradiction:
Improveexecution efficiencyVSAvoidmodel complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The performance engine automatically analyzes the model, identifies optimization opportunities, and applies improvements without requiring extensive user intervention. The system serves itself by autonomously detecting performance issues and implementing solutions, making the complexity management transparent to the user while still handling complex model settings effectively.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system discards suboptimal model configurations and settings that cause performance problems, then recovers and applies optimized alternatives. By systematically eliminating inefficient elements and replacing them with improved versions, the system achieves significant performance gains even for complex models with multiple interacting settings.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS10970183B1System and method for improving model performance
Publication Date: 2021.04.06 MATHWORKS INC
  • US10970183B1 patent drawing
  • US10970183B1 patent drawing
  • US10970183B1 patent drawing

AI summary

A system and method intelligently and automatically improves the performance of a model. The system employs heuristics to select a plurality of performance rules that conform to one or more criteria specified for the performance analysis process. The performance rules include checks to be run on the model and offer advice, such as proposed changes that, if made to the model, may improve its performance. The system may evaluate the proposed changes to determine whether or not they produce an improvement in the model's performance. Proposed changes validated as improving model performance are retained, while proposed changes found not to improve performance are removed.