Software Container Runtime Assignment via Dual ML Models

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional systems face challenges in efficiently assigning software containers to runtime environments, often resulting in resource wastage or performance issues due to manual guesswork and the limitations of single machine learning models in finding accurate correlations between software container characteristics and runtime environment capabilities.

Innovation Solution

The use of a first machine learning model to analyze static parameters of software containers for initial environment selection, combined with a second model that analyzes runtime parameters to ensure a match, allowing for quicker and more accurate assignment of software containers to well-tailored runtime environments, with both models being updated based on performance data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of manufacture

If manual guesswork is used to assign software containers to runtime environments, then the process is simple to implement, but resource utilization is poor and performance issues occur

Engineering Contradiction:
Improveease of implementationVSAvoidresource utilization
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent replaces manual guesswork (mechanical human decision-making) with machine learning models that automatically analyze container characteristics and match them to appropriate runtime environments. The first ML model analyzes static parameters while the second ML model analyzes runtime parameters, substituting human intuition with data-driven automated decision systems that improve resource utilization without requiring complex manual processes

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The system enables runtime environments and software containers to self-match through automated ML model analysis. The models independently evaluate container characteristics and environment capabilities, allowing the system to self-optimize assignments without external manual intervention, thereby improving resource utilization while maintaining implementation simplicity

Inventive Principle:
Principle #25Self-service

2Device complexity

If a single machine learning model is used to match software containers with runtime environments, then the system complexity is low, but the accuracy of finding correlations between container characteristics and environment capabilities is insufficient

Engineering Contradiction:
Improvesystem complexityVSAvoidmatching accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent divides the matching task into two separate machine learning models: the first model handles static container parameters (language, framework, dependencies) while the second model handles runtime parameters (resource usage, performance metrics). This segmentation allows each model to specialize in specific parameter types, improving matching accuracy without creating an overly complex monolithic system

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a temporal dimension to the matching process by using two models operating at different time phases. The first model operates during container creation/submission (static analysis), while the second model operates during runtime (dynamic analysis). This dimensional approach enables comprehensive matching accuracy by capturing both initial compatibility and ongoing performance requirements

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Measurement precision

If extensive analysis is performed to match software containers with runtime environments, then matching accuracy improves, but the time and iterations required increase

Engineering Contradiction:
Improvematching accuracyVSAvoidtime to match
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The first machine learning model performs preliminary analysis of static container parameters (language, framework, dependencies) before the container is even deployed. This preliminary matching based on inherent characteristics provides an initial accurate assignment, reducing the need for extensive iterative analysis later and decreasing overall matching time while maintaining accuracy

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12117914B2Runtime environment determination for software containers
Publication Date: 2024.10.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12117914B2 patent drawing
  • US12117914B2 patent drawing
  • US12117914B2 patent drawing

AI summary

Static parameters of a software container are identified that relate to metadata of the software container itself. The software container is assigned to a selected runtime environment based on the static parameters using a first machine learning model. Runtime parameters for the software container are identified by analyzing the software container at runtime. The runtime parameters relate to operations that the software container requires during runtime. Using a second machine learning model, it is determined whether the selected runtime environment matches the runtime parameters. Where the runtime environment matches, the software container continues to run in this environment. Where the runtime environment does not match, the software container is run in a different runtime environment that matches both the static and runtime parameters.