JIT Compilation Offloading to Trusted Servers

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Resource-constrained wireless devices face performance issues due to the resource-intensive JIT compilation of platform-independent code, which consumes limited resources such as memory and processing power, leading to lag times and inefficient execution of applications.

Innovation Solution

Offloading the JIT compilation of bytecode from resource-constrained devices to more capable devices like trusted servers, utilizing Ahead-of-Time compilation, and transporting the resulting native code back to the handheld device for execution via RDMA/SOAP, thereby freeing up device resources and optimizing performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If JIT compilation is performed on resource-constrained wireless devices, then platform-independent code can be executed on the device, but device resources (memory and processing power) are consumed and execution performance deteriorates

Engineering Contradiction:
Improveplatform-independent code executionVSAvoidexecution performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts the JIT compilation function from the resource-constrained wireless device and relocates it to a server environment. The device's runtime environment sends bytecode to a server, which performs the compilation and returns native code to the device for execution. This separation removes the resource-intensive compilation process from the mobile device while maintaining the ability to execute platform-independent code.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces a server as an intermediary between the wireless device and the code execution environment. The server acts as a mediator that receives bytecode from the device, performs JIT compilation, and returns optimized native code. This intermediary handles the resource-intensive tasks that would otherwise burden the mobile device's limited resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Extent of automation

If JIT compilation is performed on wireless devices, then code can be compiled at load time, but resource constraints lead to lag times

Engineering Contradiction:
Improveautomatic code compilationVSAvoidlag time
Core Design Contradiction:
Extent of automationVSLoss of time

Solution Approach 1:

The patent implements preliminary action by having the server perform JIT compilation in advance before the code is executed on the wireless device. The compilation process is completed beforehand on the server, and the resulting native code is transmitted to the device ready for immediate execution, eliminating compilation-related lag times during device operation.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The server intermediary accelerates the compilation process by performing it in a high-performance environment with adequate resources. This mediator handles the time-consuming compilation task efficiently and returns the results quickly to the device, reducing the perceived lag time for the user.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If device resources are used for JIT compilation, then code generation can be performed locally, but device memory and processing power are depleted

Engineering Contradiction:
Improvelocal code generationVSAvoidavailable device resources
Core Design Contradiction:
Ease of operationVSQuantity of substance

Solution Approach 1:

The patent extracts the code generation function from the wireless device and relocates it to a server. The device's runtime environment maintains the ability to initiate and receive compiled code, but the actual compilation process is performed externally on the server where resources are abundant, preserving the device's limited memory and processing power for other tasks.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent uses copying by transmitting bytecode from the device to the server, having the server create the native code copy, and then transferring the compiled result back to the device for execution. This copying approach allows the device to benefit from server-side compilation without permanently hosting the compilation infrastructure.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS7587712B2End-to-end architecture for mobile client JIT processing on network infrastructure trusted servers
Publication Date: 2009.09.08 MARVELL ASIA PTE LTD
  • US7587712B2 patent drawing
  • US7587712B2 patent drawing
  • US7587712B2 patent drawing

AI summary

A method for off loading resource intensive compilations is disclosed. The method may include enabling a user of a wireless handheld device to request a platform independent application. The wireless handheld device may be enabled to assess a resource on the wireless handheld device and to determine whether to request native code for the platform independent application. The method may also include enabling the requested platform independent application to be routed to a trusted server. The trusted server may compile the platform independent application into native code for the wireless handheld device and may transport the native code to the wireless handheld device for execution.