Parallel Performance Profiling for Adaptive Resource Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Parallel processing systems lack the ability to predict performance for varying numbers of processing elements, making it difficult to select optimal performance and charge accordingly for applications.

Innovation Solution

A method and system for determining a parallel performance profile by recording execution times for a parallel processing algorithm using increasing numbers of processing elements, assessing performance predictability, and calculating pricing based on execution times and errors.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the number of processing elements is fixed at compile time, then the parallel processing system is simple to implement, but the system cannot adapt to different performance requirements and cannot charge directly for performance

Engineering Contradiction:
Improveperformance adaptabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system performs preliminary profiling of parallel algorithms to determine performance characteristics before actual execution. By pre-characterizing algorithms through automated profiling, the system builds performance prediction models that enable adaptive resource allocation without adding complexity to the core processing system

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates virtual performance profiles and pricing models as copies of actual algorithm behavior. These profiles serve as abstract representations that enable performance prediction and billing calculations without requiring complex real-time analysis during execution

Inventive Principle:
Principle #26Copying

2Measurement precision

If CPU Hours are used as the selection criteria, then the system can charge for processing time, but it cannot indicate or predict performance for applications with varying processing elements

Engineering Contradiction:
Improveperformance prediction accuracyVSAvoidprocessing speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system implements feedback loops where automated profilers measure actual algorithm performance with different numbers of processing elements, and this feedback is used to build prediction models. These models then enable the system to predict performance for future executions, allowing precise performance indication without sacrificing productivity

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system changes the parameter used for billing from simple CPU Hours to performance-based pricing that incorporates predicted execution time and processing element count. This allows the system to charge for actual performance delivered rather than just time consumed, enabling both prediction accuracy and productivity optimization

Inventive Principle:
Principle #35Parameter changes

3Extent of automation

If automated profiling is performed to determine performance predictability, then performance can be predicted and charged accurately, but the profiling process adds complexity to the system

Engineering Contradiction:
Improveautomation levelVSAvoidprofiling system complexity
Core Design Contradiction:
Extent of automationVSDevice complexity

Solution Approach 1:

The profiling system performs self-service by automatically executing algorithms with varying numbers of processing elements and collecting performance data without requiring manual intervention. The system autonomously builds performance models and generates pricing information, enabling high automation while keeping the profiling mechanism itself relatively simple through standardized automated procedures

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9170909B2Automatic parallel performance profiling systems and methods
Publication Date: 2015.10.27 MASSIVELY PARALLEL TECHNOLOGIES INC
  • US9170909B2 patent drawing
  • US9170909B2 patent drawing
  • US9170909B2 patent drawing

AI summary

An automatic profiling system and method determines an algorithm profile including performance predictability and pricing of a parallel processing algorithm.