Cross-Processor Application Migration Using a Portable VM State

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Automotive systems face challenges in efficiently migrating applications across diverse hardware architectures due to the need for recompilation, complex serialization, and inefficiencies in bytecode execution, making it economically unattractive for real-time deterministic situations.

Innovation Solution

A system that compiles a single binary executable file to run on a virtual machine across multiple processors, allowing seamless migration without intermediary compilation, using orchestrators to manage the transfer of application execution from a low-power processor to a high-power processor, and vice versa, while maintaining a fully specified and portable internal state.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If applications are migrated across diverse hardware architectures using traditional methods, then portability is achieved, but compilation complexity and time increase significantly

Engineering Contradiction:
ImproveportabilityVSAvoidcompilation complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a virtual machine as an intermediary layer between the application and diverse hardware architectures. The application is compiled once to run on the virtual machine, which then handles architecture-specific execution. This eliminates the need for recompilation across different hardware platforms, reducing compilation complexity while maintaining portability.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If applications are migrated using serialization methods, then execution transfer is enabled, but processing overhead and time increase

Engineering Contradiction:
Improveexecution transfer efficiencyVSAvoidmigration time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-compiling the application to run on the virtual machine and pre-establishing the execution context. When migration is needed, the system can quickly transfer the virtual machine state without extensive serialization overhead, reducing migration time while maintaining execution transfer capability.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If bytecode execution is used for portability, then cross-platform execution is achieved, but execution speed decreases

Engineering Contradiction:
Improvecross-platform executionVSAvoidexecution speed
Core Design Contradiction:
Adaptability or versatilityVSSpeed

Solution Approach 1:

The patent implements a dynamic execution model where the virtual machine can adapt its execution mode based on the target hardware capabilities. The system can optimize code execution paths dynamically, switching between interpreted and compiled execution modes, or utilizing hardware-specific optimizations when available, thereby improving execution speed while maintaining cross-platform compatibility.

Inventive Principle:
Principle #15Dynamics

4Use of energy by moving object

If multiple processing units are used for resource balancing, then power efficiency improves, but system complexity increases

Engineering Contradiction:
Improvepower efficiencyVSAvoidsystem complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The patent creates a universal virtual machine layer that can execute the same application across multiple different processing units with varying power capabilities. This multi-functional approach allows the system to balance power consumption by migrating applications between low-power and high-power processors while using a single unified execution environment, reducing system complexity compared to implementing separate execution environments for each processor type.

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

Data Source

PatentUS20250004825A1Migration of Application Executions Across Processing Units
Publication Date: 2025.01.02 APTIV TECHNOLOGIES AG
  • US20250004825A1 patent drawing
  • US20250004825A1 patent drawing
  • US20250004825A1 patent drawing

AI summary

A system for migrating execution of applications across multiple processors on a vehicle includes a first processor, a target processor, a first orchestrator, and a second orchestrator. The first processor is on the vehicle to execute applications until a migration of an execution of at least one application transfers the execution of the application to the target processor. The target processor includes available resources that execute the application. The first orchestrator executes on the first processor to initiate the execution of the application and then to manage the migration to the target processor. The second orchestrator is in communication with the first orchestrator and executes on the target processor to indicate the available resources for taking-over the execution of the application. The second orchestrator communicates with the first orchestrator to migrate the execution of the application to the target processor to resume where the execution left-off on the first processor.