Cloud Software Execution Routing Across Heterogeneous Hardware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud-based software services face performance issues due to insufficient hardware capabilities in servers, particularly when executing software designed for mobile devices or specific processors like ARM/RISC, leading to sub-optimal execution and poor user experience.

Innovation Solution

The method involves assigning a plurality of computing devices with distinct hardware configurations for each software application instance, routing software instructions to the devices optimized for specific attributes, ensuring that each instruction is executed on a device with the necessary hardware capabilities, such as assigning an ARM processor for non-graphic instructions and an x86 processor with GPU for graphic-intensive tasks.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If a single computing device is assigned to execute a software application instance, then device complexity is reduced, but hardware capability sufficiency deteriorates when the device lacks specific hardware capabilities required for optimal execution

Engineering Contradiction:
Improveserver configurationVSAvoidhardware capability sufficiency
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent segments the execution of software application instructions across multiple computing devices with different hardware configurations. The system divides software instructions into different sets based on their hardware requirements and routes them to appropriate devices, ensuring each instruction set is executed on a device with the necessary hardware capabilities while maintaining manageable system complexity through automated instruction routing.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If cloud-based software services are provided on devices with limited hardware capabilities, then device accessibility is improved, but execution performance deteriorates due to insufficient hardware support

Engineering Contradiction:
Improvesoftware accessibilityVSAvoidsoftware execution performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent implements a universal cloud-based software service platform that can execute diverse software applications on multiple types of computing devices with different hardware architectures. The system provides multi-functionality by routing instructions to appropriate devices based on their hardware capabilities, enabling the same software service to be executed optimally on different hardware platforms without requiring each platform to have identical capabilities.

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

3Device complexity

If software instructions are executed on devices without specialized hardware (e.g., no dedicated GPU), then device simplicity is maintained, but graphics processing capability deteriorates

Engineering Contradiction:
Improvehardware configurationVSAvoidgraphics processing capability
Core Design Contradiction:
Device complexityVSPower

Solution Approach 1:

The patent applies local quality by assigning different computing devices to different parts of the software execution process based on their specific hardware capabilities. Graphics-intensive instructions are routed to devices with dedicated GPUs, while other instructions are executed on simpler devices, ensuring each part of the software receives the hardware support it needs without requiring all devices to have maximum capabilities.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS11818201B2Methods, systems and computer program products for cloud based cross-device software application execution
Publication Date: 2023.11.14 BLUESTACK SYSTEMS INC
  • US11818201B2 patent drawing
  • US11818201B2 patent drawing
  • US11818201B2 patent drawing

AI summary

Provided are methods, systems and computer program products for cloud based software program execution to enable cross-device implementation of cloud based software application execution by a cloud services server system. The methods include (i) assigning a plurality of hardware devices for execution of the instance of the cloud based software application, (ii) receiving a software application program instruction for execution, (iii) determining attributes of the received software application program instruction, (iv) selecting based on one or more determined attributes of the received software application program instruction, one of the first computing device and the second computing device for execution of the received software application program instruction and (v) routing the received software application program instruction to the selected first or second computing device for execution by the selected first or second computing device.