Thread Optimization for Business Process Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems face challenges in optimizing the execution of business processes, leading to underutilization of computing resources and increased operational costs due to inefficient allocation of threads and computations.

Innovation Solution

A process optimization system that includes a thread optimization module and an inter-thread computations optimization module, which determine the optimal number of threads and distribute computations to minimize resource usage and execution time by iteratively calculating and reallocating tasks across available time slots.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If more threads are allocated to execute business processes, then processing capacity increases, but resource utilization efficiency deteriorates due to underutilization

Engineering Contradiction:
Improveprocessing capacityVSAvoidresource utilization efficiency
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The system dynamically determines the optimal number of threads based on process characteristics and iteratively reallocates computations between threads. This dynamic adjustment allows the system to adapt thread allocation to actual workload requirements, improving both processing capacity and resource utilization efficiency simultaneously.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of thread count from a static value to a dynamically optimized value. By calculating and adjusting the number of threads based on process-specific parameters and execution characteristics, the system resolves the contradiction between having enough threads for high productivity and avoiding excess threads that waste resources.

Inventive Principle:
Principle #35Parameter changes

2Loss of energy

If processes are optimized to utilize computing resources effectively, then resource utilization improves, but process complexity increases making optimization challenging

Engineering Contradiction:
Improveresource utilizationVSAvoidprocess complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The system performs self-optimization by automatically determining optimal thread counts and reallocating computations without external intervention. This self-service approach handles the complexity internally while presenting a simple interface to users, improving resource utilization without requiring users to manage the optimization complexity.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system uses iterative feedback loops to determine optimal thread allocation and computation distribution. By continuously monitoring execution characteristics and adjusting parameters based on feedback, the system automates the complex optimization process, making it manageable while achieving high resource utilization.

Inventive Principle:
Principle #23Feedback

3Loss of time

If computations are distributed across multiple threads, then execution time reduces, but memory consumption increases

Engineering Contradiction:
Improveexecution timeVSAvoidmemory consumption
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The system applies partial parallelization by determining the optimal number of threads rather than maximizing thread count. This partial action approach distributes computations across sufficient threads to reduce execution time while avoiding the excessive memory consumption that would result from using too many threads.

Inventive Principle:
Principle #16Partial or excessive action

Solution Approach 2:

The system dynamically balances the trade-off between execution time and memory consumption by iteratively adjusting thread allocation. This dynamic optimization allows the system to achieve acceptable execution times while controlling memory usage, resolving the contradiction between speed and resource consumption.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9400683B2Optimizing execution of processes
Publication Date: 2016.07.26 SAP SE
  • US9400683B2 patent drawing
  • US9400683B2 patent drawing
  • US9400683B2 patent drawing

AI summary

Methods and system for optimizing an execution of a business process are disclosed. In one aspect, a request to execute a business process is received. The business process is executed on multiple threads, which may include multiple computations. The business process is optimized by determining an optimal number of threads for executing the business process by a thread optimization model. From the determined optimal number of threads, the computations in the threads may be distributed or reallocated iteratively by executing an inter-thread computations optimization model. Executing the thread optimization model and the inter-thread computations optimization model optimizes the execution of the business process.