Dynamic Runtime Workload Translocation for Mobile Applications

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional methods for distributing workload between client devices and remote computing resources are inflexible and require explicit programming paradigms, limiting the dynamic utilization of remote computing capabilities and underutilizing device capabilities.

Innovation Solution

A unified paradigm for developing applications that allows for the dynamic translocation of classes or methods between client devices and remote computing nodes, leveraging cloud-based resources based on real-time conditions and annotations, to optimize resource usage and performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional methods with defined interfaces are used to distribute workload, then the system provides clear boundaries and structured communication, but the system lacks flexibility and cannot dynamically adapt to changing conditions

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

Solution Approach 1:

The patent implements dynamic workload distribution by allowing the boundary between client and remote computing resources to shift at runtime based on real-time conditions. The system monitors device capabilities, network status, and resource availability, then dynamically determines which classes or methods should execute locally versus remotely, replacing static design-time boundaries with adaptive runtime decisions

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes execution parameters dynamically by adjusting the location of code execution (client vs. remote) based on varying conditions such as device capabilities, network availability, and resource load. This allows the same application to flexibly relocate computational tasks between different execution environments without requiring structural changes to the application architecture

Inventive Principle:
Principle #35Parameter changes

2Productivity

If workload distribution is set at design time, then the system provides predictable performance and clear separation of responsibilities, but the system underutilizes remote computing capabilities and device capabilities

Engineering Contradiction:
Improveresource utilizationVSAvoiddevelopment complexity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The system enables automatic, intelligent workload distribution without requiring explicit programmer intervention. The runtime environment autonomously monitors device and remote resource capabilities, evaluates current conditions, and makes real-time decisions about where to execute each task. This self-service mechanism maximizes resource utilization while abstracting the complexity of dynamic load balancing from developers

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements continuous feedback loops by monitoring device capabilities, network conditions, and resource availability in real-time. Based on this feedback, the system dynamically adjusts workload distribution to optimize performance and resource utilization. The feedback mechanism allows the system to adapt to changing conditions and make informed decisions about task placement

Inventive Principle:
Principle #23Feedback

3Adaptability or versatility

If explicit programming paradigms are required for workload distribution, then the system provides clear control over task placement, but the system increases development complexity and reduces flexibility

Engineering Contradiction:
ImproveflexibilityVSAvoiddevelopment time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent creates a universal runtime mechanism that handles multiple functions: monitoring device capabilities, evaluating remote resource availability, determining optimal task placement, and dynamically relocating execution. This single multi-functional system replaces multiple specialized components and explicit programming requirements, providing flexibility while reducing development effort through a unified approach

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS11442835B1Mobile and remote runtime integration
Publication Date: 2022.09.13 AMAZON TECH INC
  • US11442835B1 patent drawing
  • US11442835B1 patent drawing
  • US11442835B1 patent drawing

AI summary

An application program may be analyzed to identify candidate classes or methods that may be executed using a remote computing node. Candidate classes or methods may be translocated to the remote computing node based on performance characteristics of the device on which the application program is running, the environment in which the device operates, and on the performance and availability of the remote computing node. An application program publisher may be assigned instances of virtual machines that may be dedicated to hosting translocated classes and methods.